trigger
trigger | |
---|---|
Zweck / Funktion | |
Anstoßen einer notify Aktion | |
Allgemein | |
Typ | Befehl |
Details | |
Dokumentation | EN / DE |
Support (Forum) | Sonstiges |
Modulname | fhem.pl ("Built-in") |
Ersteller | rudolfkoenig (Forum / Wiki) |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
Der Befehl trigger stößt ein ein Event an, stellvertretend für ein Gerät. Damit ist es möglich Aktionen in Geräten auszulösen, z,B. DbLog, DOIF, FileLog und notify. Der Befehl kann direkt in dem Befehls-Eingabefeld des Webfrontends, zeitgesteuert in einem at oder DOIF, ereignisgesteuert in einem DOIF oder notify oder in einem Skript verwendet werden, um Events anzustoßen.
Voraussetzungen
Syntax
trigger <devspec> <event>
Details sind in der commandref (siehe Infobox) zu finden.
Beispiele
Einfaches Beispiel
Das folgende Beispiel ist diesem Forenthread entnommen:
define KellerLicht notify BueroOben1 set Keller1 $EVENT
kann angestoßen werden mit
trigger BueroOben1 on
odertrigger BueroOben1 off
Falsch wäre jedoch z.B.:
trigger KellerLicht on
nur ein bestimmtes Reading triggern
Manchmal möchte man nicht auf state prüfen (wie z.B. bei einem Dummy) sondern auf ein bestimmtes Reading. Hierfür lautet die Syntax
trigger <Device> <Reading>:<Value>
Also z.B.
trigger Stromzaehler power:1000
Eine komplexe Aktion auf verschieden Arten anstoßen
Annahme: es gibt eine notify-Definition, die (z.B. über Systembefehle) Bilder von einer Netzwerkkamera speichert. Soll das vom Benutzer über einen Button auf der Benutzeroberfläche angestoßen werden können, wird dafür sinnvollerweise ein dummy definiert, der ein entsprechendes Ereignis erzeugt. Zusätzlich kann aber auch eine at-Definition über den trigger-Befehl in regelmäßigen Abständen die gleiche Dummy-Definition ansprechen, was vom notify erkannt wird und ebenfalls dazu führt, das aktuelle Kamerabild zu sichern.
Links
- Forendiskussion mit dem Thema Verständnis für "trigger"