MQTT модуль: различия между версиями

Материал из MajorDoMo инфо
м (Newz20 переименовал страницу MQTT в MQTT модуль)
Нет описания правки
Строка 17: Строка 17:
<youtube>jFUPy1q3ze8</youtube>
<youtube>jFUPy1q3ze8</youtube>
<youtube>4O-2dJwRQtg</youtube>
<youtube>4O-2dJwRQtg</youtube>
==Примеры кода==
Отправка сообщения через модуль в топик
<pre>include_once(DIR_MODULES . 'mqtt/mqtt.class.php');
$mqtt = new mqtt();
$rezult = $mqtt->mqttPublish($topic, $value,  0, 0);</pre>

Версия от 16:44, 15 января 2020

MQTT - (англ. message queuing telemetry transport) — упрощённый сетевой протокол, работающий поверх TCP/IP, ориентированный для обмена сообщениями между устройствами по принципу издатель-подписчик.

Модуль выступает клиентом и способен отправлять и принимать сообщения через сервер, модуль умеет не только прямые подписки на ветки от других клиентов(устройств), но и разбивать данные в формате JSON на ветки и свойства. Вы можете привязывать каждое полученное сообщение в ветке к нужному свойству, ветки не привязанные к свойствам никуда не пишут свои данные.

Для работы клиентов MQTT необходим сервер или еще его называют брокером (в предустановленном наборе и рекомендованный к использованию Mosquitto), данный сервер отвечает за пересылку сообщений от клиента к клиенту. Клиент MQTT может находится где угодно и для работы ему необходим только канал связи с сервером MQTT. Таким образом вы можете через интернет управлять устройствами поддерживающими MQTT протокол где угодно. Они в свою очередь сообщат вам о своем состоянии тем же образом. MajorDoMo может автоматизировать ваш гараж находясь у вас дома, для этого необходим только интернет канал и устройства с поддержкой MQTT.

Настройки mqtt
настройка топика mqtt


Несколько видео по настройке


Примеры кода

Отправка сообщения через модуль в топик

include_once(DIR_MODULES . 'mqtt/mqtt.class.php');
$mqtt = new mqtt();
$rezult = $mqtt->mqttPublish($topic, $value,  0, 0);