Was können wir verbessern?

Dokumentation

IPS_SetEventConditionTimeRule

Benötigt: IP-Symcon >= 4.4

boolean IPS_SetEventConditionTimeRule (integer $EreignisID, integer $BedingungsID, integer $RegelID, integer $Vergleich, integer $Stunde, integer $Minute, integer $Sekunde)

Parameterliste

EreignisID ID des zu verändernden Ereignisses
BedingungsID ID der Bedingung, welche die Regel beinhaltet
RegelID Eindeutige ID für diese Regel. IDs müssen nur für dieses Bedingung eindeutig sein.
Vergleich
Wert Beschreibung
0 ==
1 !=
2 >
3 >=
4 <
5 <=
Stunde Stundenwert (0..23) mit dem die aktuelle Zeit verglichen wird
Minute Minutenwert (0..59) mit dem die aktuelle Zeit verglichen wird
Sekunde Sekundenwert (0..59) mit dem die aktuelle Zeit verglichen wird

Rückgabewerte

Konnte der Befehl erfolgreich ausgeführt werden, liefert er als Ergebnis TRUE, andernfalls FALSE.

Beschreibung

Diese Funktion modifiziert die Regel mit der ID RegelID der Bedingung mit der ID BedingungsID des Ereignisses mit der ID EreignisID. Die Regel vergleicht die aktuelle Uhrzeit mit den Stunden, Minuten und Sekunden, entsprechend der Vergleichsoperation Vergleich. Falls keine Regel mit der ID RegelID existiert, wird eine erstellt.

Ist einer der Werte Stunde, Minute oder Sekunde < 0 , wird die Regel mit der ID RegelID gelöscht.

Welche RegelID welche Regel beinhaltet kann via IPS_GetEvent nachgesehen werden.

Beispiel

// Erstelle eine Wurzelbedingung
IPS_SetEventCondition(12345, 0, 0, 0);
 
// Fügt hinzu/Modifiziert die Regel mit der ID 2 beim Ereignis mit der ObjektID 12345
// Es muss genau 22:30 sein damit diese Regel erfüllt ist.
IPS_SetEventConditionTimeRule(12345, 0, 2, 1, 22, 30, 0);
 
// Lösche die Regel mit der ID 1
IPS_SetEventConditionTimeRule(12345, 0, 1, 0, -1, 0, 0);
Haben Sie noch Fragen?