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

Нет описания правки
Строка 2: Строка 2:
<translate>
<translate>
<!--T:1-->
<!--T:1-->
'''MQTT''' - очередь сообщений, использующаяся в ПО Wiren Board. [http://en.wikipedia.org/wiki/MQTT Базовая информация по MQTT на Википедии].
'''MQTT''' - очередь сообщений, использующаяся в [[Программное обеспечение Wiren Board|программном сообщении Wiren Board]]. [http://en.wikipedia.org/wiki/MQTT Базовая информация по MQTT на Википедии].


Большая часть встроенных функций контроллера (АЦП, реле, транзисторный выход, watchdog) и функций внешних совместимых устройств (например, подключённых по RS-485 модулей реле) транслируются в очередь в виде сообщений. Сами они, в свою очередь, также реагируют на управляющие сообщения из очереди.
Драйверы, отвечающие за аппаратные возможности контроллера (цифровые входы, АЦП, транзисторный выходы, ...) и функции внешних подключённых устройств (например, подключённых по RS-485 модулей реле) записывают их состояние в очередь MQTT в виде специальных сообщений. Веб-интерфейс читает эти сообщения и на их основе отображает состояние устройств.


Программа (демон), отвечающая за рассылку сообщений от одних клиентов другим, называется брокером сообщений. В Wiren Board используется брокер сообщений [http://mosquitto.org/ Mosquitto].
Если же происходит нажатие кнопки в веб-интерфейсе, уже веб-интерфейс отправляет сообщение в очередь MQTT, драйвер устройства его получает и отдаёт команду устройству.
 
[[Веб-интерфейс Wiren Board| Веб-интерфейс]] работает также через систему сообщений MQTT - нажатие кнопки в интерфейсе вызывает отправку сообщения в очередь (а именно брокеру сообщений); изменение показания датчика, поступившее в систему сообщений, тут же вызывает изменения транслируется в веб-интерфейс.
 
'''Пример:''' если на цифровой вход Wiren Board подан сигнал, драйвер ''wb-homa-gpio'' создаёт сообщение вида .......... - "на входе ... появился сигнал". Веб-интерфейс, который тоже подключён к системе сообщений, получает это сообщение и "зажигает" индикатор в веб-интерфейсе.


== Примеры работы через очередь MQTT == <!--T:3-->
== Примеры работы через очередь MQTT == <!--T:3-->
Строка 140: Строка 136:
<!--T:6-->
<!--T:6-->
Специальные "драйверы" (отдельный для каждой функции контроллера и внешнего устройства) транслируют данные с устройства в очередь в виде сообщений специального формата. Сообщения из этой очереди получает веб-интерфейс и движок правил. Они же могут добавлять туда новые сообщения - например, "включить реле" после получения нажатия в интерфейсе или выполнения нужных условий в каком-нибудь правиле.
Специальные "драйверы" (отдельный для каждой функции контроллера и внешнего устройства) транслируют данные с устройства в очередь в виде сообщений специального формата. Сообщения из этой очереди получает веб-интерфейс и движок правил. Они же могут добавлять туда новые сообщения - например, "включить реле" после получения нажатия в интерфейсе или выполнения нужных условий в каком-нибудь правиле.
Программа (демон), отвечающая за рассылку сообщений от одних клиентов другим, называется брокером сообщений. В Wiren Board используется брокер сообщений [http://mosquitto.org/ Mosquitto].
[[Веб-интерфейс Wiren Board| Веб-интерфейс]] работает также через систему сообщений MQTT - нажатие кнопки в интерфейсе вызывает отправку сообщения в очередь (а именно брокеру сообщений); изменение показания датчика, поступившее в систему сообщений, тут же вызывает изменения транслируется в веб-интерфейс.
'''Пример:''' если на цифровой вход Wiren Board подан сигнал, драйвер ''wb-homa-gpio'' создаёт сообщение вида .......... - "на входе ... появился сигнал". Веб-интерфейс, который тоже подключён к системе сообщений, получает это сообщение и "зажигает" индикатор в веб-интерфейсе.


== Очистка сообщений MQTT == <!--T:26-->
== Очистка сообщений MQTT == <!--T:26-->