MQTT
- У меня есть два устройства, работающих по протоколу MQTT. Как пересылать данные между ними с использованием платформы?
- Создайте для каждого устройства свой объект.
- Настройте устройства для подключения к платформе, используя в качестве ClientId идентификаторы созданных объектов.
- Затем вы можете подписаться, к примеру, на первом устройстве на интересующий вас топик.
- Когда второе устройство отправит пакет данных с этим топиком, брокер MQTT, встроенный в платформу, перешлет этот пакет на первое устройство. В данном случае брокер использует стандартную модель издатель-подписчик, описанную в протоколе MQTT.
- Как подключить ESP32 и его аналоги к платформе?
Для подключения к облачной платформе модулей на базе ESP8266 и ESP32 воспользуйтесь обучающим видео (opens in a new tab) или ознакомьтесь со статьей (opens in a new tab). Также на GitHub (opens in a new tab) есть примеры готовых скетчей.
- Поддерживаете ли вы TLS для MQTT?
Да, для дополнительной защиты процесса передачи данных вы можете издать X.509 сертификат. Он позволяет подключаться к объекту по защищенному протоколу MQTTS (MQTT TLS). Обратите внимание, что для защищенного соединения в MQTT используется порт 8883 вместо 1883.
- Не удается подключиться по MQTT. В чем может быть проблема?
- Проверьте адрес сервера, указанный на вашем устройстве:
- MQTT (TCP) – dev.rightech.io:1883,
- MQTTS(TLS) – dev.rightech.io:8883.
-
Убедитесь что идентификатор объекта в платформе совпадает с Client ID MQTT–клиента.
-
Если вы используете Username и Password, проверьте что они совпадают в настройках объекта и MQTT-клиента. Если вы их не используете, убедитесь, что эти параметры в настройках объекта не указаны.
-
Убедитесь, что вы не подключаетесь с одним и тем же Client ID с двух разных устройств. В этом случае устройства будут мешать друг другу работать корректно. Обратите внимание, что включенный на платформе бот также является полноценным MQTT-клиентом, который мешает подключению реального устройства.
- Вы используете один адрес для доступа к MQTT брокеру. Может ли кто–то получить/перехватить мои данные?
Нет. В нашей системе рабочие пространства пользователей изолированы. Публикация данных между устройствами осуществляется только в рамках вашего проекта.