Dokumentation
SelectAction
Benötigt: IP-Symcon >= 6.0
Erstellt eine Eingabe für eine Aktion .
Falls im "elements"-Bereich erstellt, wird bei Übernahme die Eigenschaft name auf ein JSON-codiertes Objekt gesetzt, welches folgende Parameter enthält:
Parameter | Beschreibung |
---|---|
actionID | ID der Aktion |
parameters | Parameter der Aktion |
Parameter
Parameter | Beschreibung |
---|---|
caption (optional) | (default:: "") Sichtbare Beschriftung (ab IP-Symcon 7.1) |
enabled (optional) | (default: true) Bei true kann die Auswahl verwendet werden, ansonsten wird sie deaktiviert dargestellt |
environment (optional) | (default: "Default") Legt die Umgebung der Aktionsauswahl fest, hierüber kann bestimmt werden, welche Arten von Aktionen zur Auswahl stehen, siehe auch Aktionen |
highestPriorityOnly (optional) | (default: false) Bei false verfügt das Element eine Auswahl über alle passenden Aktionen, ansonsten wird ohne Auswahl automatisch die Aktion mit der höchsten Priorität ausgewählt |
includeDefaultEnvironment (optional) | (default: true) Bei false werden nur Aktionen zur Auswahl angeboten, welche die Umgebung environment unterstützen, bei true werden zusätzlich alle Aktionen der Umgebung "Default" angeboten |
name (optional) | Name der Auswahl/der zu setzenden Eigenschaft |
targetID (optional) | (default: -2) Bei -2 verfügt das Element über eine Zielauswahl, ansonsten ist das Ziel mit dieser ID fest als Ziel gesetzt, wobei -1 für allgemeine Aktionen steht |
type | SelectAction |
value (optional) | (default: keine Aktion ausgewählt) Der Wert der Auswahl - Sofern es eine dazugehörige Eigenschaft gibt, wird dieser Parameter im elements-Bereich durch die Eigenschaft überschrieben |
visible (optional) | (default: true) Bei true ist die Auswahl sichtbar, ansonsten ist sie unsichtbar |
width (optional) | (default: 300px) Feste Breite des Eingabefeldes in Pixel oder % als String, z.B. "40%" oder "250px" |
saveTarget (optional) | (default: true) Bei true wird das Ziel als TARGET als Teil der parameters gespeichert |
saveEnvironment (optional) | (default: true) Bei true wird die Umgebung als ENVIRONMENT als Teil der parameters gespeichert |
saveParent (optional) | (default: true) Bei true wird die InstanzID als PARENT als Teil der parameters gespeichert |
Beispiel 1: Ziel, Umgebung und InstanzID werden konstant als Teil der Eigenschaft gespeichert
Standardmäßig werden alle benötigten Parameter als Rückgabe von SelectAction abgespeichert. Dadurch kann die Aktion am einfachsten ausgeführt werden.
{ "type": "SelectAction", "name": "PropertyAction", "targetID": 12345 } // PHP-Code im Modul $action = json_decode($this->ReadPropertyString('PropertyAction'), true); IPS_RunAction($action['actionID'], $action['parameters']);
Beispiel 2: Ziel, Umgebung und InstanzID werden dynamisch gesetzt
Speichert man die Zusatzparameter nicht als Rückgabe ab, so müssen diese manuell hinzugefügt werden. Hierdurch können beispielsweise Aktionen zwischen Instanzen ausgetauscht werden und es werden keine redundanten Daten abgespeichert.
{ "type": "SelectAction", "name": "PropertyAction", "targetID": 12345, "saveTarget": false, "saveEnvironment": false, "saveParent": false } // PHP-Code im Modul $action = json_decode($this->ReadPropertyString('PropertyAction'), true); $parameters = $action['parameters']; $parameters['TARGET'] = 12345; $parameters['ENVIRONMENT'] = 'Default'; $parameters['PARENT'] = $this->InstanceID; IPS_RunAction($action['actionID'], $parameters);