HMCompanion - Schnittstelle zur CCU
Moderator: Co-Administratoren
Re: HMCompanion - Schnittstelle zur CCU
Port 6778 wird benutzt zum Empfang der Callbacks im Rahmen der xml-rpc-Kommunikation mit rfd, hs485 und pfmd, dort nicht hinconnecten -- Port 6770 ist schon der korrekte Port zum Absenden der Befehle. Bitte beachten, dass er den Port erst dann bind()et, wenn die Übertragung der Daten von der CCU abgeschlossen ist.
Re: HMCompanion - Schnittstelle zur CCU
Super !
mit etwas gedult functionniert es effectif wunderbar !!
Eine letzte frage, mein server is ausserhalb meines netzwerkes, eine idee welche ports von hmcomanion zur CCU geöffnet werden mussen ?
Danke
Claude
mit etwas gedult functionniert es effectif wunderbar !!
Eine letzte frage, mein server is ausserhalb meines netzwerkes, eine idee welche ports von hmcomanion zur CCU geöffnet werden mussen ?
Danke
Claude
Re: HMCompanion - Schnittstelle zur CCU
Von HMC zur CCU: TCP 2000-2002, 8181
Von CCU zu HMC (wegen Callback): TCP 6778
Von CCU zu HMC (wegen Callback): TCP 6778
Re: HMCompanion - Schnittstelle zur CCU
Hallo,
ich veruche HMCompanion für eine Langzeitdarstellung meiner Werte in Cacti benutzen.
Wenn ich HMC starte bekomme ich alle 30 Sekunden folgende Meldung:
02.01.2011 14:56:04 com.vapor.hmcompanion.HMC initWatchog
WARNUNG: No XML-RPC request since Thu Jan 01 01:00:00 CET 1970, reiniting
Wenn ich eine Abfrage versuche zeigt er mir die Verbindung aber auch an:
02.01.2011 14:35:40 com.vapor.hmcompanion.Server run
INFO: Accepted connection from /127.0.0.1:55473
Die Funktionen HELP, NAMES und HMGET funktionieren auch, aber mit GET und CGET bekomme ich immer nur einen Punkt zurück. Habe das hier genauer beschrieben: http://homematic-forum.de/forum/viewtop ... =26&t=5831
Hat das was mit den Meldungen zu tun?
Falls es wichtig ist: HMC läuft unter Suse Linux 11.3 und Java Version 1.6. Ich habe es aber auch schon unter Java 1.5 und auch auf einem Windows Rechner versucht - überall das gleiche Bild....
Danke und Gruß,
Balu
ich veruche HMCompanion für eine Langzeitdarstellung meiner Werte in Cacti benutzen.
Wenn ich HMC starte bekomme ich alle 30 Sekunden folgende Meldung:
02.01.2011 14:56:04 com.vapor.hmcompanion.HMC initWatchog
WARNUNG: No XML-RPC request since Thu Jan 01 01:00:00 CET 1970, reiniting
Wenn ich eine Abfrage versuche zeigt er mir die Verbindung aber auch an:
02.01.2011 14:35:40 com.vapor.hmcompanion.Server run
INFO: Accepted connection from /127.0.0.1:55473
Die Funktionen HELP, NAMES und HMGET funktionieren auch, aber mit GET und CGET bekomme ich immer nur einen Punkt zurück. Habe das hier genauer beschrieben: http://homematic-forum.de/forum/viewtop ... =26&t=5831
Hat das was mit den Meldungen zu tun?
Falls es wichtig ist: HMC läuft unter Suse Linux 11.3 und Java Version 1.6. Ich habe es aber auch schon unter Java 1.5 und auch auf einem Windows Rechner versucht - überall das gleiche Bild....
Danke und Gruß,
Balu
8x HM-Sec-RHS, 6x HM-CC-VG-1, 2x HM-PB-4-WM, 6x HM-TC-IT-WM-W-EU, 6x HM-CC-RT-DN, 1x HM-WDS10-TH-O, 1x HMIP-PS, 1x HM-LC-Dim1T-FM, 1x HM-Sec-SCo, 1x HM-ES-TX-WM, 1x HM-LC-Sw4-PCB, 1x HM-WDS30-OT2-SM, 1x CUX28, 1x HmIP-RCV-50, 1x HM-ES-PMSw1-Pl, 1x HmIP-SWD, 1x HMIP-PSM, 2x HM-LC-Dim1TPBU-FM, 1x HmIP-BSL, 1x HM-WDS40-TH-I, 1x HM-LC-Sw1-Pl, 1x HM-LC-Dim1T-Pl-2
Re: HMCompanion - Schnittstelle zur CCU
Das bedeutet, dass rfd & Co. keine Callbacks an HMC schicken, also irgendwas mit der Initialisierung schiefgegangen ist.Balu1973 hat geschrieben:02.01.2011 14:56:04 com.vapor.hmcompanion.HMC initWatchog
WARNUNG: No XML-RPC request since Thu Jan 01 01:00:00 CET 1970, reiniting
Wichtig ist, dass bei den Callbacks die CCU zu Deinem Server connecten muss. Daraus, dass die Verbindung vom Server zur CCU klappt (was bei Dir ja der Fall ist, sonst würden die ReGa-Abfragen nicht klappen), kann man leider nicht zwingend schliessen, dass dies umgekehrt auch funktioniert.
Mögliche Ursache:
-- Firewall auf deinem Server verbietet Verbindungen von der CCU (TCP-Port 6778)
-- HMC ermittelt eine falsche lokale IP Deines Servers (die festgestellte IP sollte im Logfile von HMC direkt beim Start stehen)
Viele Grüße,
Olli
Re: HMCompanion - Schnittstelle zur CCU
Hallo Olli,
Danke für Deine Antwort.
Eine Firewall ist im Moment noch deaktiviert.
Beim starten von HMC zeigt er mir folgendes an:
cacti:/etc/init.d # ./HMCompanion start
Starting HMCompanion
Done!
cacti:/etc/init.d # 02.01.2011 17:50:19 com.vapor.hmcompanion.HMC serverMode
INFO: HMCompanion V0.14 (C) 2010 Oliver Wagner <owagner@vapor.com>, All Rights Reserved
02.01.2011 17:50:20 com.vapor.hmcompanion.AttributeCache load
INFO: Read 0 entries from hmc.cache
02.01.2011 17:50:20 com.vapor.hmcompanion.HMC serverMode
INFO: Listening for XMLRPC callbacks on binary://127.0.0.2:6778, now init-ing
02.01.2011 17:50:20 com.vapor.hmcompanion.ReGaDeviceCache loadDeviceCache
INFO: Obtaining ReGa channel items
02.01.2011 17:50:20 com.vapor.hmcompanion.ReGaDeviceCache loadDeviceCache
INFO: Obtained 132 ReGa Channel items
02.01.2011 17:50:20 com.vapor.hmcompanion.Server acceptIt
INFO: Accepting connections on ServerSocket[addr=0.0.0.0/0.0.0.0,port=0,localport=6770]
Wenn ich Dich richtig verstanden habe müsste in der fett markierten Zeile meine Server IP stehen - also was mit 192.168.x.y.
Kann man das irgendwo als Parameter mitgeben?
Gruß,
Balu
Zusatz: Wenn ich von einem anderen PC ein telnet auf den Server auf Port 6778 absende kommt eine Verbindung zustande:
c:> netstat -n
TCP 192.168.x.a:58210 192.168.x.z:6778 HERGESTELLT
Danke für Deine Antwort.
Eine Firewall ist im Moment noch deaktiviert.
Beim starten von HMC zeigt er mir folgendes an:
cacti:/etc/init.d # ./HMCompanion start
Starting HMCompanion
Done!
cacti:/etc/init.d # 02.01.2011 17:50:19 com.vapor.hmcompanion.HMC serverMode
INFO: HMCompanion V0.14 (C) 2010 Oliver Wagner <owagner@vapor.com>, All Rights Reserved
02.01.2011 17:50:20 com.vapor.hmcompanion.AttributeCache load
INFO: Read 0 entries from hmc.cache
02.01.2011 17:50:20 com.vapor.hmcompanion.HMC serverMode
INFO: Listening for XMLRPC callbacks on binary://127.0.0.2:6778, now init-ing
02.01.2011 17:50:20 com.vapor.hmcompanion.ReGaDeviceCache loadDeviceCache
INFO: Obtaining ReGa channel items
02.01.2011 17:50:20 com.vapor.hmcompanion.ReGaDeviceCache loadDeviceCache
INFO: Obtained 132 ReGa Channel items
02.01.2011 17:50:20 com.vapor.hmcompanion.Server acceptIt
INFO: Accepting connections on ServerSocket[addr=0.0.0.0/0.0.0.0,port=0,localport=6770]
Wenn ich Dich richtig verstanden habe müsste in der fett markierten Zeile meine Server IP stehen - also was mit 192.168.x.y.
Kann man das irgendwo als Parameter mitgeben?
Gruß,
Balu
Zusatz: Wenn ich von einem anderen PC ein telnet auf den Server auf Port 6778 absende kommt eine Verbindung zustande:
c:> netstat -n
TCP 192.168.x.a:58210 192.168.x.z:6778 HERGESTELLT
Re: HMCompanion - Schnittstelle zur CCU
Ja, das ist der Fehler.
Das Problem ist, dass HMC der CCU sagen muß "bitte melde dich auf dieser IP zurück", und aktuell versucht nun die CCU, bei 127.0.0.2 Callbacks loszuwerden, was natürlich nicht klappt. Das HMC selbst richtig listen()ed, hilft hier nicht. Vermutlich steht bei Dir etwas komisches in /etc/hosts oder so...
Viele Grüße,
Olli
Das Problem ist, dass HMC der CCU sagen muß "bitte melde dich auf dieser IP zurück", und aktuell versucht nun die CCU, bei 127.0.0.2 Callbacks loszuwerden, was natürlich nicht klappt. Das HMC selbst richtig listen()ed, hilft hier nicht. Vermutlich steht bei Dir etwas komisches in /etc/hosts oder so...
Viele Grüße,
Olli
Re: HMCompanion - Schnittstelle zur CCU
Anbei eine Testversion, probier bitte mal mit
java -Dhmc.localhost=192.168.x.y <restliche Parameter>
java -Dhmc.localhost=192.168.x.y <restliche Parameter>
- Dateianhänge
-
- hmcompanion_v015_test.zip
- (61.76 KiB) 153-mal heruntergeladen
Re: HMCompanion - Schnittstelle zur CCU
Hallo Olli,
beides die richtigen Ideen!
In meiner Hosts stand für die richtige IP und 127.0.0.1 der gleiche Eintrag. Wenn die Zeile mit 127.0.0.1 gelöscht ist startet HMC richtig.
Oder die neue Version mit dem zusätzlichen Parameter -Dhmc.localhost=192.168.x.y
Es funktioniert jetzt!
Vielen Dank für Deine Hilfe!!
Gruß,
Balu
beides die richtigen Ideen!
In meiner Hosts stand für die richtige IP und 127.0.0.1 der gleiche Eintrag. Wenn die Zeile mit 127.0.0.1 gelöscht ist startet HMC richtig.
Oder die neue Version mit dem zusätzlichen Parameter -Dhmc.localhost=192.168.x.y
Es funktioniert jetzt!
Vielen Dank für Deine Hilfe!!
Gruß,
Balu
8x HM-Sec-RHS, 6x HM-CC-VG-1, 2x HM-PB-4-WM, 6x HM-TC-IT-WM-W-EU, 6x HM-CC-RT-DN, 1x HM-WDS10-TH-O, 1x HMIP-PS, 1x HM-LC-Dim1T-FM, 1x HM-Sec-SCo, 1x HM-ES-TX-WM, 1x HM-LC-Sw4-PCB, 1x HM-WDS30-OT2-SM, 1x CUX28, 1x HmIP-RCV-50, 1x HM-ES-PMSw1-Pl, 1x HmIP-SWD, 1x HMIP-PSM, 2x HM-LC-Dim1TPBU-FM, 1x HmIP-BSL, 1x HM-WDS40-TH-I, 1x HM-LC-Sw1-Pl, 1x HM-LC-Dim1T-Pl-2
Re: HMCompanion - Schnittstelle zur CCU
Hallo Olli,
vorab danke für die schöne Middleware.
Ich mache mich z.Z. daran meinen VDR und Homematic zu vereinen.
Damit wäre dann eine Anzeige/Steuerung der homematic Komponenten über das OSD meines Fernsehers möglich, was den WAF der Homematic ca. 250% steigern würde
HMC scheint mir die idealle Ausgangsbasis dafür zu sein.
Allerdings läuft im Zeitalter von GreenIT mein VDR nicht 24/7 und damit sind die Status nach Neustart nicht auf dem aktuellsten Stand.
Gibt es eine Möglichkeit die Zustände beim Start von HMC mit dem Wissen der CCU abzugleichen? Oder evtl. sogar periodisch?
Einige Sensoren oder Aktoren senden ihre Stutusupdates in sehr grossen Intervallen oder erst bei Statusänderung.
Als Beispiel z.B. die Fensterdrehgirff-Kontakte oder Jalousieaktoren.
Ist der Server auf dem HMC läuft zu diesen Zeitpunkten down, wird ein falscher Status (naturgemäss) zurückgegeben.
Mir würde es genügen, wenn beim Start von HMC alle Kanäle und deren Zustände gelesen würden und dann im Cache landen.
Es scheint auch so zu sein, dass wenn man HMC nach einem bestimmten Zustand fragt, der noch nicht per Push HMC mitgeteilt wurde, ein leerer Wert zurück gegeben wird.
z.B. GET "Rolladen.xyz" LEVEL -> liefert "" zurück. Erst wenn die Jalousie bewegt wurde und somit der neue Level der Logikschicht gepusht wurde, liefert die selbe Anfrage den korrekten Wert (z.B. 0.5).
Gibt es eine Möglichkeit, beim nicht-existierenden Cache-Entry erst den tatsächlichen Wert zu lesen und dann diesen im Cache abzulegen? Weitere pushes würden entsprechend den cache updaten.
Gruß
Riggert
vorab danke für die schöne Middleware.
Ich mache mich z.Z. daran meinen VDR und Homematic zu vereinen.
Damit wäre dann eine Anzeige/Steuerung der homematic Komponenten über das OSD meines Fernsehers möglich, was den WAF der Homematic ca. 250% steigern würde
HMC scheint mir die idealle Ausgangsbasis dafür zu sein.
Allerdings läuft im Zeitalter von GreenIT mein VDR nicht 24/7 und damit sind die Status nach Neustart nicht auf dem aktuellsten Stand.
Gibt es eine Möglichkeit die Zustände beim Start von HMC mit dem Wissen der CCU abzugleichen? Oder evtl. sogar periodisch?
Einige Sensoren oder Aktoren senden ihre Stutusupdates in sehr grossen Intervallen oder erst bei Statusänderung.
Als Beispiel z.B. die Fensterdrehgirff-Kontakte oder Jalousieaktoren.
Ist der Server auf dem HMC läuft zu diesen Zeitpunkten down, wird ein falscher Status (naturgemäss) zurückgegeben.
Mir würde es genügen, wenn beim Start von HMC alle Kanäle und deren Zustände gelesen würden und dann im Cache landen.
Es scheint auch so zu sein, dass wenn man HMC nach einem bestimmten Zustand fragt, der noch nicht per Push HMC mitgeteilt wurde, ein leerer Wert zurück gegeben wird.
z.B. GET "Rolladen.xyz" LEVEL -> liefert "" zurück. Erst wenn die Jalousie bewegt wurde und somit der neue Level der Logikschicht gepusht wurde, liefert die selbe Anfrage den korrekten Wert (z.B. 0.5).
Gibt es eine Möglichkeit, beim nicht-existierenden Cache-Entry erst den tatsächlichen Wert zu lesen und dann diesen im Cache abzulegen? Weitere pushes würden entsprechend den cache updaten.
Gruß
Riggert