Шлюз умеет подключаться к MQTT-брокеру как клиент, получать и отправлять данные в топики.
Получает или задает системный префикс, настроенный в меню Settings -> Link -> MQTT Setup
, поле System prefix topic
mqtt.prefix([topic])
-- topic - STR, System prefix topic
--
-- Получить префикс
local mqtt_prifix = mqtt.prefix()
-- Задать префикс
mqtt.prefix("newTopic")
Возвращает статус подключение к брокеру MQTT. Выполняется без параметров.
Публикует на MQTT сервер в топик topic значение payload.
mqtt.pub(topic, payload)
Пример управления реле на прошивке Tasmota - cmnd/имя устройства/имя реле
mqtt.pub('cmnd/sonoff5/power', 'toggle')
Подписывается на топик и помещает полученные значения в объект. Можно вызывать повторно с другим именем объекта, для его изменения.
mqtt.sub(topic, objName[, objType])
-- topic - STR, топик MQTT
-- objName - STR, объект, в который записываются данные
-- objType - STR, тип значения объекта. По-умолчанию STR
Пример подписки на топик с температурой, которую шлюз помещает в объект:
mqtt.sub('dev/sensor/temp', 'room_temp')
с указанием типа объекта:
mqtt.sub('dev/sensor/temp', 'room_temp', 'INT')
Отписывается от топика.
mqtt.unSub(topic)
Пример отписки от топика с температурой
mqtt.unSub('dev/sensor/temp')