Also ich mache sowas mit Node-Red zur Information der aktuellen Netzspannung und Netzfrequenz.
Hier mal der Flow am Beispiel der Netzspannung:
In der function-node wird aus den Sensordaten die msg.payload erzeugt:
let payload = { "message": "ACHTUNG! Die aktuelle Netzspannung beträgt weniger als " +(msg.payload) + " V!"}
return { payload };
Hier noch der Code für den gesamten flow:
[{"id":"2cb5e80c98a72aa1","type":"server-state-changed","z":"5e38a40b1ab38ea9","name":"<<U ZHA Büro","server":"a1aba8eb.bfd618","version":5,"outputs":2,"exposeAsEntityConfig":"","entityId":"sensor.zha_buro_epson_rms_voltage","entityIdType":"exact","outputInitially":true,"stateType":"num","ifState":"10","ifStateType":"num","ifStateOperator":"gt","outputOnlyOnStateChange":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":1538,"y":1072,"wires":[["c9bc8224d3cc9e9e"],[]]},{"id":"04e80eece3b96b8b","type":"server-state-changed","z":"5e38a40b1ab38ea9","name":"<<U Plug Fire Cube","server":"a1aba8eb.bfd618","version":5,"outputs":2,"exposeAsEntityConfig":"","entityId":"sensor.plug_fire_cube_rms_voltage","entityIdType":"exact","outputInitially":true,"stateType":"num","ifState":"10","ifStateType":"num","ifStateOperator":"gt","outputOnlyOnStateChange":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":1548,"y":1126,"wires":[["c9bc8224d3cc9e9e"],[]]},{"id":"0d25697aa5323961","type":"api-call-service","z":"5e38a40b1ab38ea9","name":"Ausgabe","server":"a1aba8eb.bfd618","version":5,"debugenabled":false,"domain":"notify","service":"telegram_harald","areaId":[],"deviceId":[],"entityId":[],"data":"(msg.payload)","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":2174,"y":1096,"wires":[[]]},{"id":"32290c03a9a4fa6d","type":"function","z":"5e38a40b1ab38ea9","name":"Message","func":"let payload = { \"message\": \"ACHTUNG! Die aktuelle Netzspannung beträgt weniger als \" +(msg.payload) + \" V!\"}\nreturn { payload };","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":1886,"y":1096,"wires":[["533201567c0640a0"]]},{"id":"c9bc8224d3cc9e9e","type":"and-gate","z":"5e38a40b1ab38ea9","name":"<<U","rules":[{"t":"lt","v":"225","vt":"num","propertyType":"msg","property":"data.new_state.state","topic":"sensor.zha_buro_epson_rms_voltage"},{"t":"lt","v":"225","vt":"num","propertyType":"msg","property":"data.new_state.state","topic":"sensor.plug_fire_cube_rms_voltage"}],"outputTopic":"low","gateType":"and","emitOnlyIfTrue":true,"x":1738,"y":1096,"wires":[["32290c03a9a4fa6d"]]},{"id":"533201567c0640a0","type":"delay","z":"5e38a40b1ab38ea9","name":"1/5min","pauseType":"rate","timeout":"5","timeoutUnits":"seconds","rate":"1","nbRateUnits":"5","rateUnits":"minute","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":true,"allowrate":false,"outputs":1,"x":2030,"y":1096,"wires":[["0d25697aa5323961"]]},{"id":"a1aba8eb.bfd618","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}]
Du musst Deine Sensoren entsprechend anpassen und selber entscheiden, ob Du einen Schwellwert brauchst oder nicht.
Bei Fragen einfach melden.