NEWS
Frage zu Triggern
-
Hallo zusammen,
ich habe einen Node-RED Flow der mein Garagentor überwacht und wenn dort der position Wert nach oben geht und mehr als 10 erreicht hat dann wird ein Trigger gestartet um das Licht in der Garage an zu machen.
Ich bin im Moment auf der Suche nach einem Problem weil manchmal das Licht angeht in der Garage (nur wenn das Tor aufgeht) es aber nicht sein sollte da ich ein time range node drin hab.
Meine Frage: Wenn ein Trigger mehrfach das eine Message bekommt (da der Wert des Tors ja öfters über 10 ist bis es bei 100 angekommen ist) ist das nicht tragisch oder? Führt das dazu das der gesetzte Timer (msg.delay) erst dann läuft wenn die letzte message angekommen ist (bei 100) oder startet der Timmer ab der ersten Message (ca. 10)? Oder müsste ich irgendwie dafür sorgen das Trigger nur einmal angetriggert wird?
-
@hotspot_2 sagte in Frage zu Triggern:
Führt das dazu das der gesetzte Timer (msg.delay) erst dann läuft wenn die letzte message angekommen ist (bei 100) oder startet der Timmer ab der ersten Message (ca. 10)?
Das hängt davon ab, ob Du die Option angehakt hast, dass eine neue Nachricht den Delay wieder zurücksetzt.
Ansonsten kann man auch mit einer filter Node arbeiten. -
Bei jedem trigger läuft der Flow von vorne los.
Wenn du nichts berücksichtigst, weiß der eine Flow nix von den anderen.
Wenn du ein Delay startest, dann wird jedesmal ein neuer Delay gestartet und der alte nicht abgebrochen, ohne das du etwas tust. -
Kann ich einen Filter setzen der alles verwirft wenn der Trigger schon gestartet worden ist? Ich habe das Problem das ich nicht genau weiß welche position Werte über MQTT angekommen vom Garagentor. Wenn ich z.B. fest auf = 10 gehe dann kann es sein das der Werte 10 halt nie übermittelt wird und dann bleibt das Licht aus.