XML-RPC vs. TCL-REGA

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

ColdFireIce
Beiträge: 407
Registriert: 06.03.2009, 15:38
Wohnort: Karlsruhe
Danksagung erhalten: 1 Mal

XML-RPC vs. TCL-REGA

Beitrag von ColdFireIce » 19.02.2010, 17:16

Hallo,

aus gegebenem Anlass bin ich über XML-RPC gestolpert. Bisher kannte ich nur den Weg über TCLREGA die Daten auf der Homematic auszulesen, allerdings scheint mir dass schon eher ein Umweg zu sein. XML-RPC scheint ziemlich direkt zu sein.
Hat jemand irgendwelche Informationen über die Vor/Nachteile beider Verfahren? Vielleicht sogar mal selbst die Geschwindigkeitsunterschiede getestet? wenn ja wie gravierend ist dieser den?
Wenn mann davon ausgeht dass ein Webserver mit PHP auf der CCU läuft. 1x mit /tclrega.exe direkt per Port 8181, und 1x per RPC Port 1999-2002.

Wäre super falls ihr mir hier feedback geben könntet.

Liebe Grüße

Daniel

Benutzeravatar
kaju74
Beiträge: 2050
Registriert: 06.03.2007, 13:14
Danksagung erhalten: 19 Mal
Kontaktdaten:

Re: XML-RPC vs. TCL-REGA

Beitrag von kaju74 » 19.02.2010, 17:26

Hi..

Ich nutze die Schnittstelle und die Befehle gehen quasi ohne merkliche Verzögerung raus. Wenn natürlich gerade dutzend Sachen auf der CCU
laufen, bremst das aus...sind aber z.B. nur Direktverknüpfungen am Werk und nur wenige Programme, die permanent was machen, dann drückt
man eine Taste auf dem Bildschirm, und das Licht ist an. Auch das Feedback von der CCU ist relativ zeitnah.

Lieben Gruß,
kaju

ColdFireIce
Beiträge: 407
Registriert: 06.03.2009, 15:38
Wohnort: Karlsruhe
Danksagung erhalten: 1 Mal

Re: XML-RPC vs. TCL-REGA

Beitrag von ColdFireIce » 19.02.2010, 17:55

@kaju, also wenn ich das richtig verstehe sollte ich auf RPC umsteigen? Wenn ja kannst du mir dann vielleicht ein paar deiner Scripts/functionen/routinen zu kommen lassen? Wäre echt super und würde mir bestimmmt viel Arbeit sparen.

Liebe Grüße

Darak

chii
Beiträge: 80
Registriert: 26.06.2009, 23:34

Re: XML-RPC vs. TCL-REGA

Beitrag von chii » 20.02.2010, 10:43

Hallo,

soweit ich das überblicke verfügt die CCU über 2 Programmierschnittstellen:
  • 1. XML-RPC
    2. Remote HomeMatic Script
Das sind zumindest die beiden Schnittstellen, für die man in der CCU-Firewall Einstellungen treffen kann. Von tcl aus kann man beide benutzen. Entweder durch tclrega (Remote HomeMatic Script) oder durch tclrpc (XML-RPC).

Ich glaube, dass die beiden Schnittstellen nicht gleich mächtig sind. So habe ich z.B. noch keinen Weg gefunden, über XML-RPC Programme auszuführen oder Systemvariablen abzufragen (*). Falls dem so ist, wäre die Schnittstelle dadurch festgelegt, was du machen willst: Für einfache Gerätesteuerung reicht XML-RPC; um Programme auszuführen brauchst du Remote HomeMatic Script.

Grüße
chii

(*) Über system.listMethods erhält man eine in XML-RPC Methodenübersicht. Darin steht nichts von Programmen.

ColdFireIce
Beiträge: 407
Registriert: 06.03.2009, 15:38
Wohnort: Karlsruhe
Danksagung erhalten: 1 Mal

Re: XML-RPC vs. TCL-REGA

Beitrag von ColdFireIce » 20.02.2010, 15:23

chii hat geschrieben:(*) Über system.listMethods erhält man eine in XML-RPC Methodenübersicht. Darin steht nichts von Programmen.
Hi,

wo genau muss ich diesen Command den ausführen um diese Liste zu bekommen? wäre es möglich dass du diese Liste einfach mal hier postest?

