Умный дом в котором я живу. Перехватываем управление у автоматизации Home Assistant
При использовании умного дома иногда возникает проблема, что автоматизации в данный конкретный момент не нужны, а они упорно продолжают отрабатывать. Например, автоматика упорно включает свет при движении, когда он не нужен.
Задача - без залезания в интерфейс умного дома понять, что действие совершил человек, а не автоматизация.
Решение этой проблемы мне долго не давалось, и вот наконец я нашел как это решить.
Решение простое до безобразия.
Создаем автоматизацию, в которой триггером будут интересующие нас события.
В моем примере я буду ловить
Далее проверяем а кто у нас вызвал это событие. Если trigger.to_state.context.parent_id= null - то событие произошло без автоматизаций.
Ну а дальше можно просто добавить булеву переменную, указывающую что событие было "ручным"
А дальше есть 2 варианта - отключать автоматизации при включении или добавить в автоматизации условие или добавить в автоматизации проверку на состояние нашего датчика.
Вопрос возврата управления автоматике мы рассматривать не будем, ибо слишком разнообразны варианты.
Самый примитивный - запустить таймер и по его окончании выключить.
Помимо trigger.to_state.context.parent_id, определяющего отработавшую автоматизацию, можно так-же повесить разные сценарии в зависимости от пользователя. Для этого надо смотреть на trigger.to_state.context.user_id
Умный дом
138 постов2.2K подписчика