Per Schalter URL aufrufen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
toto1975
Beiträge: 49
Registriert: 8. Jan 2016 10:47
Answers: 1

Per Schalter URL aufrufen

Beitrag von toto1975 »

Hallo in die Runde,

ich möchte per Schalter ein URL aufrufen z.B.

Schalter geändert von OFF auf On dann http://localhost:8090/command/switchDet ... =2&on=true
Schalter geändert von ON auf OFF dann http://localhost:8090/command/switchDet ... 2&on=false

Wie setze ich das am besten um? Es ist bestimmt total einfach nur ich denke zu kompliziert...

Danke schon jetzt für eure Hilfe

Viele Grüße
Torsten
von nw378 » 12. Jan 2025 16:05
Da könntest Du z.B, mit executeCommandLine arbeiten:

Code: Alles auswählen

executeCommandLine("curl","http://localhost:8090/command/switchDet ... =2&on=true")
oder mit dem Exec-Binding. Dann ein Thing anlegen:

Code: Alles auswählen

Thing exec:command:Schalter_ON [command="curl http://localhost:8090/command/switchDet ... =2&on=true"]
und einen entsprechenden Schalter

Code: Alles auswählen

Switch Schalter_an       {channel="exec:command:Schalter_ON", autoupdate="false"}
und diesen dann mit

Code: Alles auswählen

Schalter_an.sendCommand(ON)
befeuern.

Hierfür muss der Befehl "curl http.....=true" in der o.g. exakten Schreibweise noch in die Datei misc/exec.whitelist aufgenommen werden.
Gehe zur vollständigen Antwort

nw378
Beiträge: 264
Registriert: 22. Sep 2018 10:38
Answers: 5

Re: Per Schalter URL aufrufen

Beitrag von nw378 »

Da könntest Du z.B, mit executeCommandLine arbeiten:

Code: Alles auswählen

executeCommandLine("curl","http://localhost:8090/command/switchDet ... =2&on=true")
oder mit dem Exec-Binding. Dann ein Thing anlegen:

Code: Alles auswählen

Thing exec:command:Schalter_ON [command="curl http://localhost:8090/command/switchDet ... =2&on=true"]
und einen entsprechenden Schalter

Code: Alles auswählen

Switch Schalter_an       {channel="exec:command:Schalter_ON", autoupdate="false"}
und diesen dann mit

Code: Alles auswählen

Schalter_an.sendCommand(ON)
befeuern.

Hierfür muss der Befehl "curl http.....=true" in der o.g. exakten Schreibweise noch in die Datei misc/exec.whitelist aufgenommen werden.
openHAB 4.3.1 @ RPi 4 / SSD - InfluxDB2 und Grafana @ Synology Docker - KNX

mad-mike
Beiträge: 468
Registriert: 6. Jan 2021 18:05
Answers: 3

Re: Per Schalter URL aufrufen

Beitrag von mad-mike »

Moin,

Ich würde als Laie das HTTP Binding mit verknüpfen.

Code: Alles auswählen

UID: http:url:0de4fe720f
label: HTTP URL Thing
thingTypeUID: http:url
configuration:
  authMode: BASIC
  ignoreSSLErrors: true
  baseURL: http://localhost:8090/command/switchDetector?oid=alle&ot=2&on=
  delay: 0
  stateMethod: GET
  refresh: 30
  commandMethod: GET
  timeout: 3000
  bufferSize: 2048
channels:
  - id: km1
    channelTypeUID: http:switch
    label: Switch
    description: ""
    configuration:
      onValue: true
      offValue: false
      commandExtension: "%2$s"

Dann Item als Schalter erstellen und verknüpfen.


:idea:
Gruss mad-mike

openHABian 4.3.2 auf Raspberry Pi 4 Mod. b (8GB) ;)

toto1975
Beiträge: 49
Registriert: 8. Jan 2016 10:47
Answers: 1

Re: Per Schalter URL aufrufen

Beitrag von toto1975 »

Hallo,

vielen Dank für die schnellen Antworten. Ich habe mich für
executeCommandLine("curl","http://localhost:8090/command/switchDet ... =2&on=true")
entschieden und es funktioniert wie gewünscht.

Vielen lieben Dank

Gruß
Torsten

Antworten