XML-RPC, Doku? CCU2 finden?

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

Moderator: Co-Administratoren

Antworten
konrad
Beiträge: 21
Registriert: 10.02.2015, 09:17

XML-RPC, Doku? CCU2 finden?

Beitrag von konrad » 12.12.2016, 19:58

Hallo,

ich spiele gerade ein bißchen mit dem XML-RPC herum. Das funktioniert auch soweit ganz gut. Angetan bin ich von den (im Vergleich zur Web-UI) angenehm kurzen Antwortzeiten der CCU2.

Was mir allerdings noch fehlt ist eine vernünftige Doku zum XML-RPC-API. Gefunden habe ich "HM_XmlRpc_API.pdf". Gibt's da noch was besseres? Wie z.B. kann ich die definierten Räume erfragen und die Zugehörigkeit von Geräten zu Räumen? Und: Wie finde ich die ccu2 am besten im Heimnetz? Nur anhand des vordefinierten Netzwerknamens (homematic-ccu2)?

schönen Gruß

Konrad

Benutzeravatar
thkl
Beiträge: 2765
Registriert: 15.07.2013, 13:32
Wohnort: dickes B
Danksagung erhalten: 5 Mal

Re: XML-RPC, Doku? CCU2 finden?

Beitrag von thkl » 12.12.2016, 20:17

http://www.eq-3.de/service/downloads.html?id=48

BTW: Weder die Names noch Raumzuordnung wird auf den Interface Schnittstellen, welche Du per XML-RPC ansprichst erledigt. Dort läuft nur die LowLevel Kommunikation mit den Geräten. Den Rest macht RegaHSS. Der hat aber sowas nicht, sondern der spricht eben via XML-RPC mit den Interface Prozessen. Mit RegaHSS kannst Du maximal via Script reden ....http://www.eq-3.de/service/downloads.html?id=29 bzw http://www.eq-3.de/service/downloads.html?id=30

CCU Suchen, hmm schau wer auf Port 2001 auf XML-RPC Anfragen reagiert ...

Die CCU announct sich weder per mnds noch unpn oder solchen Spässen ...

konrad
Beiträge: 21
Registriert: 10.02.2015, 09:17

Re: XML-RPC, Doku? CCU2 finden?

Beitrag von konrad » 13.12.2016, 10:34

Danke für die Hinweise. Die PDFs von eq3 waren mir schon bekannt.

Die BIN-RPC-Schnittstelle bietet ja m.W. den gleichen Funktionsumfang wie die XML-RPC-API. Außerdem ist das ja gar nicht dokumentiert.

Bleibt also die remote-script-Schnittstelle auf Port 8181 oder das JSON-RPC-API. Ich denke, ich schau' mir mal letzteres an, was das so hergibt.

schönen Gruß

Konrad

hobbyquaker
Beiträge: 3978
Registriert: 12.07.2009, 20:01
Hat sich bedankt: 17 Mal
Danksagung erhalten: 176 Mal
Kontaktdaten:

Re: XML-RPC, Doku? CCU2 finden?

Beitrag von hobbyquaker » 13.12.2016, 11:13

thkl hat geschrieben: Die CCU announct sich weder per mnds noch unpn oder solchen Spässen ...
Es gibt einen Weg CCUs und LAN Gateways zu finden, habe mal Wireshark auf den eQ-3 "Netfinder" http://www.eq-3.de/service/downloads.html?id=53 losgelassen. IIRC sendet man eine kurze Bytefolge per UDP auf einen bestimmten Port auf die Broadcastadresse 255.255.255.255 und bekommt dann ein paar Infos (Gerätetyp CCU1 oder 2, LAN-Gateway, Versionsnummern und sowas) auf einem anderen Port zurück.
konrad hat geschrieben:Die BIN-RPC-Schnittstelle bietet ja m.W. den gleichen Funktionsumfang wie die XML-RPC-API. Außerdem ist das ja gar nicht dokumentiert.
Nicht offiziell, aber hier findest Du Infos:
https://www.homegear.eu/index.php/Binary_RPC_Reference
http://homematic-forum.de/forum/viewtop ... 10&p=57493

