Seite 10 von 11

Re: XML-RPC Interface-Beschreibung

Verfasst: 19.11.2013, 11:57
von Monty1979
Hallo Thilo,

ja ist Java. Ich habe einfache den hier android-xmlrpc genommen.

Gruß Monty

Re: XML-RPC Interface-Beschreibung

Verfasst: 21.11.2013, 05:30
von Thisoft
hmm - ich glaube fast ich muss kurz vorm Ziel doch noch aufgeben weil ich zu blöd bin für diese XML-RPC-Geschichte.
Der android-xmlrpc nützt mir halt unter Windows nicht viel... Ich hab's mit dem XML-RPC Server von CookComputing versucht (jetzt schon mehrmals), bin aber immer wieder kläglich gescheitert. Irgendwie hab' ich das Prinzip dahinter noch nicht wirklich verstanden :cry:

Der Rest drumherum ist ja nicht das Problem - egal ob nun aus JAva, C oder wie auch immer...

Gruß Thilo

Re: XML-RPC Interface-Beschreibung

Verfasst: 03.12.2013, 23:16
von rz259
@Monty:

Ich habe vor einiger Zeit auch mal einen XML-RPC-Server (auf Basis von Apache) angefangen, allerdings kriege ich keinerlei Nachrichten geschickt....

Es klappt wunderbar, irgendwelche Geräte zu steuern (Licht, Steckdosen), aber ich kriege keine Events geschickt.
Evtl. stimmt ja was mit meiner Anmeldung des XML-RPC-Servers via "init" nicht. Wie hast du das denn gemacht?

Mein Code an dieser Stelle sieht folgendermaßen aus:

Code: Alles auswählen

    rpcServer.setup(SERVER_PORT);
    rpcServer.start();
    try
    {
    	String url = "http://localhost:" + SERVER_PORT + "/xmlrpc";
	    result = xmlrpcClient.execute("init", new Object[]{url, "HomeMaticServer"});
	    System.out.println("Result init: " + result);
    }
    catch (XmlRpcException e)
    {
	    e.printStackTrace();
    }

Das Ergebnis von init ist eigentlich immer ein Leerstring... ich erhalte keinen Fehler, aber es funktioniert trotzdem nicht.
WIe habt ihr das gemacht mit dem Aufruf von init()?

Gibt es irgendwelche weiterführende Doku außer der Spezifikation? Hast du irgendwelche weiterführenden Links zu diesem Thema?

Ich benutze übrigens die CCU2 und habe gerade auf deiner HomeDroid-Page gelesen, dass man die XML-RPC-API installieren muss. GIlt das auch für die CCU2?

Ciao,

Rudi

Re: XML-RPC Interface-Beschreibung

Verfasst: 04.12.2013, 00:54
von ultrah
Da wirft du grade ein paar Sachen durcheinander :)

HomeDroid ist von mir, Monty entwickelt Home24.

Beide Apps brauchen die XML-API, was mit der XML-RPC Schnittstelle erstmal nicht viel zu tun hat.

Nach dem Init schickt die CCU einige Calls, die alle beantwortet werden müssen, damit Statusupdates kommen.

Doku gibts nicht wiklich,aber guck mal hier: http://homematic-forum.de/forum/viewtop ... 80#p121045

Re: XML-RPC Interface-Beschreibung

Verfasst: 04.12.2013, 19:15
von rz259
Hallo Ultra,

sorry fürs Durcheinanderwerfen;-)

Vielen Dank für deinen Hinweis. Das Codefragment, auf welches du verweist, habe ich gestern abend auch noch entdeckt - eigentlich dachte ich, dass ich bereits auf diese Calls antworte - aber ich muss mir das ganze noch genau ansehen, ob das wirklich alles stimmt. Womöglich ist da noch der eine oder andere Fehler drin...

Ich habe da schon länger nichts mehr gemacht, aber soviel ich mich erinnern kann, war das Problem, dass ich gar keine Calls bekommen habe, auf die ich hätte antworten können. Da werde ich gleich mal wieder mit den Forschungsarbeiten beginnen...

Ich habe allerdings den XML-RPC-Server selbst implementiert, sondern nutze dafür Apache XML-RPC, da ist auch ein Server dabei, allerdings ist die Benutzung nicht ganz trivial. Ich vermute mal, dass mein Fehler da liegt. Vielleicht ist es einfacher, den XML-RPC-Server selbst zu bauen;-)

