Mehrere Events als Trigger, unterscheidung wer hat getriggert

Servus

ich komme hier nicht weiter.
Habe meine Heizung, die ich über JSON abfrage. Das klappt soweit auch gut.
Hier mein Aufbau

Alle werte, die über JSON abgefragt werden landen in dieser liste. Es ist im endeffekt einfach nur eine Schleife, die für jede Variabel aus dem Namen der Variable die Namen für die Arrays rausschneidet und dann die Werte darin einträgt.

Soweit geht das auch. Die Werte die ein L_ am Anfang haben sind lesbare Werte. Für die anderen können auch über JSON gesetzt werden. Dazu möchte ich eine Funktion bauen.

Zuerst habe ich versucht, bei den Variablen die schaltbar sind das Action Skript zu hinterlegen:

SetValue($_IPS[‚VARIABLE‘], $_IPS[‚VALUE‘]);

blablabla
JSON Send

was soweit auch funktionert, dass wenn neue Werte auf die Variable kommen werden diese nicht geschickt. Wenn ich im Webfront den Wert anklicke ist er auch Auswählbar und nur dann wird das skript gestartet.

Jetzt ist aber folgendes Problem. Wenn ich die Werte durch ein anderes Script ändere (z.B. Urlaub dann

setvalue ($ID Ökomdus, 2);

dann ändert sich der Wert aber das Script wird nicht gestartet.

Anderer Weg mit Script unt untendrunter denn dann die Variablen, bei Änderung ausführen und dann auswerten welches Event, dann JSON Send starten geht so auch. Dann aber wieder das Problem, dass wenn die Werte sich ändern, beim Abfragen, werden die Werte dann gleich wieder an die Heizung geschickt, da ja die Events bei Änderung unter dem Script sind.

bei jeder Abfrage die Events abschalten und danach wieder aktivieren ist auch irgendwie nicht so der saubere Weg.

Wie kann ich das am elegantesten lösen?

SetValue ist da auch falsch. Du möchstest RequestAction(ID der Variable, Wert); benutzen.
Dann wird auch das Aktionsskript gestartet.
Extra Tipp zum Aktionsskript: Erst die JSON Send blabla Funktion ausführen und nur bei Erfolg die Variable setzen.
Michael

Ah sehr cool das mit dem requests Action kannte ich noch gar nicht.

Jetzt klappt es

Danke