Chcę otrzymać notyfikację jak dowolony z nich zostanie otwarty (to już w sumie zrobiłem i działa)
a także jak któryś z nich zostanie zamknięty.
I tutaj robi mi się pod górkę (próbuję zrobić to w jednej automatyzacji)
Jako wyzwalacz ustawiam:
okna_grp z otwarte na zamknięte
i jeżeli akcję ustawię na “gdy coś - wtedy coś” to nie mogę dodać który czujnik zmienił stan, tylko jego stan bieżący. Przez to za każdym razem dostaję błędną nazwę czujnika.
Można to jakoś zrobić w jednej automatyzacji, czy trzeba 4 osobne?
YAML:
alias: Okno zamknięcie
description: Zamknięcie jakiegoś okna
trigger:
- platform: state
entity_id:
- binary_sensor.okna_grp
from: "on"
to: "off"
condition: []
action:
- choose:
- conditions:
- condition: state
entity_id: binary_sensor.okno_kuchnia_contact
state: "off"
sequence:
- service: notify.tg_killer
data:
message: Okno kuchnia zamknięte!
- conditions:
- condition: state
entity_id: binary_sensor.okno_salon_contact
state: "off"
sequence:
- service: notify.tg_killer
data:
message: Okno salon zamknięte!
- conditions:
- condition: state
entity_id: binary_sensor.okno_sypialnia_contact
state: "off"
sequence:
- service: notify.tg_killer
data:
message: Okno dupa zamknięte!
title: okno
- conditions:
- condition: state
entity_id: binary_sensor.okno_kuba_contact
state: "off"
sequence:
- service: notify.tg_killer
data:
message: Okno Kuba zamknięte!
mode: single
Wklej kod poprawnie, w tej “wersji” jest nieczytelny.
Wyzwalacz grupa, jeśli jedno okno zostanie zamknięte stan grupy zostanie zmieniony na “off”.
Jeśli następne okno zostanie zamknięte stan grupy się nie zmieni , czyli wyzwalacz nie wyzwoli akcji.
Najprościej, dodaj wszystkie okna do wyzwalacza , wtedy każda zmiana stany okien wyzwoli “wybór”
alias: Okno zamknięcie
description: Zamknięcie jakiegoś okna
trigger:
- platform: state
entity_id:
- binary_sensor.okno_kuchnia_contact
from: "on"
to: "off"
- platform: state
entity_id:
- binary_sensor.okno_kuba_contact
from: "on"
to: "off"
- platform: state
entity_id:
- binary_sensor.okno_sypialnia_contact
from: "on"
to: "off"
- platform: state
entity_id:
- binary_sensor.okno_salon_contact
from: "on"
to: "off"
condition: []
action:
- if:
- condition: state
entity_id: binary_sensor.okno_kuchnia_contact
state: "off"
then:
- service: notify.tg_killer
data:
message: Okno kuchnia zamknięte
- if:
- condition: state
entity_id: binary_sensor.okno_kuba_contact
state: "off"
then:
- service: notify.tg_killer
data:
message: Okno Kuba zamknięte
- if:
- condition: state
entity_id: binary_sensor.okno_sypialnia_contact
state: "off"
then:
- service: notify.tg_killer
data:
message: Okno sypialnia zamknięte
- if:
- condition: state
entity_id: binary_sensor.okno_salon_contact
state: "off"
then:
- service: notify.tg_killer
data:
message: Okno salon zamknięte
mode: single
To niestety nie działa jak trzeba, bo przy zamknięciu jednego okna, dostaje powiadomienia o wszystkich, a chcę tylko o tym które faktycznie zostało zamknięte.