Danke,

Rudi

Re: XML-RPC Interface-Beschreibung

Verfasst: 10.12.2013, 18:45
von Doener
@rz259

Hi,
hast du deinen PHP XML-RPC Server schon am laufen? Ich habe gerade so ein änliches "Projekt" vor mir.
Ich strebe ein PHP Skript an, dass mir aus dem Event das ich aus dem Server bekomme einen HTTP POST an eine andere IP mache.

Ich habe leider nur noch keine Ahnung wie ich das anstellen soll :(

Jemand eine Idee?

Mit freundlichen Grüßen

Re: XML-RPC Interface-Beschreibung

Verfasst: 04.07.2014, 14:41
von DrFirebird
Hallo zusammen,

ich bin jetzt seit Tagen am probieren, ich bekomme das mit dem init nicht geregelt.
Schicke ich das init zur CCU, sehe ich noch die Antwort der CCU.
Dann blockiert die CCU und es geht gar nichts mehr.

Ich programmiere unter VB.Net. Ich denke der Fehler ist, dass ich die leere Antwort, die erwartet wird nicht richtig sende.
Hat jemand von euch vielleicht ein xml-rpc Server unter VB-Net ???

Vielen Dank,
Michael

Re: XML-RPC Interface-Beschreibung

Verfasst: 05.07.2014, 00:00
von anli
Es gibt einen unter C#, der funktionierte m. E., such mal danach. C# und vb.net liegen ja nicht so weit auseinander.

Re: XML-RPC Interface-Beschreibung

Verfasst: 08.08.2014, 22:19
von DiBi_83
Ist das eigentlich das Server-Programm im ersten Post von diesem Link?

http://homematic-forum.de/forum/viewtop ... 25#p163725

Funktioniert bei euch das Programm im Verzeichnis "C:\......\Desktop\HMRemoting\bin\SampleServer.exe" dieser "Loesung.rar" zusammen mit der CCU2?

Gibt es keine konkrete Lösung zum Thema CCU2 und der Eventbenachrichtigung "init"? Es gab ja bereits einige Hilferufe ohne direkte Antwort.
Im obengenannten Link habe ich bereits nach Hilfe gesucht, doch habe bisher keine Antwort erhalten. Die Benachrichtigung wäre für mich ein doch relativ wichtiges Ziel, welches ich gerne erreichen möchte.

Gruss
DiBi_83

Re: XML-RPC Interface-Beschreibung

Verfasst: 13.05.2015, 14:39
von McKing2015
Hallo,
jetzt habe ich auch endlich eine CCU2 und die ersten Aktoren installiert und schlage mich mit der XML Schnittstelle rum.

Mit einem Tool kann ich XML Pakete an die CCU2 schicken, und bekomme auch eine Antwort. listDevices funktioniert super.

Allerdings sobald ich etwas mit Parametern übergeben möchte klemmt es irgendwo.
Also ich schicke:

Code: Alles auswählen

<?xml version="1.0"?>
<methodCall>
    <methodName>getValue</methodName>
    <params>
        <param><value><string>LEQ1317899</string></value></param>
        <param><value><string>VERSION</string></value></param>
    </params>
</methodCall>

und bekomme das zurück:

Code: Alles auswählen

<?xml version="1.0"?>
<methodResponse>
  <fault>
    <value>
      <struct>
        <member>
          <name>faultCode</name>
          <value>
            <i4>-1</i4>
          </value>
        </member>
        <member>
          <name>faultString</name>
          <value>type error</value>
        </member>
      </struct>
    </value>
  </fault>
</methodResponse>
Es handelt sich hier um einen Dimmer, der im Web UI mit der angegebenen Seriennummer gelistet ist.
Habe ich etwas verpasst? Muss ich die Seriennummer mit oder ohne Kanal (:1) angeben?
Wie kann ich den Status (An /Aus) und den Wert abfragen.
Wenn das getValue funktioniert wäre das nächste das setValue, aber ich bin guter Dinge, dass ich das denn alleine herausfinde.

Welche Parameter werden denn von Dimmern oder Rolladenmotoren unterstützt? Kann man das aus der list Device sehen oder mit einem anderen Befehl abfragen?


Vielen Dank für Eure Hilfe

Mathias