Найти тему

Что такое MQTT?

MQTT - так называется протокол обмена сообщениями между устройствами. Непрограммисту понимать дебри не нужно, поэтому расскажу вкратце саму логику общения между умными железками.

Для этого на сервере создается что-то вроде доски объявлений, по английски это будет Topic, а устройства уже туда пишут сообщения (Publish) или читают обновления (Subscribe).

Идея такова:

Есть у нас, допустим, некий умный дом под названием "Myhome", в него входит контроль за состоянием почвы в горшках ("влажность"). Но так как горшков у нас много, то и физических устройств много, каждое из которых может содержать датчик влажности почвы и реле для насоса.

Порядок работы будет таков:

1. при изменении влажности на датчике, устройство отсылает в свой топик информацию, например, myhome/влажность/гераньнаподоконнике

2. насос подписан на этот топик, и когда встречает, что myhome/влажность/гераньнаподоконнике<20 он включается, и одновременно с этим публикует свое состояние в свой топик, например, myhome/насос/гераньнаподоконнике=1

3. на телефоне у владельца высвечивается: герань высохла, насос включился.

4. PROFIT!

Устройство, на котором создаются топики, называется брокером.

Самый популярный брокер - Mosquitto. Он идет вспомогательным компонентом у очень многих систем управления умным домом. Основная принципиальная особенность в том, что он автоматически создает топик, как только получает его от устройства, то есть кроме параметров сервера настраивать ничего не надо.

В следующий раз поговорим о том, как сделать управление вашей esp8266 с прошивкой ESPEasy через ioBroker по MQTT. Звучит страшно, но по факту это пять минут тыкания мышкой, вот увидите )