Automatyzacja wyzwalana zdarzeniem z kalendarza
Wprowadzenie
Kalendarza można używać jako zewnętrznego harmonogramu zdarzeń / komend do wykonania w sytemie zamiast kodowania ich na stałe w automatyzacjach.
Poniżej na przykładzie pokażemy jak wykonać automatyzację, która przychodzące zdarzenia z kalendarza będzie wykonywała tak jak komendy. W ten sposób można sterować urządzeniami, włączać automatyzacje, wysyłać powiadomienia, uruchamiać muzykę itd.
Kalendarze
Kalendarze dostępne są w encjach systemu jako czujniki binarne z atrybutami. Możemy je zobaczyć, jeśli klikniemy w Narzędzia deweloperskie na pasku bocznym i przejdziemy do zakładki STANY, a następnie wyszukamy encje calendar.
Gdy zdarzenie z kalendarza jest aktywne, to status czujnika ma wartość on a w jego atrybutach widzimy opis aktywnego zdarzenia.
Przykład - Automatyzacja wykonująca wydarzenie z kalendarza jako komendę
Nazwa automatyzacji
Dodajemy automatyzację o nazwie np. Wydarzenie z kalendarza
:
Wyzwalacz
Jako wyzwalacz tej automatyzacji wybieramy zmianę stanu na on
naszego czujnika z wydarzeniami z kalendarza:
Akcja do wykonania
Akcja do wykonania to uruchomienie serwisu wykonującego komendę. Komendą jest wiadomość z kalendarza:
service: ais_ai_service.process
data_template:
text: '{{ state_attr(''calendar.tomek_sviete_pl'', ''message'') }}'
Kod automatyzacji
Gotowy do przeklejenia (oczywiście należy zmienić nazwę kalendarza na własną) kod automatyzacji w formacie YAML:
alias: Wydarzenie z kalendarza
description: wykonuje wiadomość z kalendarza jako komendę
trigger:
- platform: state
entity_id: calendar.tomek_sviete_pl
to: 'on'
condition: []
action:
- service: ais_ai_service.process
data_template:
text: '{{ state_attr(''calendar.tomek_sviete_pl'', ''message'') }}'
mode: single
Działanie automatyzacji
Zdarzenia, które dodaliśmy w kalendarzu Google:
są wyświetlane w kalendarzu Asystenta domowego:
ostatnie zdarzenie pokazywane jest w stanach, w encji kalendarza:
Gdy encja kalendarza ma status on
, to wiadomość z kalendarza wysyłana jest do wykonania jako komenda (tak samo, jak komenda głosowa czy komenda wpisywana w pole czatu z Jolką).
W efekcie Jolka wykonuje komendę - czyli w naszym przykładzie mówi/czyta tekst:
Schemat automatyzacji
Automatyzację wyzwalaną przez wydarzenie z kalendarza możemy w łatwy sposób utworzyć na podstawie gotowego schematu automatyzacji.
Wystarczy, że:
- Wybierzemy predefiniowany schemat Wykonanie wydarzenie z kalendarza jako komendy
- Uzupełnimy i zapiszemy zdefiniowany szablon: