Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Erweiterung - Prüfen ob RedNode Server erreichbar ist
#1
Bug 
Hat jemand eine Idee wie ich im Gekko eine Möglichkeit schaffe um zu prüfen das der RedNode Server erreichbar ist? 

Ich benötige das um eine Logik abzusichern. Ein einfacher Ping ist ja leider nicht möglich via Logik.
#2
Hab es jetzt hinbekommen. Vielleicht hilft es ja jemanden weiter.


Ich lasse, mittels eines kleinen Flows, aller 30 Sekunden, für die Dauer von 1er Sekunde, einen Wert (Bez. Status) auf 1 setzen. 
Der Gekko prüft den Wert mittels HTTP Abfrage und einer eigenen Logik. 
Wenn die Logik innerhalb von 3 Minuten keine neue "Meldung" erhält wirft er einen Fehler. 
Zusätzlich wird der ermittelte Status in der Logik als Variabel abgespeichert. Diese verwende ich dann um andere Logiken abzusichern, welche von eine Erreichbarkeit des RedNode abhängig sind, um nicht in einem Fehler zu laufen.


       

   






Code:
[{"id":"f1aece6.cfd613","type":"tab","label":"Absicherung RedNode","disabled":false,"info":""},{"id":"678b34c4.0b0c5c","type":"function","z":"f1aece6.cfd613","name":"","func":"var wert = Number(msg.payload);\nflow.set('status',wert);\nreturn msg","outputs":1,"noerr":0,"x":575,"y":140,"wires":[["cda1c9ee.e585a8"]],"l":false},{"id":"cda1c9ee.e585a8","type":"debug","z":"f1aece6.cfd613","name":"Debug","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":670,"y":140,"wires":[]},{"id":"d35b79c8.ab98b8","type":"http in","z":"f1aece6.cfd613","name":"/Status","url":"/Status","method":"get","upload":false,"swaggerDoc":"","x":70,"y":40,"wires":[["d14ae4a.0710e18"]]},{"id":"d14ae4a.0710e18","type":"function","z":"f1aece6.cfd613","name":"","func":"\n\n\nvar o=\n        {\n        Status:flow.get('status')\n        };\nmsg.payload  = JSON.stringify(o);\nreturn msg;","outputs":1,"noerr":0,"x":155,"y":40,"wires":[["be1dacc0.e60b1"]],"l":false},{"id":"be1dacc0.e60b1","type":"http response","z":"f1aece6.cfd613","name":"HTTP-Response","statusCode":"200","headers":{"content-type":"text/html"},"x":290,"y":40,"wires":[]},{"id":"d28b9f13.8e139","type":"trigger","z":"f1aece6.cfd613","op1":"1","op2":"0","op1type":"str","op2type":"str","duration":"1","extend":false,"units":"s","reset":"reset","bytopic":"all","name":"Dauer 1sek","x":430,"y":140,"wires":[["71784a70.aedbb4","678b34c4.0b0c5c"]]},{"id":"71784a70.aedbb4","type":"trigger","z":"f1aece6.cfd613","op1":"","op2":"start","op1type":"nul","op2type":"str","duration":"30","extend":false,"units":"s","reset":"reset","bytopic":"all","name":"Wdh 30 Sekunden","x":430,"y":200,"wires":[["d28b9f13.8e139"]]},{"id":"144fc2f.72a083d","type":"inject","z":"f1aece6.cfd613","name":"Backup aller 10min","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"*/10 0-22 * * *","once":false,"onceDelay":0.1,"x":140,"y":200,"wires":[["d28b9f13.8e139"]]},{"id":"df7d90de.179ef","type":"start-up-trigger","z":"f1aece6.cfd613","x":100,"y":140,"wires":[["d28b9f13.8e139"]]}]



Für NodeRed wird noch folgende Palette benötigt:

node-red-contrib-startup-trigger

Dieser startet den Flow nach einem Neustart des Pi's automatisch wieder.


_____________

Warum das ganze.
Ich beheizte bei mir ein Terrarium. Ermittelt wird die aktuelle Temperatur durch ein Shelly HT und geschalten wird eine Heizmatte durch einen anderen Shelly. 
Ich habe bereits den Ausfall des HTs abgesichert. Jetzt ist es mir aber passiert das während der Heizphase der Raspberry Pi nicht mehr erreichbar war und somit das erreichen der Soll-Temperatur nicht "gemeldet" wurde. Resultat Heizung hat weiter geheizt, da sie ja nicht abgeschalten wurden ist. Schlecht für die Bewohner. Der jetzt ermittelte Status fließt in die Heizlogik einfach mit ein und wird dort durch eine AND-Verknüpfung ein Teil der Freischaltung der Heizmatte.


Angehängte Dateien
.zip   Flow Absichern Raspberry.zip (Größe: 941 Bytes / Downloads: 0)


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
Bug Erweiterung - Xiaomi Roborock S55 in Gekko einbinden Node Red Strabbit 4 670 15.02.2020, 03:01
Letzter Beitrag: Strabbit
Bug Erweiterung - Feuchtigkeit Bad schneller Abbauen Strabbit 1 278 20.01.2020, 13:18
Letzter Beitrag: Strabbit

Gehe zu:


Benutzer, die gerade dieses Thema anschauen:
1 Gast/Gäste