Jedna notifikace pro změnu stavu více entit

Automatizace pomocí vývojového nástroje pro vizuální programování. Původně vyvinuto společnost IBM.
Odpovědět
mamonick
Dárce - Donátor
Dárce - Donátor
Příspěvky: 191
Registrován: 20. září 2021, 13:47
Bydliště: Třebechovice p. O.
Dal poděkování: 23 poděkování
Dostal poděkování: 23 poděkování

Jedna notifikace pro změnu stavu více entit

Příspěvek od mamonick »

Konečně (po 2 letech užívání HA) našel odvahu se ponořit do tajů NR a hlavně přepsat a tím zjednodušit automatizace do NR.
Teď momentálně pracuji na notifikaci o odpojení a připojení k od/k wifi ESPhome zařízení.
V HA mám pro každé zařízení 2 automatizace:
  • pošli info, když se zařízení připojí - tím vím, že se také odpojilo
  • pošli info, když se zařízení odpojí na víc jak 15 sec.
To jsem v N-R namaloval celkem úspěšně a zprávy mi chodí... jenže:
tím, jak mám call service: notify společný pro všechny entity, potřebuji do zprávy dát nějaký placeholdr a do něj dostat jméno zařízení.
Jak to ale udělat, když kontroluji stav entity a ne zařízení?
Použil jsem vůbec správné nodky? zatím v tom tápu.
Prosím o postrčení.

A teď ještě jak na to koukám, šlo by nějak vyparsovat z názvu sensoru, tedy získat to, co je mezi "binary_sensor." a "_stav" a dát to do zprávy.

Jo a podotýkám, že lupu jsem použil a snažil se nejprve něco najít ;)
Přílohy
Telegram.png

Uživatelský avatar
acerot
Pokročilý
Pokročilý
Příspěvky: 118
Registrován: 12. prosinec 2022, 15:44
Dal poděkování: 2 poděkování
Dostal poděkování: 24 poděkování

Re: Jedna notifikace pro změnu stavu více entit

Příspěvek od acerot »

Ať nemáš tolik nodů, dej všechny ty sledované entity do jednoho events: state nodu a vepiš jejich seznam jednou z metod list, regex nebo substring v okně editace nodu (vedle názvu entity, kde máš teď listbox s vybraným textem exact).
Pokud máš v HA definovány atributy friendly_name u sledovaných entit, tak je jednoduše získáš z msg objektu, který z nodu vypadne v položce data.new_state.attributes.friendly_name. To pak můžeš přidat do notifikační message.

Uživatelský avatar
Tad
Administrátor fóra
Administrátor fóra
Příspěvky: 470
Registrován: 30. prosinec 2020, 00:14
Bydliště: 3D
Dal poděkování: 90 poděkování
Dostal poděkování: 53 poděkování

Re: Jedna notifikace pro změnu stavu více entit

Příspěvek od Tad »

Nevím jestli to pro tebe bude použitelné, ale zkus kouknout na doplněk Uptime kuma, můžeš monitorovat cokoliv a v jakémkoliv intervalu, já si nechávám posílat upozornění na Telegram, ale předpokládám že když je to doplněk HA tak bude včetně integrace a bude umět vytvořit sledované entity nebo posílat notifikace přímo do HA, jukni a uvidíš..
Přílohy
Screenshot_2023-01-06-20-49-18-53_40deb401b9ffe8e1df2f1cc5ba480b12.jpg
Screenshot_2023-01-06-20-48-41-03_40deb401b9ffe8e1df2f1cc5ba480b12.jpg
HAOS-x86-64, Intel J4125 Quad Core, 8GB RAM, 512GB SSD, Conbee II, zigbee2MQTT

mamonick
Dárce - Donátor
Dárce - Donátor
Příspěvky: 191
Registrován: 20. září 2021, 13:47
Bydliště: Třebechovice p. O.
Dal poděkování: 23 poděkování
Dostal poděkování: 23 poděkování

Re: Jedna notifikace pro změnu stavu více entit

Příspěvek od mamonick »

Tad píše: 06. leden 2023, 20:53 Nevím jestli to pro tebe bude použitelné, ale zkus kouknout na doplněk Uptime kuma, můžeš monitorovat cokoliv a v jakémkoliv intervalu, já si nechávám posílat upozornění na Telegram, ale předpokládám že když je to doplněk HA tak bude včetně integrace a bude umět vytvořit sledované entity nebo posílat notifikace přímo do HA, jukni a uvidíš..
Díky, ale neřeším monitoring, ten mi funguje, posílá alerty na telegram.
Pouze přesouván automatizaci posílání alertů z HA do Node-RED. Ano, předělávám něco, co funguje, ale když jsem se seznámil s N-R, chci postupně do něj převést všechny.
Ale znovu díky, kouknmu na to, třeba najdu využití.

mamonick
Dárce - Donátor
Dárce - Donátor
Příspěvky: 191
Registrován: 20. září 2021, 13:47
Bydliště: Třebechovice p. O.
Dal poděkování: 23 poděkování
Dostal poděkování: 23 poděkování

Re: Jedna notifikace pro změnu stavu více entit

Příspěvek od mamonick »

acerot píše: 06. leden 2023, 19:31 Ať nemáš tolik nodů, dej všechny ty sledované entity do jednoho events: state nodu a vepiš jejich seznam jednou z metod list, regex nebo substring v okně editace nodu (vedle názvu entity, kde máš teď listbox s vybraným textem exact).
Já tušil, že to určitě jde udělat elegantněji, než tolik nodů... Takovej krásnej obrázek to původně byl, a teď takový skoro nic :D
Vše OK, zprávy posílá... ten uni text.
Telegram2.PNG
acerot píše: 06. leden 2023, 19:31 Pokud máš v HA definovány atributy friendly_name u sledovaných entit, tak je jednoduše získáš z msg objektu, který z nodu vypadne v položce data.new_state.attributes.friendly_name. To pak můžeš přidat do notifikační message.
A tohle je už pro mě další ořech. V HA v entitách jsem prověřil, že každá z entit má skutečně definovaný atribut friendly_name, jen už nevím, jak s ním dál naložit. Podle toho, cos napsal, zadám v nodu call serivce do jsonu té zprávy? Nad tímhle jsem strávil celé odpoledne :(

Omlouvám se, ale jsem fakt v tomto 1. ročník ;)

Uživatelský avatar
acerot
Pokročilý
Pokročilý
Příspěvky: 118
Registrován: 12. prosinec 2022, 15:44
Dal poděkování: 2 poděkování
Dostal poděkování: 24 poděkování

Re: Jedna notifikace pro změnu stavu více entit

Příspěvek od acerot »

Jedna z možností, jak message pro notify sestavit, je zapsat friendly_name rovnou do toho JSONu takto:

Kód: Vybrat vše

{"message":"Zařízení " & data.new_state.attributes.friendly_name & " má delší výpadek.", "title": "Alert"}
Ale samozřejmě to nehlídá okrajové podmínky, jako že friendly_name není definováno nebo podobně.

mamonick
Dárce - Donátor
Dárce - Donátor
Příspěvky: 191
Registrován: 20. září 2021, 13:47
Bydliště: Třebechovice p. O.
Dal poděkování: 23 poděkování
Dostal poděkování: 23 poděkování

Re: Jedna notifikace pro změnu stavu více entit

Příspěvek od mamonick »

díky moc. Nejdřív to nemakalo, ale pohrál jsem si s nastavením a pak se friendly name začalo plnit.

Odpovědět

Zpět na „Node-Red“