Automatisierung
Mit dem automation
-Modul können einfache Regeln ausgeführt werden. Eine Regel besteht aus einer auszuführenden Aktion, sowie aus einer Bedingung, die zutreffen muss, damit die Aktion ausgeführt wird.
automation/state
Der Zustand der Automatisierung. Gibt an, welche Bedingungen und Aktionen von dieser Firmware unterstützt werden und welche der unterstützten Bedingungen und Aktionen im Moment ausgeführt werden können. Je nach Konfiguration können bestimmte Bedingungen und Aktionen nicht ausgeführt werden, beispielsweise kann nicht auf MQTT-Nachrichten reagiert werden, wenn keine MQTT-Verbindung konfiguriert ist.
{
"registered_triggers": [1, 2, 3, 5, 6, 9, 10, 11, 18],
"registered_actions": [1, 2, 3, 4, 5, 6, 7, 8],
"enabled_triggers": [1, 2, 6, 11, 18, 10, 5],
"enabled_actions": [1, 3, 4, 5, 6, 8, 7]
}
Name | Bedeutung |
---|---|
registered_triggers int[19] | Dieser Firmware bekannte Bedingungen (Union-Tags des Triggers einer Regel aus
|
registered_actions int[16] | Dieser Firmware bekannte Aktionen (Union-Tags der Aktion einer Regel aus
|
enabled_triggers int[19] | Aktuell ausführbare Bedingungen (Union-Tags des Triggers einer Regel aus
|
enabled_actions int[16] | Aktuell ausführbare Aktionen (Union-Tags der Aktion einer Regel aus
|
automation/config
Die Konfiguration der Automatisierung.
# $HOST z.B. warp-AbCd
Lesen
curl http://$HOST/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
curl http://$HOST/automation/config -d '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
curl http://$HOST/automation/config -d '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp/AbCd
Lesen
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
Mit MQTT auf $PREFIX/automation/config_update
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
Name | Bedeutung | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tasks object[14] | Konfigurierte Regeln
|
automation/state
Der Zustand der Automatisierung. Gibt an, welche Bedingungen und Aktionen von dieser Firmware unterstützt werden und welche der unterstützten Bedingungen und Aktionen im Moment ausgeführt werden können. Je nach Konfiguration können bestimmte Bedingungen und Aktionen nicht ausgeführt werden, beispielsweise kann nicht auf MQTT-Nachrichten reagiert werden, wenn keine MQTT-Verbindung konfiguriert ist.
{
"registered_triggers": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 16, 17, 18],
"registered_actions": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14],
"enabled_triggers": [1, 2, 4, 6, 7, 8, 11, 18, 10, 5],
"enabled_actions": [1, 3, 4, 5, 6, 8, 9, 7]
}
Name | Bedeutung |
---|---|
registered_triggers int[19] | Dieser Firmware bekannte Bedingungen (Union-Tags des Triggers einer Regel aus
|
registered_actions int[16] | Dieser Firmware bekannte Aktionen (Union-Tags der Aktion einer Regel aus
|
enabled_triggers int[19] | Aktuell ausführbare Bedingungen (Union-Tags des Triggers einer Regel aus
|
enabled_actions int[16] | Aktuell ausführbare Aktionen (Union-Tags der Aktion einer Regel aus
|
automation/config
Die Konfiguration der Automatisierung.
# $HOST z.B. warp2-AbCd
Lesen
curl http://$HOST/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
curl http://$HOST/automation/config -d '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
curl http://$HOST/automation/config -d '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp2/AbCd
Lesen
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
Mit MQTT auf $PREFIX/automation/config_update
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
Name | Bedeutung | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tasks object[14] | Konfigurierte Regeln
|
automation/state
Der Zustand der Automatisierung. Gibt an, welche Bedingungen und Aktionen von dieser Firmware unterstützt werden und welche der unterstützten Bedingungen und Aktionen im Moment ausgeführt werden können. Je nach Konfiguration können bestimmte Bedingungen und Aktionen nicht ausgeführt werden, beispielsweise kann nicht auf MQTT-Nachrichten reagiert werden, wenn keine MQTT-Verbindung konfiguriert ist.
{
"registered_triggers": [1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 16, 17, 18],
"registered_actions": [1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 14],
"enabled_triggers": [1, 2, 4, 6, 7, 11, 18, 3, 10, 5],
"enabled_actions": [1, 3, 4, 5, 6, 8, 2, 7]
}
Name | Bedeutung |
---|---|
registered_triggers int[19] | Dieser Firmware bekannte Bedingungen (Union-Tags des Triggers einer Regel aus
|
registered_actions int[16] | Dieser Firmware bekannte Aktionen (Union-Tags der Aktion einer Regel aus
|
enabled_triggers int[19] | Aktuell ausführbare Bedingungen (Union-Tags des Triggers einer Regel aus
|
enabled_actions int[16] | Aktuell ausführbare Aktionen (Union-Tags der Aktion einer Regel aus
|
automation/config
Die Konfiguration der Automatisierung.
# $HOST z.B. warp3-AbCd
Lesen
curl http://$HOST/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
curl http://$HOST/automation/config -d '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
curl http://$HOST/automation/config -d '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp3/AbCd
Lesen
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
Mit MQTT auf $PREFIX/automation/config_update
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
Name | Bedeutung | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tasks object[14] | Konfigurierte Regeln
|
automation/state
Der Zustand der Automatisierung. Gibt an, welche Bedingungen und Aktionen von dieser Firmware unterstützt werden und welche der unterstützten Bedingungen und Aktionen im Moment ausgeführt werden können. Je nach Konfiguration können bestimmte Bedingungen und Aktionen nicht ausgeführt werden, beispielsweise kann nicht auf MQTT-Nachrichten reagiert werden, wenn keine MQTT-Verbindung konfiguriert ist.
{
"registered_triggers": [1, 3, 12, 13, 14, 15, 16, 17, 18],
"registered_actions": [1, 2, 5, 11, 12, 13, 14, 15],
"enabled_triggers": [1, 12, 13, 14, 15, 18, 3, 16, 17],
"enabled_actions": [1, 5, 13, 15, 2, 12, 14]
}
Name | Bedeutung |
---|---|
registered_triggers int[19] | Dieser Firmware bekannte Bedingungen (Union-Tags des Triggers einer Regel aus
|
registered_actions int[16] | Dieser Firmware bekannte Aktionen (Union-Tags der Aktion einer Regel aus
|
enabled_triggers int[19] | Aktuell ausführbare Bedingungen (Union-Tags des Triggers einer Regel aus
|
enabled_actions int[16] | Aktuell ausführbare Aktionen (Union-Tags der Aktion einer Regel aus
|
automation/config
Die Konfiguration der Automatisierung.
# $HOST z.B. wem-AbCd
Lesen
curl http://$HOST/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
curl http://$HOST/automation/config -d '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
curl http://$HOST/automation/config -d '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. wem/AbCd
Lesen
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
Mit MQTT auf $PREFIX/automation/config_update
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
Name | Bedeutung | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tasks object[14] | Konfigurierte Regeln
|
automation/state
Der Zustand der Automatisierung. Gibt an, welche Bedingungen und Aktionen von dieser Firmware unterstützt werden und welche der unterstützten Bedingungen und Aktionen im Moment ausgeführt werden können. Je nach Konfiguration können bestimmte Bedingungen und Aktionen nicht ausgeführt werden, beispielsweise kann nicht auf MQTT-Nachrichten reagiert werden, wenn keine MQTT-Verbindung konfiguriert ist.
{
"registered_triggers": [1, 2, 3, 5, 6, 9, 10, 11, 18],
"registered_actions": [1, 2, 3, 4, 5, 6, 7, 8],
"enabled_triggers": [1, 2, 6, 11, 18, 10, 5],
"enabled_actions": [1, 3, 4, 5, 6, 8, 7]
}
Name | Bedeutung |
---|---|
registered_triggers int[19] | Dieser Firmware bekannte Bedingungen (Union-Tags des Triggers einer Regel aus
|
registered_actions int[16] | Dieser Firmware bekannte Aktionen (Union-Tags der Aktion einer Regel aus
|
enabled_triggers int[19] | Aktuell ausführbare Bedingungen (Union-Tags des Triggers einer Regel aus
|
enabled_actions int[16] | Aktuell ausführbare Aktionen (Union-Tags der Aktion einer Regel aus
|
automation/config
Die Konfiguration der Automatisierung.
# $HOST z.B. warp-AbCd
Lesen
curl http://$HOST/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
curl http://$HOST/automation/config -d '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
curl http://$HOST/automation/config -d '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp/AbCd
Lesen
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/automation/config
{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}
Konfiguriere zwei Aufgaben:
- (Trigger 1) Am Wochenende (wday 9), 10 Minuten (minute 10) nach jeder vollen Stunde,
(Action 1) zeigeHallo Welt!
im Ereignis-Log an. - (Trigger 18) Wenn eine HTTP-GET-, POST- oder PUT-Anfrage (method 4) mit dem Inhalt "open" an URL
http://$HOST/automation_trigger/garage_door
empfangen wird,
(Action 2) sende MQTT-Nachricht1
an Topicdoor/control
.
Schreiben
Mit MQTT auf $PREFIX/automation/config_update
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '{
"tasks": [
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]
}'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/automation/config_update -m '[
{
"trigger": [1, { "mday": -1, "wday": 9, "hour": -1, "minute": 10 }],
"action": [1, { "message": "Hallo Welt!" }]
},
{
"trigger": [
18,
{ "method": 4, "url_suffix": "garage_door", "payload": "open" }
],
"action": [
2,
{
"topic": "door/control",
"payload": "1",
"retain": false,
"use_prefix": false
}
]
}
]'
Name | Bedeutung | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tasks object[14] | Konfigurierte Regeln
|