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 | Beschreibung |
---|---|
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: -1) Bei -1 verfügt das Element über eine Zielauswahl, ansonsten ist das Ziel mit dieser ID fest als Ziel gesetzt |
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 |
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']);
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'], $action['parameters']);