Библиотека MQTT

Внимание

Этот раздел сейчас дорабатывается, приносим извинения за неудобства. Если вам нужна срочная помощь, обратитесь в службу поддержки Tibbo.

Библиотека MQTT реализует минимум функций, необходимый устройству на Tibbo BASIC\/C для работы в роли клиента MQTT. Библиотека поддерживает обе роли: издателя (publisher) и подписчика (subscriber).

Объяснение работы и устройства протокола MQTT выходит за рамки этого руководства. В интернете есть очень много материалов по MQTT. В частности, нам нравятся учебные материалы (и серверное ПО!) компании HiveMQ:

hivemq.com/blog/mqtt-essentials/

О библиотеке

Поддерживаемые платформы:Любая платформа как минимум с одним из интерфейсов: Ethernet (net.), Wi-Fi (wln.) или GPRS (ppp.).
Подключаемые файлы:mqtt.tbs, mqtt.tbh (из current_library_set\mqtt\trunk\).
Зависимости:библиотека SOCK

Процедуры API:

Для работы с библиотекой используйте процедуры API.

mqtt_start() - запускает библиотеку MQTT.

mqtt_connect() - поручает библиотеке подключиться к серверу MQTT (брокеру).

mqtt_reconnect() - поручает библиотеке переподключиться к серверу MQTT (брокеру).

mqtt_disconnect() - отключает устройство от сервера MQTT (брокера).

mqtt_publish() - публикует тему и её данные на сервере MQTT (брокере).

mqtt_sub() - подписывает устройство на указанную тему на сервере MQTT (брокере).

mqtt_unsub() - отписывает устройство от указанной темы.

Процедуры событий:

Вызывайте процедуры событий из соответствующих обработчиков событий, как описано здесь.

mqtt_proc_timer() - вызывайте из обработчика события on_sys_timer().

mqtt_proc_data() - вызывайте из обработчика события on_sock_data_arrival().

Процедуры обратного вызова:

Тела процедур обратного вызова нужно реализовать в другом месте проекта.

callback_mqtt_connect_ok() - вызывается, когда устройство успешно подключилось к серверу MQTT.

callback_mqtt_connect_lost() - вызывается при потере соединения с сервером MQTT.

callback_mqtt_notif() - вызывается, когда подписчик получает сообщение от сервера MQTT.

callback_mqtt_sub_ok() - вызывается у подписчика, когда сервер MQTT подтверждает запрошенную подписку.

Необходимое место в буфере:2 страницы буфера. В зависимости от используемых тем MQTT может потребоваться больше.
Исходный материал Tibbo обновлён 13 августа 2025Оригинал на docs.tibbo.com · Сообщить об ошибке