Hallo zusammen
Seit ich von IPS V5.5 auf V6.0 aktualisiert habe, stelle ich ein komisches Verhalten mit $_IPS[‚TRIGGER‘] fest. Ich sehe im Statusprotokoll mehrere solcher Warnings:
Result for Event 16938 Notice: Undefined index: TRIGGER in C:\ProgramData\Symcon\scripts\11644.ips.php on line 118
Auf der betreffenden Zeile steht folgender Befehl:
if($_IPS['TRIGGER'] == "OnChange")
Der Script wird auf Variablenänderung und aktualisierung getriggert, beide Fälle prüfe ich und reagiere im Script unterschiedlich darauf. Allerdings wird die Prüfung auf Variablenaktualisierung nicht reklamiert, sondern offenbar nur die Prüfung auf Variablenänderung.
Wie auch immer, ich habe das einmal weiter analysiert und mir bei Scriptausführung jeweils ins Log schreiben lassen, ob der Script auf Variablenaktualisierung oder Variablenänderung getriggert wird. Dazu habe ich folgende Zeilen aufgenommen:
//DEBUG-CODE
IPS_LogMessage("DEBUG Brandmelderscript", "Variablenzugriff via ".$_IPS['TRIGGER']." von Variable ".$_IPS['VARIABLE']);
echo("Check Log");
mit dem Resultat, dass im Statusprotokoll nun auch diese Zeile mit Notice: Undefined index: TRIGGER
beanstandet wird. Zusätzlich findet sich auch wie gewünscht dieses Zeile:
26.08.2021, 22:38:05 | DEBUG Brandmelderscript | Variablenzugriff via von Variable 14283
Das würde ja bedeuten, dass der Script weder durch Variablenänderung, noch durch Variablenaktualisierung aufgerufen wurde. Somit kann ich die Fehlermeldung ja noch verstehen, nur warum ist das erst seit V6.0 der Fall ? Weil es sind nur Events definiert, welche entweder auf Variablenänderungen oder Aktualisierungen den Script triggern. Ein manuelles Ausführen wird ebenfalls abgefangen.
Wurde am Verhalten von $_IPS['TRIGGER']
in V6.0 etwas verändert ?
Besten Dank für eure Hilfe.
Letraz