HTTP Request per RULE oder direkt per Item ?
- TorstenE
- Beiträge: 246
- Registriert: 12. Jan 2022 18:29
- Wohnort: Niederstaufen
Re: HTTP Request per RULE oder direkt per Item ?
Ja, aber WO trägst Du denn die URL ein ?
openHAB 5.0.0 (#4495) auf einem Pi 4 mit openHABian
- udo1toni
- Beiträge: 15247
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: HTTP Request per RULE oder direkt per Item ?
ACHTUNG! Das ist openHAB2 (oder auch openHAB1)
Wenn Du das unter openHAB3 machen willst, musst Du natürlich ein Thing und einen Channel anlegen und diesen Channel mit dem Item verlinken.
Wenn Du das unter openHAB3 machen willst, musst Du natürlich ein Thing und einen Channel anlegen und diesen Channel mit dem Item verlinken.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
- TorstenE
- Beiträge: 246
- Registriert: 12. Jan 2022 18:29
- Wohnort: Niederstaufen
Re: HTTP Request per RULE oder direkt per Item ?
Ohhh Udo, wenn wir Dich nicht hätten.
Ich dachte schon ich versteh die Welt nicht mehr - DANKE
Ich dachte schon ich versteh die Welt nicht mehr - DANKE
openHAB 5.0.0 (#4495) auf einem Pi 4 mit openHABian
- PeterA
- Beiträge: 1106
- Registriert: 8. Feb 2019 12:12
Re: HTTP Request per RULE oder direkt per Item ?
Ok Danke Udo....
daran hatte ich Natürlich auch nicht gedacht
daran hatte ich Natürlich auch nicht gedacht

- OpenHab 2.4
#PWRUP
#PWRUP
- TorstenE
- Beiträge: 246
- Registriert: 12. Jan 2022 18:29
- Wohnort: Niederstaufen
Re: HTTP Request per RULE oder direkt per Item ?
Und wie schaut dann der Channel für einen "ON/OFF" Switch mit entsprechender URL genau aus ?
openHAB 5.0.0 (#4495) auf einem Pi 4 mit openHABian
- TorstenE
- Beiträge: 246
- Registriert: 12. Jan 2022 18:29
- Wohnort: Niederstaufen
Re: HTTP Request per RULE oder direkt per Item ?
Ich habe folgende Situation bei der REST-API
bringt mit den Wert "true" oder "false" per JSON
Die Befehle zum setzen der Werte sind jedoch
Wie definiere ich jetzt den Switch-Channel, dass er "isInScreensave" in ON/OFF umwandelt
und danach die Befehle ON/OFF in startScreensave/stopScreensaver
Danke
Torsten
Code: Alles auswählen
JSONPATH:$.isInScreensaver
Die Befehle zum setzen der Werte sind jedoch
Code: Alles auswählen
cmd=startScreensaver
cmd=stopScreensaver
und danach die Befehle ON/OFF in startScreensave/stopScreensaver
Danke
Torsten
openHAB 5.0.0 (#4495) auf einem Pi 4 mit openHABian
- udo1toni
- Beiträge: 15247
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: HTTP Request per RULE oder direkt per Item ?
Also, ON/OFF ist ja was anderes als das, was hier im Thread behandelt wurde. Grundsätzlich sieht ein http Thing mit einem switch Channel so aus (Definition in einer *.things Datei):
Dabei sind alle Parameter optional. Wenn man allerdings einen Befehl erfolgreich senden will, muss in der commandExtension der Platzhalter %2$s gesetzt sein, sonst wird kein Wert für ON oder OFF gesendet. Falls onValue und/oder offValue nicht gesetzt sind, wird exakt ON bzw. OFF gesendet. stateExtension und commandExtension müssen lediglich dem Teil der URL entsprechen, der sich jeweils unterscheidet. baseURL ist dann der Teil, der für beide URLs gleich ist.
Die stateTransformation ist nur dann notwendig, wenn nicht direkt onValue/offValue (oder ohne deren Definition ON/OFF) zurück kommen. Je nachdem, was als Status kommt, muss/müssen der/die passende(n) Service(s) gewählt werden.
Im Beispiel oben wird jeweils direkt ein String geschickt, dazu bräuchte man natürlich einen string Channel:
und das Item sähe so aus (wieder im textdatei.items Format):
Code: Alles auswählen
Thing http:url:thingid "Thing Label" [
baseURL="http://ip.des.fernen.systems/gemeinsamer/pfad/",
refresh=10,
timeout=8000
] { Channels:
Type switch : switch1 "Schalter" [
stateExtension="statuspfad",
commandExtension="commandpfad?befehl=%2$s",
stateTransformation="...",
onValue="ein",
offValue="aus"
]
}
Die stateTransformation ist nur dann notwendig, wenn nicht direkt onValue/offValue (oder ohne deren Definition ON/OFF) zurück kommen. Je nachdem, was als Status kommt, muss/müssen der/die passende(n) Service(s) gewählt werden.
Im Beispiel oben wird jeweils direkt ein String geschickt, dazu bräuchte man natürlich einen string Channel:
Code: Alles auswählen
Thing http:url:coolstream "CoolStream" [
baseURL="http://192.168.2.116/control/",
refresh=10,
timeout=8000,
commandMethod="POST"
] {
Channels:
Type string : command "Kommando" [ commandExtension="rcem?%2$s" ]
}
Code: Alles auswählen
String Coolstream {channel="http:url:coolstream:command"}
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
- TorstenE
- Beiträge: 246
- Registriert: 12. Jan 2022 18:29
- Wohnort: Niederstaufen
Re: HTTP Request per RULE oder direkt per Item ?
Danke für die Hife Udo.
Hier hören wir auf, da sich sonst die Themen überschneiden.
Grüße
Torsten
Hier hören wir auf, da sich sonst die Themen überschneiden.
Grüße
Torsten
openHAB 5.0.0 (#4495) auf einem Pi 4 mit openHABian