Найти в Дзене
SAV LABS

Переводим автоматизации из .yaml в Node Red. Начнем с одной из самых энергоответственных. Home Assistant

В одной из предыдущих статей я упомянул, что не пойму от чего зависит сработка/несработка автоматизации по событию. Само событие обрабатывается автоматизацией, созданной в automations.yaml. За долгое время я так и не нашел причину рандомности, поэтому решил попробовать перевести эту автоматизацию в NodeRed - вдруг эта проблема уйдет. Итак, перетаскиваем узел(ноду) "events: state" на созданный новый поток и входим в его конфигурацию. Там называем узел как интереснее, выбираем entity calendar.avtomaty, которую мы создали в одной из предыдущих статей. Проверять в последствии мы будем изменение состояния либо "on" либо "off#. В конце статьи я описал глюк при использовании ноды "events: state" с такой настройкой, поэтому нужно кое-что поменять. Далее я не нашел в этих ваших интернетах примера, поэтому решил попробовать разобраться сам. Итак, подключаем на выход "true" ноды еще одну ноду "debug", создаем в календаре событие "Отключение титана", дожидаемся сработки и смотрим справа на закладк
Оглавление

В одной из предыдущих статей я упомянул, что не пойму от чего зависит сработка/несработка автоматизации по событию. Само событие обрабатывается автоматизацией, созданной в automations.yaml. За долгое время я так и не нашел причину рандомности, поэтому решил попробовать перевести эту автоматизацию в NodeRed - вдруг эта проблема уйдет. Итак, перетаскиваем узел(ноду) "events: state" на созданный новый поток и входим в его конфигурацию. Там называем узел как интереснее, выбираем entity calendar.avtomaty, которую мы создали в одной из предыдущих статей. Проверять в последствии мы будем изменение состояния либо "on" либо "off#.

Важно

В конце статьи я описал глюк при использовании ноды "events: state" с такой настройкой, поэтому нужно кое-что поменять.

Далее я не нашел в этих ваших интернетах примера, поэтому решил попробовать разобраться сам. Итак, подключаем на выход "true" ноды еще одну ноду "debug", создаем в календаре событие "Отключение титана", дожидаемся сработки и смотрим справа на закладке "отладка" какие данные мы получили. Там мы видим, что состояние перешло в "on" с сообщением "Отключить титан" в атрибутах. Копируем путь атрибута, нажав кнопку рядом с сообщением.

У меня этот путь получился "payload.new_state.attributes.message". Итак, обрабатываем это сообщение с помощью ноды "switch", в свойствах которой используем полученный ранее и чуть подправленный путь к атрибуту.

<<< Подборка статей на этом канале про Home Assistant >>>

Далее добавляем две исполнительные ноды "action", по одной на каждый выход ноды "switch" - одна будет включать, а другая выключать розетку с титаном.

Далее, убираю ноду "debug", делаю чуть покрасивше и компактнее схему потока и обязательно нажимаю кнопку "Развернуть".

-5

Далее, в File Editor, который мы установили ранее, в файлике automations.yaml комментируем строчки автоматизаций включения и выключения титана и перезапускаем HA.

-6

Анонсированный выше глюк

При испытаниях я нашел глюк Local Calendar, после чего пришлось снова подключать ноду "debug". Происходило примерно следующее. В календаре было создано два события: в 16.40 "Включить титан" и в 16.45 "Отключить титан". Но титан в 16.40 включался (кстати все происходит с задержкой примерно на 10-20 сек), когда нода "events: state" отсылала сообщение "Включить титан", и ровно через минуту выключался, причем от сообщения ноды "Отключить титан". Откуда она брала это событие только ей известно. После этого в 16.45 титан оставался быть отключенным, а ровно через минуту включался по команде от ноды. Откуда берутся эти команды - так и не понял. В-общем, пришлось поиграться с настройками и пришел к таким изменениям

-7

В дебаге сообщения от ноды "events: state" так криво и приходят, но включается/выключается титан вроде правильно. Нифига не пойму чо к чему, но понял, что к Local Calendar нужно относиться с осторожностью и перепроверять все ... Возможно, что автоматизации, которые раньше отрабатывали из automations.yaml отрабатывали рандомно из-за подобных выкрутасов календаря...

UPD. За три дня результат наблюдений - все работает как задумано.

В-общем, понаблюдаю изменится-ли поведение титана и расскажу в одной из следующих статей, поэтому

Ставьте лайки, оставляйте комментарии, страница в VK, подписывайтесь на канал, присоединяйтесь в Telegram чтобы ничего не пропустить!

Поддержите канал донатом

-8

#умныйдом #календарь #HA #HomeAssistant #сделайсам #минипк #неттоп #nettop #HACS #nodered #node-red #nodered #dwainsdashboard #dwains #dashboard #планшет #ibeacon #bluetooth