Dokumentation
Wochenplan
Der Wochenplan ist ein grafisches Werkzeug zur Konfiguration von wöchentlichen Abläufen.
In der Verwaltungskonsole erstellt man den Wochenplan, den Gruppentyp, die Aktionen und die Anbindungsart.
Innerhalb der Visualisierung "WebFront" und Wochenplankonfiguration können die Aktionen und somit Aktionswechsel definiert werden.
Gruppentypen
Hat 4 Optionen.
Typ | Beschreibung |
---|---|
Eine Gruppe: Gesamte Woche (Mo - So) | Alle Wochentage sind zu einer Gruppe zusammengefasst. |
Zwei Gruppen: Arbeitstage (Mo - Fr) und Wochenende (Sa + So) | Unterteilt die Woche in zwei Gruppen um somit die Tage Mo-Fr und Sa-So unabhängig voneinander konfigurieren zu können. |
Sieben Gruppen: Eine Gruppe pro Tag | Jeder Wochentag kann einzeln konfiguriert werden. |
Erweitert | Die Wochentage können in beliebig kombiniert werden. Jede Kombination wird in einer Gruppe zusammengefasst und konfiguriert werden. |
Aktionen
Der Wochenplan bietet Aktionen passend zum ausgewählten Ziel.
Es müssen mindestens zwei Wochenplanaktionen hinzugefügt werden.
Als Teil der Wochenplanaktion wird eine Aktion für das Ziel definiert.
Wochenplanaktion hinzufügen
Um eine Wochenplanaktion hinzuzufügen muss auf "Hinzufügen" geklickt werden.
Es kann der Wochenplanaktion ein Name, eine Farbe und eine Aktion zugewiesen werden.
Konfiguration der Wochenplanaktionen
Die Zeiträume von Aktionen können innerhalb der Verwaltungskonsole und WebFront konfiguriert werden.
Dabei gilt innerhalb der grafischen Darstellung:
Einfaches Klicken bearbeitet einen vorhanden Zustand.
Klicken & Ziehen erstellt einen neuen Zustand.
In der Verwaltungskonsole
Im WebFront
Nur bei einem Aktionswechsel wird die ausgewählte Aktion ausgeführt.
Wichtiger Hinweis:
Zuvor gesetzte Aktionen werden durch einen Aktionswechsel nicht aufgehoben.
D.h. Wenn man in einer Aktion das Licht eingeschaltet hat, wird bei einem Wechsel in die nächste Aktion nicht automatisch das Licht ausgeschaltet, außer man beschreibt dies explizit.
An Ablaufplan angebunden
Wird auf einem Ablaufplan die Aktion "Führe Automation aus" gewählt, so kann über die Aktion "Bei Wochenplanaktion" bei einer bestimmten Wochenplanaktion eine Reihe von Aktionen ausgeführt werden. Wird der erste Wochenplan einem Ablaufplan als Auslöser hinzugefügt, so werden die "Bei Wochenplanaktion"-Aktionen automatisch hinzugefügt.
Beispiel mit Ablaufplan
Dies ist ein Ablaufplanbeispiel, welches über einen Wochenplan ausgeführt wird.
An PHP-Skript angebunden
Wird auf einem PHP-Skript die Aktion "Führe Automation aus" gewählt, so steht die ID der Wochenplanaktion als Systemvariable $_IPS['ACTION'] zur Verfügung.
Beispiel mit Skript
Dies ist ein PHP-Skript-Beispiel, welches über einen Wochenplan ausgeführt wird.
//switch über die ID's der Aktionen switch ($_IPS['ACTION']) { case 1: //ID 1 SetValueBoolean(39540 /*[Testumgebung\Arbeitstag]*/, true); echo "Hallo Welt, Unter der Woche"; break; case 2: //ID 2 SetValueBoolean(39540 /*[Testumgebung\Arbeitstag]*/, false); echo "Hallo Welt, Yay Wochenende!!"; break; }
Tipp für Experten
Um herauszufinden, welche Wochenplanaktion momentan aktiv ist, kann dies über ein Skript abgefragt werden.
$e = IPS_GetEvent($id); $actionID = false; //Durch alle Gruppen gehen foreach($e['ScheduleGroups'] as $g) { //Überprüfen ob die Gruppe für heute zuständig ist if($g['Days'] & date("N") > 0) { //Aktuellen Schaltpunkt suchen. Wir nutzen die Eigenschaft, dass die Schaltpunkte immer aufsteigend sortiert sind. foreach($g['Points'] as $p) { if(date("H") * 3600 + date("i") * 60 + date("s") >= $p['Start']['Hour'] * 3600 + $p['Start']['Minute'] * 60 + $p['Start']['Second']) { $actionID = $p['ActionID']; } else { break; //Sobald wir drüber sind, können wir abbrechen. } } break; //Sobald wir unseren Tag gefunden haben, können wir die Schleife abbrechen. Jeder Tag darf nur in genau einer Gruppe sein. } } var_dump($actionID);