Fertige Implementierungen für Javascript, Java, C++ gibt es auch: https://github.com/hobbyquaker/binrpc
Java und C++ kannst Dir aus hm2mqtt und homegear rausziehen.
konrad hat geschrieben:Bleibt also die remote-script-Schnittstelle auf Port 8181 oder das JSON-RPC-API. Ich denke, ich schau' mir mal letzteres an, was das so hergibt.
Ich würde Remote Script empfehlen, ne Menge Beispielscripte kannst Dir z.B. aus dem ioBroker hm-rega Adapter ziehen

konrad
Beiträge: 21
Registriert: 10.02.2015, 09:17

Re: XML-RPC, Doku? CCU2 finden?

Beitrag von konrad » 14.12.2016, 09:37

Danke! Schaue ich mir mal an.

schönen Gruß

Konrad

konrad
Beiträge: 21
Registriert: 10.02.2015, 09:17

Re: XML-RPC, Doku? CCU2 finden?

Beitrag von konrad » 14.12.2016, 11:47

In dem Zusammenhang noch eine Frage: Wie melde ich mich als Gast an der ccu2 an? Verwende ich z.B. das JSON-RPC-API und starte eine Session mit "Session.login" und den Username/Passwort meines CCU2-Standardadmins klappt das anmelden. Allerdings gibt's ja auch noch die Berechtigungsstufe "Gast". Nur da will mir kein Login gelingen. Ich hab's versucht mit:

1. Gar keine _session_id_ an entsprechende Methoden zu übergeben (z.B. Room.ListAll) -> geht nicht
2. Login mit "GUEST" oder "Gast" in diversen Varianten (Groß/Klein, gemischt). Ebenso das Passwort (Leer, "GUEST"/"GAST" in diversen Varianten).

Ist das irgendwo dokumentiert?

schönen Gruß

Konrad

Benutzeravatar
thkl
Beiträge: 2765
Registriert: 15.07.2013, 13:32
Wohnort: dickes B
Danksagung erhalten: 5 Mal

Re: XML-RPC, Doku? CCU2 finden?

Beitrag von thkl » 14.12.2016, 17:23

Das Gast Login ist kein "richtige" Gast Login. Sondern ein normaler Benutzer mit dem Level Gast.
Du müsstest also einen eigenen User in der Benutzerverwaltung des WebGUI erstellen, und dem Gast Rechte dort geben.

Vom JSON Api ist kann ich eigentlich nur abraten. Man kann maximal 3 Sessions öffnen. Dann legt sich das System erstmal eine Weile schlafen, bis mindestens eine ins Timeout läuft. Ein Login im WebGUI zählt auch gegen diesen SessionZähler .... Man bekommt eigentlich auf fast alles über XMLRCP bzw RegaHss Zugriff. Und das ganze ohne jegliche Authentifizierung. \o/ ..

konrad
Beiträge: 21
Registriert: 10.02.2015, 09:17

Re: XML-RPC, Doku? CCU2 finden?

Beitrag von konrad » 16.12.2016, 11:00

Ich seh' schon, ich komm' um remote-script nicht drum rum. Schade. Es wäre irgendwie sauberer auf ein definiertes API mittels RPC zu setzen als Scripte an die CCU zu schicken.

Danke für den vielen Input.

schönen Gruß

Konrad

Benutzeravatar
thkl
Beiträge: 2765
Registriert: 15.07.2013, 13:32
Wohnort: dickes B
Danksagung erhalten: 5 Mal

Re: XML-RPC, Doku? CCU2 finden?

Beitrag von thkl » 16.12.2016, 12:24

Auf jeden Fall.

Antworten

Zurück zu „Softwareentwicklung von externen Applikationen“