Automatisierungsskript

Die Automatisierungs-Scriptsprache basiert auf YAML und hat ein hierarchisches Schema. Die grundlegende Struktur sieht so aus:

metadata enthält den Namen der Automatisierung und eine Beschreibung
automations definiert die Logik der Automatisierung
starters definiert die Bedingungen, die den automatisierten Ablauf auslösen
condition definiert zusätzliche Bedingungen, die ausgewertet werden, um die Automatisierung zu starten
actions listet die erforderlichen Maßnahmen auf

Konventionen

Jedes Feld ist ein Schlüssel/Wert-Paar:

<key>: <value> # <comments>

Wobei:

  • <key> ist ein literales Keyword.

  • <value> kann Folgendes sein:

    • Ein einfacher Typ: bool, number, string, time usw.

    • Ein Struct-Typ: eine Sammlung von Feldern.

    • Ein Array des Datentyps. - string ist beispielsweise ein Array von Strings.

    • Ein Verweis auf einen Datenwert, der an anderer Stelle definiert ist. In device: $tv ist tv beispielsweise eine Variable, die auf Gerätedaten verweist.

  • <comments> werden für zusätzliche Informationen für den Autor verwendet. Die Skript-Engine ignoriert Kommentare. Sie haben keinen Einfluss auf die Ausführung des Skripts.