MQTT (Message Queue Telemetry Transport) - сетевой протокол, используемый для обмена сообщения между устройствами по принципу издатель-подписчик в IoT сетях на базе TCP/IP. Очень удобен в проектах, использующих Ethernet или Wi-Fi как сетевой транспорт. Значительная часть современный устройств домашней автоматизации умеет работать с MQTT из коробки.
Для использования MQTT в проекте, необходимо сначала установить MQTT-брокер - это сервер, который будет собирать и обрабатывать сообщения со всех подключенных устройств. В стандартный пакет intraHouse он не входит, но можно установить Mosquitto на Ubuntu. Для этого заходим под суперпользователем и вводим команду:
apt-get install mosquitto mosquitto-clients
демон запускается автоматически. Теперь для проверки открываем вторую консоль к тому же серверу. В одной набираем:
mosquitto_sub -h localhost -t test
А во второй:
mosquitto_pub -h localhost -t test -m "hello world"
Вывод получится таким:
Таким образом MQTT-брокер установлен и работает, если не нужны специфичные настройки авторизации или портов, то на этом настройка закончена. Теперь необходимо подключить к нему сервер intraHouse. Для этого устанавливаем плагин mqtt-клиент и прописываем адрес севера и порт:
На этом развертывание сервиса MQTT в домашней сети завершено.
Оригинал статьи размещен здесь: https://vk.com/my_smart_home