Mit welchen Befehlen schaltest du denn bisher ein und aus?
Mit Homematic-Aktoren würde es so funktionieren:
<?
$Aktorinstanz = xxxxx; // ID vom Aktor "Licht"
$Aktorvariable = yyyyy; // ID von State-Variable "Licht"
HM_WriteValueBoolean($Aktorinstanz , "STATE", !GetValueBoolean($Aktorvariable));
?>
Und das Script von der Status-Variable des Senders(HM-PBI-4-FM) auf Aktualisierung triggern lassen.
zurzeit habe ich mein iphone ich schalte ein mit skript (licht ein (weis kanal 1-3 auf 255) und aus mit einen aus skript (weis kanal 1-3 auf 0)
aber wenn ich eben auf Aktualisierung ändere(ereignissteuerung) gehts eben nicht weil ich ja 2 skripte habe irgendwie blinke ich da nicht durch damit
ich mochte mit einem Tastendruck alle 3 Kanäle auf 255 und dann mit nochmal drücken alle 3 Kanäle auf 0
verbaut habe ich eben einen normalen Licht Taster von Busch und Jäger. (bisher war ein UP FS20 Schalter wo der BuJ Taster auf dem externen UP FS20 Schalter angeschlossen wahr
das Problem ist, dass du zwei Scripte hast, die beide bei Tastendruck gestartet werden.
Du musst jedoch die Scripte sich gegenseitig blocken, damit immer nur eines im Wechsel gestartet wird.
Dazu einfach im jeweiligen Script zwei Zeilen einbauen.
deaktiviert eigenen Scripttrigger
aktiviert den Trigger des zweiten Scripts.
IPS_SetEventActive($_IPS['SELF'], false); // oder EreignisID des Triggers der ausgeschalten werden soll
IPS_SetEventActive($EreignisID, true);
Als weitere Möglichkeit ergibt sich hieraus ein Mehrfachdruck und damit Programme/Lichtszenen durchschalten.
Leider habe ich garkeine Ahnung wie DMX in IPS aussieht.
Gibt es irgendwelche Variablen im IPS-Baum (unter der Instanz), die den Status der Kanäle (bzw. Wert) anzeigt?
Kannst du mal einen Screenshot machen, dass ich davon eine Vorstellung bekomme?
Du müsstest vom Prinzip die Werte einlesen und ensprechend in die „Gegenrichtung“ schalten.
Script wäre dann kein Problem. Doch leider habe ich keine DMX-Geräte, woran ich es vorstellen kann.
… und trigger das Skript auf Variablenaktualisierung von deinem HM-PBI-4-FM. So brauchst du auch nur ein Skript.
Habs gerade mal ausprobiert und bei mir funktioniert es.
Wenn du zwei Skripte benötigst, weil du sie noch für andere Dinge benutzt, könntest du in der else Schleife auch das zweite Skript zum Ausschalten starten.
Wenn mehr Zustände als nur Ein und Aus möglich sind, müsstest du das Skript noch dementsprechend erweitern.