Jak ze zprávy z HHTP request vytvořit entitu
-
- Pokročilý
- Příspěvky: 123
- Registrován: 17. listopad 2021, 20:29
- Dal poděkování: 3 poděkování
Jak ze zprávy z HHTP request vytvořit entitu
Ahoj,
občas si hraju s NR a nyní stojím před úkolem vytvořit z dotazu http request entitu pro další účely.
Zpráva se zobrazuje, OK, ale co dál ...
Vůbec nevím. Pokušel jsem se Googlit, ale nevím ani jak to pořádně nazvat.
Pomůže někdo s popostrčením?
Díky
občas si hraju s NR a nyní stojím před úkolem vytvořit z dotazu http request entitu pro další účely.
Zpráva se zobrazuje, OK, ale co dál ...
Vůbec nevím. Pokušel jsem se Googlit, ale nevím ani jak to pořádně nazvat.
Pomůže někdo s popostrčením?
Díky
-
- Začínající autor
- Příspěvky: 41
- Registrován: 09. prosinec 2022, 13:48
- Dostal poděkování: 4 poděkování
Re: Jak ze zprávy z HHTP request vytvořit entitu
Ahoj,
pokud jsem správně pochopil požadavek, tak postup je následující:
- nadefinovat si template sensor
- v rámci NR flow použít node "Fire event" po vygenerování události "state_changed" s následujícími parametry (Data):
R.
PS. Příkladový kód pro NR:
pokud jsem správně pochopil požadavek, tak postup je následující:
- nadefinovat si template sensor
Kód: Vybrat vše
template:
- sensor:
- unique_id: sensor_nodered_text
name: "Text sensor updated from Node-red"
state: "not set"
Kód: Vybrat vše
{
"entity_id": "sensor.text_sensor_updated_from_node_red",
"new_state": {
"entity_id": "sensor.text_sensor_updated_from_node_red",
"state": "value from Node-red: " & msg.payload
}
}
PS. Příkladový kód pro NR:
Kód: Vybrat vše
[{"id":"9ec211ed5a97c66b","type":"inject","z":"ac835e53f642e5db","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":140,"y":480,"wires":[["68dec6285fdb63c9"]]},{"id":"68dec6285fdb63c9","type":"ha-fire-event","z":"ac835e53f642e5db","name":"","server":"32d979eb.46fec6","version":0,"event":"state_changed","data":"{\t \"entity_id\": \"sensor.text_sensor_updated_from_node_red\",\t \"new_state\": {\t \"entity_id\": \"sensor.text_sensor_updated_from_node_red\",\t \"state\": msg.payload\t }\t}","dataType":"jsonata","x":360,"y":480,"wires":[["4d724af5d2e243c2"]]},{"id":"4d724af5d2e243c2","type":"debug","z":"ac835e53f642e5db","name":"debug 2","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":620,"y":480,"wires":[]},{"id":"32d979eb.46fec6","type":"server","name":"Home Assistant","version":5,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30,"areaSelector":"friendlyName","deviceSelector":"friendlyName","entitySelector":"friendlyName","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m","enableGlobalContextStore":true}]
-
- Pokročilý
- Příspěvky: 123
- Registrován: 17. listopad 2021, 20:29
- Dal poděkování: 3 poděkování
Re: Jak ze zprávy z HHTP request vytvořit entitu
Šel jsem na to od lesa, zatím.
Pro dotaz, kde je jen jeden údaj používám v HA restAPI. To jede báječně.
Pro více údajů ve zprávě, kde potřebuji ale vyfiltrovat jen jeden údaj se zatím ztrácím.
Přes NR a HTTP request vydoluji informace s nastavení json. Tedy jsou i hezky roztříděné v bugu. Pokusil jsem se to vyfiltrovat přes change node, kde jsem vložil zkopírovanou cestu do msg a překlopil jsem to na jinou msg, ale bohužel ten údaj ne že se nevyfiltruje,m ale dokonce ze zprávy zmizí. Ostatní je stále vidět.
Pro dotaz, kde je jen jeden údaj používám v HA restAPI. To jede báječně.
Pro více údajů ve zprávě, kde potřebuji ale vyfiltrovat jen jeden údaj se zatím ztrácím.
Přes NR a HTTP request vydoluji informace s nastavení json. Tedy jsou i hezky roztříděné v bugu. Pokusil jsem se to vyfiltrovat přes change node, kde jsem vložil zkopírovanou cestu do msg a překlopil jsem to na jinou msg, ale bohužel ten údaj ne že se nevyfiltruje,m ale dokonce ze zprávy zmizí. Ostatní je stále vidět.
-
- Pokročilý
- Příspěvky: 123
- Registrován: 17. listopad 2021, 20:29
- Dal poděkování: 3 poděkování
-
- Pokročilý
- Příspěvky: 123
- Registrován: 17. listopad 2021, 20:29
- Dal poděkování: 3 poděkování
Re: Jak ze zprávy z HHTP request vytvořit entitu
Tak zkouška přes NR zatím nevyšla
senzor debug Jakmile to nechám běžet děsně se zahltí HA. Vidím hodnotu, které by se měla poslat do nové identity v bugu, ale v identitě se nepřipíše
senzor debug Jakmile to nechám běžet děsně se zahltí HA. Vidím hodnotu, které by se měla poslat do nové identity v bugu, ale v identitě se nepřipíše
-
- Začínající autor
- Příspěvky: 41
- Registrován: 09. prosinec 2022, 13:48
- Dostal poděkování: 4 poděkování
Re: Jak ze zprávy z HHTP request vytvořit entitu
Já jsem to zkoušel na nové entitě, která ještě neměla změněnou hodnotu a tam se to asi chová jinak. Aby to fungovalo vždy, musí "data" objekt obsahovat element "old_state".
Použil jsem node "current_state" a jeho výsledek jsem vložil do "data" objektu
Použil jsem node "current_state" a jeho výsledek jsem vložil do "data" objektu
Kód: Vybrat vše
{
"entity_id": "sensor.text_sensor_updated_from_node_red",
"new_state": {
"entity_id": "sensor.text_sensor_updated_from_node_red",
"state": "update from Node-red: " & msg.rand & " (" & msg.timestamp & ")"
},
"old_state": msg.data
}
-
- Pokročilý
- Příspěvky: 123
- Registrován: 17. listopad 2021, 20:29
- Dal poděkování: 3 poděkování
Re: Jak ze zprávy z HHTP request vytvořit entitu
Už to funguje.
Problém byl v propojení NR a HA. V HA nebyl nějaký doplněk z HACS.
Jsem to udělal jinak, ale hlavně že to funguje.
Děkuji moc za rady-
Problém byl v propojení NR a HA. V HA nebyl nějaký doplněk z HACS.
Jsem to udělal jinak, ale hlavně že to funguje.
Děkuji moc za rady-