Logiken
Zur Konfiguration einer Logik wird in der Datei ../etc/logic.yaml ein Abschnitt für die Logik angelegt. Unter dem Namen dieses Abschnitts wird die Logik an anderen Stellen referenziert.
In diesem Abschnitt muss SmartHomeNG mitgeteilt werden, welche Code Datei ausgeführt werden soll und unter welchen Umständen. Dazu werden die im Folgenden beschriebenen Parameter genutzt.
Standardparameter
Die folgenden Parameter können für eine Logik in der Konfigurationsdatei im Verzeichnis ../etc angegeben werden.
Parameter |
Beschreibung |
---|---|
filename |
Dateiname des Logik-Codes. Diese Datei muss im Verzeichnis ../logics liegen. Dieser Parameter muss angegeben werden. |
logic_groupname |
Optional: Logiken können mit diesem Parameter einer oder mehreren Gruppen zugeordnet werden. Sobald mindestens eine Logik einer Gruppe zugeordnet wurde, wird die Liste der Logiken in der Admin GUI gruppiert dargestellt. |
watch_item |
Optional: String oder Liste von Strings, die jeweils einen Item-Pfad repräsentieren. Eine Veränderung eines der hier aufgeführten Items führt dazu, dass die Logik ausgeführt wird. Details dazu stehen hier . |
crontab |
Optional: String oder Liste von Strings, die einen crontab Eintrag darstellen. Der Syntax des Parameters entspricht dem Syntax des crontab Attributes von Items. Details dazu stehen hier . |
cycle |
Optional: Angabe einer Zykluszeit, die angibt, in welchem Zeitabstand die Logik periodisch ausgelöst werden soll. Der Syntax des Parameters entspricht dem Syntax des cycle Attributes von Items. Details dazu stehen hier . |
prio |
Optional: Angabe einer Priorität für die Logik. Die Priorität kommt nur bei Logiken zum Einsatz, die ein Schedule haben, bei denen also der Paramter crontab oder cycle angegeben wurde. Die Priorität sollte zwischen 1 und 5 liegen. Falls der Parameter nicht angegeben wird, wird die Standardpriorität 3 verwendet. |
visu_acl |
Optional: Dieser Parameter wird durch das Plugin visu_websocket implementiert. Wenn dieser Parameter auf True gesetzt wird, kann die Logik von einer Visualisierung aus (z.B. smartVISU) ausgelöst werden. |
enabled |
Optional: |
<user_parameter> |
Optional: Es können weitere Parameter definiert werden, diese können aus der Logik heraus abgefragt werden und haben sonst keine Funktion. |
Falls keiner der optionalen Parameter crontab, watch_item oder cycle angegeben wird, wird die Logik nicht automatisiert ausgeführt. Sie kann dann nur aus Plugins oder (falls konfiguriert) über eine Visualisierung ausgelöst werden.
Weitere Informationen und Details zur Erstellung von Logiken finden sich unter Referenz/Logiken und unter Entwicklung/Logiken.