Script trigger Problem

Ich habe eine Variable für einen Dimmer, die durch ein PHP-Skript eingestellt wird. Wird diese Variable jedoch extern zB von ipsstudio geändert, muss das Skript über einen Trigger laufen. Dieser Trigger sollte jedoch nicht ausgelöst werden, wenn die Variable durch das PHP-Skript geändert wird.

Gibt es eine Problemumgehung, um den Trigger zu verhindern, wenn die Variable intern vom Skript geändert wird?

Ist das eine Statusvariable welche direkt zu einer Instanz und somit Hardware gehört? (Screenshot)

Wie? Per RequestAction oder per SetValue?

Warum? Schaltaktionen auf Variablen lösen immer direkt die Standardaktion (sofern vorhanden) aus oder das Aktion-Skript aus.

Warum?

Ohne die Hintergründe zu der Variable und dem Dimmer zu kennen, kennst du den Abschnitt schlechte Aktion-Skripte aus der Doku?

Michael

Danke für das Antwort. Vielleicht etwas Klarstellung mit diesem Diagramm. Dieses Skript soll eine Reihe von HUE-Lampen mit einem Dimmer HMIP-BDT steuern. Der Dimmer ist nicht direkt angebunden, da die HUE-Lampen immer mit Spannung versorgt werden müssen.
Es gibt mehrere Aktionen, die die Lampen steuern. Hier drei Teilen.
Der erste ist der Dimmer-Long-Up-Taster. Dadurch wird der Dimmer auf einen neuen Wert eingestellt. Das Skript wird durch das Long Up (Event Trigger) aktiviert und liest den Wert des Dimmers zeitverzögert aus. Das Skript steuert dann die HUE-Lampen.
Der zweite ist der Sonnenaufgang-Timer, der die HUE-Lampen nach Sonnenuntergang langsam dimmt. Der Dimmer wird auch so eingestellt, dass beim Drücken eines Dimmers eine Aktion vom richtigen Wert gesendet wird.
Die dritte ist die Adaption von IPSstudio. Da das direkte Einstellen des Dimmerwerts einen zyklischen Fehler verursacht, habe ich diesen über eine separate Variable (Dimmer Variable) gesendet. Diese Variable wird von ipsstudio angepasst. Dann wird das Skript aktiviert und die HUE-Lampen und der Dimmer werden angepasst.

Das Problem bei letzterem besteht darin, dass, wenn ich das Skript den Wert der Dimmer-Variablen anpassen lasse, bei den Ereignissen Dimmer Long up oder Sunrise eine Endlosschleife („Adjust cyclic event“ im rot) erstellt wird. Daher möchte ich den Wert der Variablen anpassen, ohne den Ereignistrigger zu aktivieren.
Das Senden des Codes ist 400 Zeilen lang, daher denke ich, dass es nicht viel Sinn macht.

Ich hoffe, das ist so klarer. Entschuldigung für den Google-Übersetzer :slight_smile: