Dynamischer Inject

Node-RED als CCU3/RaspberryMatic Addon, WebApp, HomeKit, ...

Moderator: Co-Administratoren

Antworten
vore
Beiträge: 163
Registriert: 28.11.2011, 20:31
System: CCU und Access Point
Hat sich bedankt: 4 Mal
Danksagung erhalten: 4 Mal

Dynamischer Inject

Beitrag von vore » 29.06.2021, 23:54

Hallo Zusammen!
Ich bin auf der Such nach einer Möglichkeit einen "dynamischen Inject" zu erhalten. Damit meine ich, dass die Uhrzeit für einen Inject nicht fest vorgegeben wird, sondern dynamisch eingestellt werden kann und dann alle 24Std zu dieser Zeit einen Inject erzeugt.

1) Event tritt zu einer nicht bekannten Uhrzeit auf. Diese Zeit wird als neue Zeit für den Inject gesetzt (im Flow über Logik, nicht von Hand).
2) Nach Ablauf von 24Std soll zu der Zeit aus 1) ein Inject erzeugt werden und dann eine Zähler erhöht werden. Danach wieder warten 24Std bis zum nächsten Zeitpunkt.

Ich habe mit dem EZTimer gespielt, weil der sich programmatisch gut ansteuern lässt. Aber so richtig scheint das nicht zu funktionieren. Daher generelle Frage: ist ein Timer dazu die beste Möglichtkeit? Oder besser etwas ganz anderes nutzen?
Hat jemand ein paar Tips dazu?

Danke!

Gruß

Vore
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker

Hypnos
Beiträge: 460
Registriert: 06.01.2018, 12:48
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 57 Mal
Danksagung erhalten: 39 Mal

Re: Dynamischer Inject

Beitrag von Hypnos » 02.07.2021, 15:03

Hallo

so ganz hab ich es nicht verstanden, aber bei Redmatic ist das Paket node-red-contrib-sun-position dabei, bei dem es einen enhanced inject gibt. Diesen kann man das so konfigurieren, das ein Inject zu bestimmten Zeitpunkten erfolgen soll und diese Zeitpunkte per flow oder globalem Context vorgeben.
Es gibt technisch keinen Mechanismus auf geänderte Context-variablen zu reagieren, außer diese in regelmäßigen Zeitintervallen auszulesen. Die enhanced Inject node macht das eher selten (performance-Gründe). Das ist damit nichts was sich häufig ändern sollte und mehr damit gedacht den Inject Zeitpunkt per GUI/Dashboard einstellbar zu machen.

Sonst läuft es weitestgehend darauf hinaus, dass man per function Note mit einem setTimeout sich den nächsten Zeitpunkt für das Auslösen berechnet. Am Ende berechnen alle Timer Nodes das intern über ein setTimeout, auch die ganzen CRON nodes.

Gruß

vore
Beiträge: 163
Registriert: 28.11.2011, 20:31
System: CCU und Access Point
Hat sich bedankt: 4 Mal
Danksagung erhalten: 4 Mal

Re: Dynamischer Inject

Beitrag von vore » 11.07.2021, 18:55

Hallo Hypnos,

danke für den Hinweis! Der enhanced inject mit einem Zeitpunkt per Context im Flow ist genau das was ich gesucht hatte. Hab diese Möglichkeit im Inject leider total übersehen (ich hatte schon einen enhanced inject mit einem fixen Zeitpunkt drin :roll: )

Gruß
Volker
System: Asus TinkerS mit RaspberryMatic und Cubietruck mit IOBroker

Antworten

Zurück zu „RedMatic“