Hallo Gemeinde, ich versuche mich grade an einem Ablaufplan und verzweifle schon bei den einfachsten Versuchen. Ich hab eine Webfront Variable die gesetzt werden soll, wenn ein auslösendes Ereignis auftritt und das will einfach nicht. Folgendes habe ich versucht:
Auslösendes Ereignis, wenn eine Prüf Variable den Wert 5 bekommt => Aktion: Schalte eine Integer Variablke auf den Wert 1
Auslösendes Ereignis bei Änderung und zusätzliche Bedingung die Prüf Variable muss 5 sein => gleiche Aktion.
Ich mache wohl irgendetwas grundlegend falsch aber ich komme einfach nicht drauf.
Magst du uns noch kurz verraten an welcher Stelle es nicht „will“? Kannst du die Variable aus dem WebFront heraus schalten? Oder was soll in der Variable am Ende stehen?
Ich schalte die Variable über das WebFront, die Aktion dahinter wird gestartet (ein .HM_WriteValueInteger wird abgesetzt). Das Ereignis wird ausgelöst, der Plan wird aufgerufen aber die zu setzende Variable ändert ihren Wert nicht.
MIt dem Wenfront wird nur der Tastendruck für das HM IP Hörmann Gateway gesendet. Das Gateway schaltet dann den Wert Process auf 1 (fährt) oder 0 (steht) und den Wert Section auf 2 (auf) oder 5 (ab).
Im Plan frage ich Section ab und setzte den Wert der Integervariablen Zustand (oder versuche es zumindest was ja nicht klappt). Das mache ich jetzt ähnlich, nur dass ich das Skript auf Änderung von Prozess starte und da dann die Richting abfrage.
<?php
IPSUtils_Include ("IPSLogger.inc.php", "IPSLibrary::app::core::IPSLogger");
$zustand = 16450;
$section = GetValueInteger(45924);
Switch ($section){
case 2:
SetValueInteger($zustand, 9); //öffnen
IPSLogger_Inf (__file__, "Garagentor fährt in Richtung auf");
break;
case 5:
SetValueInteger($zustand, 6); //schließen
IPSLogger_Inf (__file__, "Garagentor fährt in Richtung zu");
break;
}
PS: Der Plan wird ja laut Log ausgeführt aber es passiert halt nichts.
Teilweise, auch bei KNX, hilft es nichts, nur die Variable zu verändern - man muss da direkt auf die Instanz schreiben. Hast Du das schon mal versucht?