Danke
Daniel

Benutzeravatar
kaju74
Beiträge: 2050
Registriert: 06.03.2007, 13:14
Danksagung erhalten: 19 Mal
Kontaktdaten:

Re: XML-RPC vs. TCL-REGA

Beitrag von kaju74 » 20.02.2010, 15:57

Hallo.

Laded Euch doch einfach mal XMLRPCBIN bzw. HCS von meiner Seite...genau dafür sind die Tools ja da!

Lieben Gruß,
kaju

chii
Beiträge: 80
Registriert: 26.06.2009, 23:34

Re: XML-RPC vs. TCL-REGA

Beitrag von chii » 20.02.2010, 16:35

Hallo,
kaju74 hat geschrieben:Laded Euch doch einfach mal XMLRPCBIN bzw. HCS von meiner Seite...genau dafür sind die Tools ja da!
Ja, ich denke auch, dass ist das Einfachste. Ich hatte mich damals über telnet auf der CCU eingeloggt. Über

Code: Alles auswählen

tclsh
hatte ich den tcl-Interpreter gestartet und dort die folgenden Kommandos eingegeben:

Code: Alles auswählen

load tclrpc.so
xmlrpc http://127.0.0.1:2001 system.listMethods
Das Ergebnis war dann die Liste der verfügbaren Methoden.
Viel gebracht hat das allerdings nicht, denn außer den Methodennamen bekommt man keine weiteren Infos (Parameter oder Rückgabewerte). Hier kann man sich höchstens die tcl-Dateien auf der ccu genau ansehen, die XML-RPC verwenden.

Da ist es sicher einfacher, die beiden Programme von kaju's Seite zu laden.

Grüße
chii

Benutzeravatar
kaju74
Beiträge: 2050
Registriert: 06.03.2007, 13:14
Danksagung erhalten: 19 Mal
Kontaktdaten:

Re: XML-RPC vs. TCL-REGA

Beitrag von kaju74 » 20.02.2010, 16:56

Hallo.

Oder mal die Software zum LAN-Interface installieren und dort gucken...das Problem ist, das ich Euch hier nicht die Schnittstellenbeschreibung posten darf, das dies der NDA unterliegt...sorry. Aber die Tools helfen einem da schon weiter...die waren auch die Basis für meine Versuche.

Lieben Gruß,
kaju

majo
Beiträge: 8
Registriert: 03.11.2009, 08:01

Re: XML-RPC vs. TCL-REGA

Beitrag von majo » 21.02.2010, 15:53

Hi,

wenn Ihr von der XML-RPC Schnittstelle redet dann meint Ihr aber schon die JSON-RPC API von der Homematic CCU?
Ist ja nicht ganz dasselbe:
XML-RPC -> http://en.wikipedia.org/wiki/XML-RPC
JSON-RPC -> http://en.wikipedia.org/wiki/JSON-RPC

Eine XML-RPC Schnittstelle konnte ich bislang nicht entdecken in der CCU - oder hab ich da was übersehen?

Ok, die Methoden (und parameter) der JSO-RPC API kann man leicht unter folgenden Link im Browser herausfinden:
http://aktuelle.ip.der.ccu/api/homematic.cgi
Leider erfährt man nichts genaues über die Rückabe-werte bzw. -typen.
Und zumindest gibts dort auch eine Methode "Program.execute" ....
Die hab ich aber noch nie getestet.
Homematic 1.5, 2 x IO7/12, 2 x SC12, 2 x 12fach IO-Module 6 Dimmer, ein paar (leider Funk)rolladen, und dann noch über 40 1Wire Sensoren im Haus verteilt eingebunden in Homematic

chii
Beiträge: 80
Registriert: 26.06.2009, 23:34

Re: XML-RPC vs. TCL-REGA

Beitrag von chii » 21.02.2010, 20:19

Hallo majo,

majo hat geschrieben:wenn Ihr von der XML-RPC Schnittstelle redet dann meint Ihr aber schon die JSON-RPC API von der Homematic CCU?
Also ich habe tatsächlich von XML-RPC gesprochen. Versuch mal die Ports 2000, 2001oder 2002. Der Hinweis mit der JSON-RPC API ist aber gut. Danke!

Grüße,
chii

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“