Na początku chciałbym wspomnieć, że ten artykuł powstał na prośbę jednego z czytelników. Gdyż ten blog jest właśnie dla Was i to Wasze potrzeby mają go kształtować. Dlatego naprawdę zachęcam do kontaktu.
Chcę w nim przedstawić jak możecie obsłużyć powiadomienia. Pokażę to na przykładzie Google Hangouts, Telegram oraz Google TTS.
Zatem pierwszy krok to integracja wspomnianych wyżej usług z HA. Zaczynamy!
Google Hangouts
Ta integracja składa się z dwóch części. Pierwsza, ta prostsza, definiowana jest przez dobrze nam znany moduł integracji. Wybieramy w nim usługę Google Hangouts i postępujemy zgodnie z instrukcjami na ekranie.

Kolejnym ruchem jest dodanie usługi notyfikacyjnej w pliku configuration.yaml. Przykładowy wpis może wyglądać następująco
notify:
- name: moja-nazwa
platform: hangouts
default_conversations:
- id: id-rozmowy-pobrane-z-encji-hangouts.conversations
- id: inne-id-rozmowy-pobrane-z-encji-hangouts.conversations
Szczegółowo sposób integracji wyjaśniam w filmie dołączonym do tego artykułu.
Jednak to nie jest takie trudne. Najważniejsze to pamiętać o kilku rzeczach:
- Integracja dla notyfikacji z GH składa się z dwóch części
- Muszą istnieć rozmowy do których wyślemy powiadomienia
- wszystkie dane dotyczące rozmów znajdziemy w szczegółach encji hangouts.conversations
- jeżeli wpisujemy poprawny email i hasło, a system twierdzi, że jest złe to musimy wykonać tą instrukcję i użyć kodu autoryzacji
Google TTS
Integracja ta umożliwi wysłanie wiadomości tekstowej, a HA zamieni ją na komunikat głosowy i wypowie go na wskazanych urządzeniach multimedialnych (np.: głośnik firmy Sonos czy GoogleHome)
Do poprawnego działania wymagana jest modyfikacja pliku configuration.yaml. Należy w nim dodać poniższy wpis.
tts:
- platform: google_translate
service_name: google_say
language: 'pl'
Telegram
Integracja z Telegramem nie jest tak prosta jak wcześniejsze. Jednak jest dobrze opisana na stronach HA. Dlatego pozwolę, sobie nie dublować wpisów tylko odeślę zainteresowanych pod ten adres.
W przypadku problemów i pytań piszcie w komentarzach postaram się pomóc.
Pamiętajcie, że wysyłanie powiadomień przez Telegram oprócz samej integracji wymaga również zdefiniowanej usługi notyfikacyjnej podobnej jak dla Google Hangouts. Wygląda ona następująco:
notify:
- name: moja-nazwa
platform: telegram
chat_id: id-rozmowy-pobrane-z-https://api.telegram.org/botYOUR_API_TOKEN/getUpdates
Wysyłanie notyfikacji
Gdy już mamy zintegrowane usługi to nie pozostaje nam nic innego jak zacząć krok drugi. Czyli Zrobić proces wysyłający powiadomienia. Oczywiście użyjemy do tego Node-Red'a.
- Dodajemy node inject, który umożliwia wywołanie procesu jednym kliknięciem myszki (ten mały przycisk przy nodzie). Jest to idealne do wszelkich testów.
- Następnie dodajemy nod function w którym umieszczamy naszą treść wiadomości (format podany poniżej)
- Ostatnim krokiem jest dodanie nodu call service i odpowiednie jego skonfigurowanie (przykład poniżej)
Przykładowy proces zgodny z powyższym schematem może wyglądać tak:

I jeszcze konfiguracja poszczególnych nodów:
Pierwszy - inject - bez zmian

Drugi - Wiadomość:

Trzeci - powiadomienie tekstowe - wyśle wiadomość podaną w nodzie dwa na wybraną usługę notyfikacyjną (np.: Hangouts lub Telegram). W tym przypadku jest to usługa o nazwie artur, która tak naprawdę kieruje do rozmowy na Hangouts. Pamiętacie jeszcze konfigurację z początku artykułu? Dla tego przypadku wygląda tak:
notify:
- name: artur
platform: hangouts
default_conversations:
- id: id-rozmowy
Natomiast konfiguracja samego nodu wygląda tak:

I to już wszystko. Oczywiście powyższy przykład wywołuje notyfikację tylko gdy ręcznie uruchomimy proces. Jednak zamiast nodu inject możemy podstawić dowolny inny wyzwalacz. Oczywiście takie notyfikacje możemy umieszczać w dowolnym momencie procesu. Zachęcam do testów i eksperymentów.
Zapraszam również do obejrzenia filmu, który jest integralną częścią tego artykułu wyjaśniam w nim bardziej szczegółowo powyższe zagadnienia jak również pokazuje przykłady dla innych typów powiadomień. W szczególności omawiam jak ogarnąć powiadomienia Google TTS.
Tradycyjnie, zachęcam do kontaktu. Komentarze są Wasze. Dajcie znać jak mogę Wam pomóc i co byście chcieli zobaczyć w następnym artykule.
Komentarze