2482
правки
Admin (обсуждение | вклад) |
Admin (обсуждение | вклад) |
||
Строка 23: | Строка 23: | ||
#Драйвер wb-mqtt-serial получает это уведомление по RS-485 и публикует в очереди сообщение:<pre>/devices/wb-mrm2_130/controls/Relay 1 1</pre>Оно значит, что первое реле на устройстве WB-MRM2 с адресом ''130'' находится (уже переведено) в состоянии логической единицы ("включено"). | #Драйвер wb-mqtt-serial получает это уведомление по RS-485 и публикует в очереди сообщение:<pre>/devices/wb-mrm2_130/controls/Relay 1 1</pre>Оно значит, что первое реле на устройстве WB-MRM2 с адресом ''130'' находится (уже переведено) в состоянии логической единицы ("включено"). | ||
== Принцип работы системы сообщений == | == Принцип работы системы сообщений == | ||
Система сообщений MQTT построена по следующему принципу: | |||
*есть иерархическая система "топиков" (как на обычных форумах в интернете) | |||
*в эти топики клиенты (в случае Wiren Board это драйверы устройств и веб-интерфейс) могут писать сообщения и читать оттуда | |||
*чтобы следить за изменениями нужного топика (например, температуры на датчике), клиент может на него "подписаться" - тогда он получит все сообщения в данном топике. | |||
=== Пример сообщения === | |||
Вот пример сообщения от драйвера температурного датчика 1-Wire из примера выше: | |||
Вот пример сообщения от драйвера датчика 1-Wire | |||
<pre> | <pre> | ||
/devices/wb-w1/controls/28- | /devices/wb-w1/controls/28-0115a48fcfff 23.25 | ||
</pre> | </pre> | ||
Часть до пробела - название топика, после - само сообщение. | Часть до пробела - название топика, после - само сообщение. | ||
Название топика состоит из вложенных друг в друга "подтопиков": | |||
* ''/devices'' - коренной топик для всех "устройств" - как встроенных | * ''/devices'' - коренной топик для всех "устройств" - как встроенных функций Wiren Board (цифровые, АЦП, ...), так и подключённых внешних (например, модулей реле) | ||
* ''/wb-w1'' - подтопик, который наполняется драйвером 1-Wire | * ''/wb-w1'' - подтопик, который наполняется драйвером 1-Wire | ||
* ''/controls'' - подтопик, который есть у всех устройств - именно в него записываются все их параметры, которые меняются ("включено-выключено", значение датчика, ...) | * ''/controls'' - подтопик, который есть у всех устройств - именно в него записываются все их параметры, которые меняются ("включено-выключено", значение датчика, ...) | ||
* ''/28- | * ''/28-0115a48fcfff'' - непосредственно сам "канал" ("контрол)" - топик, куда записывается значение с датчика. Его название совпадает с адресом 1-Wire датчика на шине. | ||
* '' | Содержание сообщения: | ||
* ''23.25'' - значение температуры | |||
=== Пример подписки === <!--T:11--> | === Пример подписки === <!--T:11--> |