Home Assistant, node-red, narodmon.ru

Home Assistant и Народный мониторинг

Введение

Есть проект «Народный мониторинг» — сайт https://narodmon.ru/. На данном проекте любой желающий может публиковать показания различных датчиков и размещать их прямо на карте.

В этой статье покажу способ как опубликовать показания датчиков из системы умного дома «Home Assistant» — сайт https://www.home-assistant.io/.

Итак, дано:

  • Система Home Assistant
  • Система блочного программирования Node-RED, интегрированная в Home Assistant
  • Уличные датчики температуры и давления

Регистрация на сайте narodmon.ru

Заходим на сайт https://narodmon.ru/, в верхней части экрана нажимаем на «Вход» и регистрируемся или входим в сервис.

В процессе регистрации указываем логин, он нам понадобится далее.

Настраиваем цепочку в Node-RED

Суть цепочки очень простая. Метка времени каждые 5 минут вызывает функцию «narodmon.ru» . В функции формируются данные для отправки с помощью API проекта «Народный мониторинг». Далее, условие, проверяющее, что данные были сформированы. Далее, http запрос на narodmon.ru, который как раз и отправляет данные наших датчиков. В ответ на запрос выдается JSON-объект с результатом. Ответ должен быть {«error»: «OK»}. В моем случае, если ответ не правильный, то отправляется сообщение в телеграм об ошибке отправки данных на проект.

Файл для импорта в Node-RED: narodmon.json

Импортируем цепочку в Node-RED

После импорта открываем и правим функцию «narodmon.ru«

1. В строке var T1 = ha.states[‘sensor.hum_temp_bar_outside_temperature’].state; надо поправить: sensor.hum_temp_bar_outside_temperature на имя Вашего сенсора.

Взять имя сенсора можно из параметров сенсора в Home Assistant.

2. В строке «mac»: «XX:XX:XX:XX:XX:XX» «X» — меняем на любые от 0 до 9 и от A до F. Например, «01:A2:B3:34:E5:F0»

3. DEVICE_NAME — замените на имя Вашего устройства.

4. USER_NAME — замените на Ваш логин на narodmon.ru.

5. lat, lon и alt — ширина, долгота и высота над уровнем моря — именно по этим координатам появится метка на карте «Народного мониторинга».

Ширину и долготу можно посмотреть прямо на сайте «Народный мониторинг» в нижнем левом углу карты. Вводить без букв, только цифры.

В разделе «sensors» описываются наши сенсоры. По аналогии можно добавить и другие сенсоры. Для каждого сенсора нужно указать id — случайное, name — имя сенсора (я указываю название микросхемы датчика), value — непосредственно показание сенсора, unit — единица измерения.

В принципе, все. Разворачиваем Node-RED и данные каждые пять минут будут отправляться на проект «Народный мониторинг».