ise_id welche für Keymatic und welchen State zum Öffnen?

Nutzung von XML RPC, Remote Script, JSON RPC, XMLAPI

Moderator: Co-Administratoren

Antworten
Stryker1
Beiträge: 33
Registriert: 23.08.2017, 10:57
Hat sich bedankt: 1 Mal

ise_id welche für Keymatic und welchen State zum Öffnen?

Beitrag von Stryker1 » 24.08.2017, 16:27

Welche ise_id muss man für das Abfragen und Setzen eines Keymatic/HM-Sec-Key haben?

Wenn ich devicelist.cgi aufrufe, sehe ich für die Keymatic einmal eine ise_id bei dem device, sowie eine zweite bei dem channel.

Welcher state ist der richrige zum Öffnen-Befehl einer Keymatic über statechange.cgi?
Ich hatte einmal "2" ausprobiert, aber mit damit meine Keymatic zerschossen (Verbindung zur CCU2 gestört, Anlernen zeigt nur noch X und direkt c, es halb nur noch Ausbau und Reset auf Werkseinstellung)

PS: Gibt es eigentlich eine Doku zu der Schnittstelle, oder ist das alles an Doku: https://www.homematic-inside.de/softwar ... tem/xmlapi

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: ise_id welche für Keymatic und welchen State zum Öffnen?

Beitrag von alchy » 24.08.2017, 18:48

Scriptdokumentation Teil 4 Datenpunkte sollte dir die Datenpunkte aufführen und deren Verwendung. Ich habe so ein Teil nicht.
Abgesehen von der xmlapi kannst du auch Remotescript zum Schalten nehmen. Da musst du dich nicht mit den ISE_IDs rumärgern. :mrgreen:

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Stryker1
Beiträge: 33
Registriert: 23.08.2017, 10:57
Hat sich bedankt: 1 Mal

Re: ise_id welche für Keymatic und welchen State zum Öffnen?

Beitrag von Stryker1 » 24.08.2017, 23:26

Du meinst solche Aufrufe:

Code: Alles auswählen

http://IP_der_CCU:8181/test.exe?x=dom.GetObject('BidCos-RF.ABC1234567:1.STATE').State(1);
?
Das funktioniert in meinem Anwendungsfall leider nicht, da ich aus einem Webapp, dass ich in meinem WLAN nutze, solche Scripte leider nicht per AJAX aufrufen kann (aufgrund der unterschiedlichen Ports / Access Origin).

PS: Edit: ich sehe gerade, dass standardmäßig der Zugriff auf die "Remote HomeMatic-Script API" in der CCU2 "eingeschränkt" ist. Standardmäßig nur 192.168.0.x - ich nutze hier im Netzwerk allerdings 192.168.3.x.
Ich werde einmal testen, ob es daran liegt.

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: ise_id welche für Keymatic und welchen State zum Öffnen?

Beitrag von alchy » 25.08.2017, 06:50

Ja ich meine so etwas. Aber als Script würde ich das nun wieder nicht bezeichnen.

[ERKLÄRBÄRMODUS]
Nehmen wir an, du hast einen Aktor HM-LC-Sw1-Pl dessen Datenpunkte sehen dann ungefähr so aus:
HM-LC-Sw1-Pl_xmlapi.jpg
Wenn ich das >xmlapi Addon< installiert habe, dann könnte ich mittels dem Aufruf des folgenden Links die Steckdose einschalten.

Code: Alles auswählen

http://192.168.178.22/config/xmlapi/statechange.cgi?ise_id=21692&new_value=1
Soweit so gut, will ich stattdessen per Remotescript schalten könnte ich auch den Link aufrufen:

Code: Alles auswählen

http://192.168.178.22:8181/GET/alchy.exe?sagt=datapoints.Get("BidCos-RF.HEQ0157604:1.STATE").State(1);
natürlich geht auch dieses per ISE_ID des Datenpunktes:

Code: Alles auswählen

http://192.168.178.22:8181/GET/alchy.exe?sagt=datapoints.Get(21692).State(1);
sogar ein Aufruf über den entsprechenden Kanal

Code: Alles auswählen

http://192.168.178.22:8181/GET/alchy.exe?sagt=channels.Get("Steckdose Wohnzimmer:1").DPByHssDP("STATE").State(true);
usw.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Stryker1
Beiträge: 33
Registriert: 23.08.2017, 10:57
Hat sich bedankt: 1 Mal

Re: ise_id welche für Keymatic und welchen State zum Öffnen?

Beitrag von Stryker1 » 28.08.2017, 10:08

Hatte jetzt mal testweise "Vollzugriff" auf "Remote HomeMatic-Script API" in den Systemeinstellungen der CCU2 gewährt, allerdings ging auch dann ein Aufruf per jQuerys ajax() nicht durch.
Ich vermute es liegt an den unterschiedlichen Ports 80 auf dem das Javascript läuft und 8181.

Daher werde ich wohl die xmlapi verwenden müssen und mich doch mit den ise_ids rumärgern.
Oder gibt es noch eine Alternative?

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: ise_id welche für Keymatic und welchen State zum Öffnen?

Beitrag von alchy » 28.08.2017, 10:17

Sorry, ich verstehe dich nicht.
Die von mir geposteten Beispiele funktionieren als Aufruf einen Links sehr wohl. (Freigaben usw. vorausgesetzt)
192.168.178.22 muss nur durch die IP DEINER CCU ersetzt werden und die Datenpunkte natürlich an einen deiner Datenpunkte.
Das probierst du dann erstmal direkt im Browser entsprechend aus und danach versuchst du es per Ajax oder sonst irgendetwas.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Antworten

Zurück zu „Softwareentwicklung von externen Applikationen“