IBM IOT - приложение Node RED не связывается с устройством MCU узла ESP8266 через MQTT.
Привет, я работаю над проектом IOT и наткнулся на проблему. В моем проекте я имею в виду приведенную ниже документацию
https://console.bluemix.net/docs/services/IoT/applications/mqtt.html#mqtt
https://console.bluemix.net/docs/services/IoT/devices/mqtt.html#mqtt
Я успешно зарегистрировал устройство в IBM IOT с помощью MQTT. Устройство подписывается на тему iot-2/cmd/on/fmt/txt
для команд. При регистрации устройства нет ошибок, и я получаю сообщение о том, что устройство "Подключено" на консоли "IBM Watson IOT Platform". Мой первый вопрос: как мы узнаем, что вышеуказанная тема действительно создана? Это отображается где-то на консоли?
На втором этапе я создал небольшое приложение с MQTT Node RED, которое должно публиковать команды для устройства в теме iot-2/cmd/on/fmt/txt
. Этот процесс не происходит. Я получаю сообщение об ошибке «Тема не соответствует разрешенному правилу». Я попытался изменить название темы на iot-2/type/*******/id/********/cmd/******/fmt/*******
(в соответствии с https://console.bluemix.net/docs/services/IoT/applications/mqtt.html#mqtt). Однако, я продолжаю получать ту же ошибку. Можете ли вы сообщить мне действительный формат темы, когда приложение публикует команды по теме ( для устройства)?
Общий вопрос : Я обнаружил, что когда приложение публикует команду для устройства, формат темы должен быть iot- /type/device_type/id/device_id/cmd/command_id/fmt/format_string
AND Когда устройство подписывается на ту же команду, формат темы должен быть iot-2/cmd/command_id/fmt/format_string
.
Не кажется ли, что есть разрыв? Когда я сравниваю его с сообщениями Kafka или JMS, мы подписываемся на «то же имя темы», которое публикуем, но в IBM IOT имена тем для публикации и подписки кажутся разными. Зачем?