Dokumentation
IPS_SetEventScheduleAction
Benötigt: Symcon >= 3.2
bool IPS_SetEventScheduleAction (int $EreignisID, int $WochenplanAktionsID, string $Name, int $Farbe, string $Skriptinhalt)
Parameterliste
| EreignisID | ID des zu verändernden Ereignisses |
| WochenplanAktionsID | Eindeutige ID für diese Wochenplanaktion. Die Sortierung wird anhand der ID vorgenommen. IDs müssen nur für dieses Ereignis eindeutig sein. Muss größer als 0 sein. |
| Name | Name zur angegebenen Wochenplanaktion |
| Farbe | Farbwert im HTML Farbcode (z.B. 0x0000FF für Blau) |
| Skriptinhalt | PHP Skript ohne PHP Tags (<? … ?>) |
Rückgabewert
Konnte die Funktion erfolgreich ausgeführt werden, liefert sie als Ergebnis TRUE, andernfalls FALSE.
Beschreibung
Die Funktion setzt den Namen, die Farbe und auszuführende Aktion auf "Führe PHP Code aus" mit dem Code Skriptinhalt für die Wochenplanaktion mit der ID WochenplanAktionsID eines Wochenplan Ereignisses mit der ID EreignisID. Die Systemvariable $_IPS['ACTION'] wird definiert. Es stehen für die Skriptinhalte die Systemvariablen zur Verfügung.
Wenn der Name leer ist, wird die Wochenplanaktion mit der angegebenen WochenplanAktionsID gelöscht. Dies ist jedoch nur möglich, wenn kein Schaltpunkt mehr auf diese WochenplanAktionsID verweist.
Die WochenplanAktionsID muss größer als 0 sein, andernfalls wird ein Fehler ausgelöst. Die ID 0 steht in IPS_GetEvent bei LastActionID/NextActionID für "keine Aktion". Bestehende Wochenplanaktionen mit einer ID kleiner oder gleich 0 aus älteren Installationen können weiterhin gelöscht werden, um sie anschließend mit einer ID ab 1 neu anzulegen.
Beispiel
//Anlegen von Aktionen
IPS_SetEventScheduleAction($EreignisID, 1, "Warm", 0xFF0000, "FHT_SetTemperature(\$_IPS['TARGET'], 22.5);");
IPS_SetEventScheduleAction($EreignisID, 2, "Kalt", 0x0000FF, "FHT_SetTemperature(\$_IPS['TARGET'], 17);");
IPS_SetEventScheduleAction($EreignisID, 3, "Öko", 0x00FF00, "FHT_SetTemperature(\$_IPS['TARGET'], 20);");
//Aktion mit ID 3 wieder löschen
IPS_SetEventScheduleAction($EreignisID, 3, "", 0, "");