Kurzbefehle Automatisation iOS 13 und CCU3

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

Karoshi85
Beiträge: 43
Registriert: 19.06.2014, 21:02

Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von Karoshi85 » 25.09.2019, 16:15

Hallo zusammen, seit iOS 13.1 gibt es ja die Automatisation unter iOS (Kurzbefehle). Folgendes Problem:

EIn http Get auf die CCU (zum Beispiel Program.Execute oder Kanalaktion) funktioniert bestens bei manueller Ausführung.
Kaum macht man das aber übere eine Automatisation (z.B. NFC) rennt das iPhone in einen Session Timeout.

Hat jemand eine Idee??

Aufruf per "URL Inhalt laden" als Post:

Code: Alles auswählen

http://192.168.178.123:1234/ text.exe?ergebnis=dom.GetObject("BisCos-RF.KEQ12345678:1.OPEN").State(1)
Leerzeichen nach dem / bitte ignorieren. IP, Port und Gerät stimmen. Habe das Gefühl, dass es was mit der URL Kodierung zu tun hat. Aber ein %22 statt " zu nehmen hilft auch nicht.
Zuletzt geändert von Karoshi85 am 25.09.2019, 16:58, insgesamt 1-mal geändert.

Benutzeravatar
jmaus
Beiträge: 9819
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 459 Mal
Danksagung erhalten: 1856 Mal
Kontaktdaten:

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von jmaus » 25.09.2019, 16:51

Das wird nicht nur an der URL Kodierung scheitern, sondern auch daran das man zumindest seit der Firmware 3.47.15 zwingend eine sessionID in der URL mitgeben muss wenn man solche /*.exe aufrufe zum übersenden von ReGa-Skriptcode senden will. D.h. man muss sich vorher aktiv eingeloggt haben, dann die sessionID aus dem Response-Header ausgelesen und dann in der exe URL mit "?sid=@XXXXX@" mit reincodiert haben damit das auch funktioniert. Ansonsten werden solche Rega-Skript aufrufe via http als nicht authentifiziert verweigert.
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von jp112sdl » 25.09.2019, 16:57

Hi, hab gerade mal einen Kurzbefehl angelegt.

Als Befehl habe ich "Web" genommen und darin dann "Inhalte von URL abrufen".

Als URL habe ich hinterlegt:

Code: Alles auswählen

http://192.168.1.252:8181/ret.exe?ret=dom.GetObject(%22BidCos-RF.HBSw1PBU02:1.STATE%22).State(1)
-> Licht schaltet beim Ausführen der Aktion durch Antippen der Kachel das Licht an.

Zentrale ist RaspberryMatic 3.47.18.20190918

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Karoshi85
Beiträge: 43
Registriert: 19.06.2014, 21:02

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von Karoshi85 » 25.09.2019, 16:58

hmmmm das klingt plausibel. Danke dir!!

Gibt es dafür eine halbwegs brauchbare Anleitung bzw. Doku?

Karoshi85
Beiträge: 43
Registriert: 19.06.2014, 21:02

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von Karoshi85 » 25.09.2019, 16:59

jp112sdl hat geschrieben:
25.09.2019, 16:57
Hi, hab gerade mal einen Kurzbefehl angelegt.

Als Befehl habe ich "Web" genommen und darin dann "Inhalte von URL abrufen".

Als URL habe ich hinterlegt:

Code: Alles auswählen

http://192.168.1.252:8181/ret.exe?ret=dom.GetObject(%22BidCos-RF.HBSw1PBU02:1.STATE%22).State(1)
-> Licht schaltet beim Ausführen der Aktion durch Antippen der Kachel das Licht an.

Zentrale ist RaspberryMatic 3.47.18.20190918
Manuell geht es ja auch, vermutlich weil er da die gespeicherte Session aus Safari nimmt aber automatisch per NFC nicht. Anscheinend braucht er da eine eigene Session für.

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von jp112sdl » 25.09.2019, 17:00

Karoshi85 hat geschrieben:
25.09.2019, 16:59
Anscheinend braucht er da eine eigene Session für.
Nö. Geht mit curl per SSH genau so gut

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von jp112sdl » 25.09.2019, 17:01

Karoshi85 hat geschrieben:
25.09.2019, 16:58
Gibt es dafür eine halbwegs brauchbare Anleitung bzw. Doku?
Nicht dass ich wüsste... hab das nur rein intuitiv so angelegt.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Karoshi85
Beiträge: 43
Registriert: 19.06.2014, 21:02

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von Karoshi85 » 25.09.2019, 17:11

jp112sdl hat geschrieben:
25.09.2019, 17:00
Karoshi85 hat geschrieben:
25.09.2019, 16:59
Anscheinend braucht er da eine eigene Session für.
Nö. Geht mit curl per SSH genau so gut
DU meinst mit curl per SSH einloggen und Befehl darüber ausführen?
Kann iOS13 curl per Kurzbefehl? Hast du da etwas, was man nachbauen könnte?

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von jp112sdl » 25.09.2019, 17:14

Karoshi85 hat geschrieben:
25.09.2019, 17:11
jp112sdl hat geschrieben:
25.09.2019, 17:00
Karoshi85 hat geschrieben:
25.09.2019, 16:59
Anscheinend braucht er da eine eigene Session für.
Nö. Geht mit curl per SSH genau so gut
DU meinst mit curl per SSH einloggen und Befehl darüber ausführen?
Kann iOS13 curl per Kurzbefehl? Hast du da etwas, was man nachbauen könnte?
Nein, ich wollte damit sagen, dass ein unauthentifizierter Aufruf von einer Shell aus auch funktioniert und nicht erst irgendeine SessionID benötigt wirdd

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

tomi_cc16
Beiträge: 1150
Registriert: 30.11.2013, 16:35
Wohnort: Mordor
Hat sich bedankt: 23 Mal
Danksagung erhalten: 56 Mal

Re: Kurzbefehle Automatisation iOS 13 und CCU3

Beitrag von tomi_cc16 » 25.09.2019, 17:53

jmaus hat geschrieben:
25.09.2019, 16:51
Das wird nicht nur an der URL Kodierung scheitern, sondern auch daran das man zumindest seit der Firmware 3.47.15 zwingend eine sessionID in der URL mitgeben muss wenn man solche /*.exe aufrufe zum übersenden von ReGa-Skriptcode senden will. D.h. man muss sich vorher aktiv eingeloggt haben, dann die sessionID aus dem Response-Header ausgelesen und dann in der exe URL mit "?sid=@XXXXX@" mit reincodiert haben damit das auch funktioniert. Ansonsten werden solche Rega-Skript aufrufe via http als nicht authentifiziert verweigert.
Heute kann ich einen Aktor über eine URL im Webbrowser einschalten z.B.

Code: Alles auswählen

http://Meine.IP:8181/system.exe?sagt=datapoints.Get("BidCos-RF.xxxxxxxxxx:1.STATE").State(true)
Verstehe ich richtig das wenn ich auf die Firmware höher 3.47.15 bzw. RaspberryMatic 3.47.15.20190831 update das in Zukunft nicht mehr geht?
Kann ich die Überprüfung der Session ID in meiner URL in der Zentrale abschalten um URL weiter nutzen zu können?

Antworten

Zurück zu „HomeMatic allgemein“