Zitat von Nanosonde
Beitrag anzeigen
Ankündigung
Einklappen
Keine Ankündigung bisher.
LBS 19001435 / 19001436 Homematic / Homematic IP Einbindung
Einklappen
X
-
hab noch log gefunden
>>XMLRPC server script START<<
array(23) {
["HTTP_USER_AGENT"]=>
string(12) "XMLRPC++ 0.7"
["HTTP_HOST"]=>
string(11) "10.2.1.3:80"
["CONTENT_TYPE"]=>
string(8) "text/xml"
["CONTENT_LENGTH"]=>
string(3) "748"
["PATH"]=>
string(29) "/sbin:/usr/sbin:/bin:/usr/bin"
["SERVER_SIGNATURE"]=>
string(0) ""
["SERVER_SOFTWARE"]=>
string(32) "Apache/2.2.15 (CentOS) PHP/5.3.3"
["SERVER_NAME"]=>
string(8) "10.2.1.3"
["SERVER_ADDR"]=>
string(8) "10.2.1.3"
["SERVER_PORT"]=>
string(2) "80"
["REMOTE_ADDR"]=>
string(10) "10.2.1.111"
["DOCUMENT_ROOT"]=>
string(20) "/usr/local/edomi/www"
["SERVER_ADMIN"]=>
string(14) "root@localhost"
["SCRIPT_FILENAME"]=>
string(57) "/usr/local/edomi/www/data/liveproject/lbs/EXE19001435.php"
["REMOTE_PORT"]=>
string(5) "52178"
["GATEWAY_INTERFACE"]=>
string(7) "CGI/1.1"
["SERVER_PROTOCOL"]=>
string(8) "HTTP/1.1"
["REQUEST_METHOD"]=>
string(4) "POST"
["QUERY_STRING"]=>
string(0) ""
["REQUEST_URI"]=>
string(37) "/data/liveproject/lbs/EXE19001435.php"
["SCRIPT_NAME"]=>
string(37) "/data/liveproject/lbs/EXE19001435.php"
["PHP_SELF"]=>
string(37) "/data/liveproject/lbs/EXE19001435.php"
["REQUEST_TIME"]=>
int(1516473765)
}
">>REQUEST<< :<?xml version="1.0"?>\r\n<methodCall><methodName>system. multicall<\/methodName>\r\n<params><param><value><array><data> <value><struct><member><name>methodName<\/name><value>event<\/value><\/member><member><name>params<\/name><value><array><data><value>edomi_hm-1047202504<\/value><value>OEQ0699032:1<\/value><value>TEMPERATURE<\/value><value><double>23.100000<\/double><\/value><\/data><\/array><\/value><\/member><\/struct><\/value><value><struct><member><name>methodName<\/name><value>event<\/value><\/member><member><name>params<\/name><value><array><data><value>edomi_hm-1047202504<\/value><value>OEQ0699032:1<\/value><value>HUMIDITY<\/value><value><i4>40<\/i4><\/value><\/data><\/array><\/value><\/member><\/struct><\/value><\/data><\/array><\/value><\/param><\/params><\/methodCall>\r\n"
RPC method system.multicall()
array(2) {
[0]=>
array(2) {
["methodName"]=>
string(5) "event"
["params"]=>
array(4) {
[0]=>
string(19) "edomi_hm-1047202504"
[1]=>
string(12) "OEQ0699032:1"
[2]=>
string(11) "TEMPERATURE"
[3]=>
float(23.1)
}
}
[1]=>
array(2) {
["methodName"]=>
string(5) "event"
["params"]=>
array(4) {
[0]=>
string(19) "edomi_hm-1047202504"
[1]=>
string(12) "OEQ0699032:1"
[2]=>
string(8) "HUMIDITY"
[3]=>
int(40)
}
}
}
event(edomi_hm-1047202504, OEQ0699032:1, TEMPERATURE, 23.1)
da steht der richtige wert da
Temperatur 23.1
[COLOR=inherit !important]
[/COLOR]
Zuletzt geändert von ladnermi; 20.01.2018, 19:48. Grund: da steht der richtige wert da Temperatur 23.1
Einen Kommentar schreiben:
-
Es gibt quasi eine globale Message Queue für Events. Die bleibt gleich, solange der Event Receiver nicht neu gestartet wird.Zitat von ladnermi Beitrag anzeigen
die gleiche msg queue id
Dann hat jede Instanz eines Device LBS jeweils noch eine eigene Message zur internen Kommunikation zwischen LBS-Teil und EXE-Teil.
Welche meinst Du?
Einen Kommentar schreiben:
-
die gleiche msg queue idZitat von Nanosonde Beitrag anzeigen
Bitte etwas genauer. Was meinst Du mit "gleiche Nummer wieder"`?
Ich habe die Version 0.5 online gestellt, die den Fehler mit msg_send behebt.
Die Event Message Queue ID kann jetzt auch ohne diesen Fehler über interne KOs gemacht werden.
Einen Kommentar schreiben:
-
Bitte etwas genauer. Was meinst Du mit "gleiche Nummer wieder"`?Zitat von ladnermi Beitrag anzeigenich werde es morgen genauer testen
wenn ich den Wert der klemme E1 ändere
und dann E1 auf 2 STOP und wieder 1 Starte
bekomme ich die gleiche nummer wieder
Ich habe die Version 0.5 online gestellt, die den Fehler mit msg_send behebt.
Die Event Message Queue ID kann jetzt auch ohne diesen Fehler über interne KOs gemacht werden.
Einen Kommentar schreiben:
-
ich werde es morgen genauer testen
wenn ich den Wert der klemme E1 ändere
und dann E1 auf 2 STOP und wieder 1 Starte
bekomme ich die gleiche nummer wieder
Einen Kommentar schreiben:
-
Wenn Du selbst einen aktives GetValue ausführst, sollte das immer gehen. Das hat aber nichts mit dem Event Receiver zu tun.Zitat von ladnermi Beitrag anzeigenhabb es jetzt nocheinmal genau wie bei dir nachgebaut
2018-01-20 18_52_05-EDOMI · Administration.png
nach dem starten
wenn ich jetzt bei E10 1 eingeben bekomme ich die daten
nuss ich noch was auf der CCU2 einstellen oder bei Edomi??
Starte Edomi mal neu oder setze den Eingang der Klemme nochmal auf "leer" in der Edomi Liveansicht1, damit Du siehst, wann neue Werte reinkommen. (Vielleicht sollte ich noch einen Ausgang mit letztem Zeitstempel hinzufügen.)
Dann solltest Du mal 10-20 Minuten oder so warten, um zu gucken, ob neue Werte per Event reinkommen.
Alternativ kannst Du auch einfach mal einen anderen Parameter nehmen, den Du in der CCU2 selbst ändern kannst.
Im Augenblick der Änderung sollte der Edomi-LBS aktualisiert werden. (Zum Beispiel SOLL-Temperatur SET_POINT_TEMPERATURE)
Du musst auf der CCU2 und Edomi sonst nichts weiter machen.
Ich kann Deinen Fehler mit "msg_snd failed" übrigens nachstellen. Das Problem tritt wohl auf, weil die Message Queue ID über ein internes KO erst später verfügbar ist, und beim Start des Device LBS noch nicht da ist. Dachte eigentlich, dass ich das Problem abgefangen hätte, aber wohl doch nicht....
Einen Kommentar schreiben:
-
anbei das logZitat von Nanosonde Beitrag anzeigenGenau.
Hast Du immer noch den Fehler im Log bzgl. msgsnd failed?
Fehler Log gibt es jetzt keines mehr
anbei die anderen log
{EDOMI,CUSTOMLOG_HM_Event_Receiver-LBS19001435.htm,20.01.2018,18:56:02,027837,42151} Zeitstempel ms PID LogLevel Meldung 2018-01-20 18:56:02 027755 42151 info EXE19001435 [v0.1]: Homematic Event Receiver daemon stopped (1278) 2018-01-20 18:56:32 065479 42492 info EXE19001435 [v0.1]: Starting Homematic Event Receiver daemon (1278) 2018-01-20 18:56:32 466626 42492 info EXE19001435 [v0.1]: HM Device LBS register: (1278) 2018-01-20 18:56:32 466746 42492 info EXE19001435 [v0.1]: ================ ARRAY/OBJECT START ================ 2018-01-20 18:56:32 466824 42492 info EXE19001435 [v0.1]: {"system":"edomi_hm","lbsid":"1379","address":"OEQ 0699032","outparams":{"2.LOWBAT_REPORTING":1,"2.AC TUAL_TEMPERATURE":2,"2.CONTROL_MODE":3,"2.SET_TEMP ERATURE":4}} 2018-01-20 18:56:32 466888 42492 info EXE19001435 [v0.1]: ================ ARRAY/OBJECT END ================ {EDOMI,CUSTOMLOG_HM_Gen_Device-LBS19001436.htm,20.01.2018,18:56:32,283188,42469} Zeitstempel ms PID LogLevel Meldung 2018-01-20 18:56:32 283099 42469 debug LBS19001436 [v0.4]: LBS Homematic Generic Device started (1379) 2018-01-20 18:56:32 285342 42469 debug LBS19001436 [v0.4]: MSGQID generated: 1943244092 (1379) 2018-01-20 18:56:32 287009 42469 debug LBS19001436 [v0.4]: Message: (1379) 2018-01-20 18:56:32 287118 42469 debug LBS19001436 [v0.4]: ================ ARRAY/OBJECT START ================ 2018-01-20 18:56:32 287200 42469 debug LBS19001436 [v0.4]: {"start":1,"evrxqueueupdated":"1973797971"} 2018-01-20 18:56:32 287264 42469 debug LBS19001436 [v0.4]: ================ ARRAY/OBJECT END ================ 2018-01-20 18:56:32 287960 42469 debug LBS19001436 [v0.4]: MSGQID used: 1943244092 (1379) 2018-01-20 18:56:32 291939 42469 debug LBS19001436 [v0.4]: LBS Homematic Generic Device ended (1379) 2018-01-20 18:56:32 394814 42508 debug EXE19001436 [v0.4]: MSGQID: 1943244092 (1379) 2018-01-20 18:56:32 397897 42508 debug EXE19001436 [v0.4]: API is HM using port 2001 (1379) 2018-01-20 18:56:32 402831 42508 debug EXE19001436 [v0.4]: Command received by daemon: start (1379) 2018-01-20 18:56:32 403984 42508 debug EXE19001436 [v0.4]: Starting Homematic Generic Device daemon (1379) 2018-01-20 18:56:32 406018 42508 debug EXE19001436 [v0.4]: LBS registered at event receiver LBS (1379) 2018-01-20 18:56:32 406136 42508 debug EXE19001436 [v0.4]: ================ ARRAY/OBJECT START ================ 2018-01-20 18:56:32 406214 42508 debug EXE19001436 [v0.4]: {"register":{"system":"edomi_hm","lbsid":"1379","a ddress":"OEQ0699032","outparams":{"2.LOWBAT_REPORT ING":1,"2.ACTUAL_TEMPERATURE":2,"2.CONTROL_MODE":3 ,"2.SET_TEMPERATURE":4}}} 2018-01-20 18:56:32 406277 42508 debug EXE19001436 [v0.4]: ================ ARRAY/OBJECT END ================ 2018-01-20 18:56:32 409343 42508 debug EXE19001436 [v0.4]: Command received by daemon: evrxqueueupdated (1379) 2018-01-20 18:56:32 411112 42508 debug EXE19001436 [v0.4]: Msg Queue to event receiver updated: (1379) 2018-01-20 18:56:32 411201 42508 debug EXE19001436 [v0.4]: ================ ARRAY/OBJECT START ================ 2018-01-20 18:56:32 411258 42508 debug EXE19001436 [v0.4]: "1973797971" 2018-01-20 18:56:32 411308 42508 debug EXE19001436 [v0.4]: ================ ARRAY/OBJECT END ================ 2018-01-20 18:56:32 413373 42508 debug EXE19001436 [v0.4]: Homematic Generic Device daemon stopped (1379)
Einen Kommentar schreiben:
-
habb es jetzt nocheinmal genau wie bei dir nachgebaut
2018-01-20 18_52_05-EDOMI · Administration.png
nach dem starten
wenn ich jetzt bei E10 1 eingeben bekomme ich die daten
nuss ich noch was auf der CCU2 einstellen oder bei Edomi??
Einen Kommentar schreiben:
-
Genau.
Hast Du immer noch den Fehler im Log bzgl. msgsnd failed?
Einen Kommentar schreiben:
-
2018-01-20 18_48_45-EDOMI · Administration.pngZitat von Nanosonde Beitrag anzeigen
Oh, das ist merkwürdig.
Könntest Du bitte mal den Ausgang des Event Receiver DIREKT mit den Eingängen E4 der Device LBS verbinden zum Testen?
Unbenannt7.PNGAngehängte Dateien
Einen Kommentar schreiben:
-
Oh, das ist merkwürdig.Zitat von ladnermi Beitrag anzeigenok hab es jetzt getest beim schein es aber nicht zu funktionieren
Könntest Du bitte mal den Ausgang des Event Receiver DIREKT mit den Eingängen E4 der Device LBS verbinden zum Testen?
Unbenannt7.PNG
Einen Kommentar schreiben:
-
ok hab es jetzt getest beim schein es aber nicht zu funktionierenZitat von Nanosonde Beitrag anzeigen
Aber genau dafür ist ja der Homematic Event Receiver LB 19001435 da.
Du kannst den Homematic Generic Device LBS 19001436 zwar ohne den Event Receiver LBS benutzen, dann verzichtest Du aber auf die Echtzeitbenachrichtigungen (Events) der CCU2, wenn sich Werte ändern.
Ich denke, dass der die Verwendung von beiden LBS eher der Standardfall ist. Auch gerade dann, wenn nicht nur EDOMI irgendwelche Homemati-Geräte steuert, sondern die CCU2 durch interne Programme auch. Oder auch, wenn externe Apps wie Pocket Home Control verwendet werden.
Die Verbindung zwischen beiden LBS läuft über sog. Messages Queues ab, die von Linux zur Verfügung gestellt werden. Das nennt sich Interprozesskommunikation (IPC).
Über diese Message Queue, die ich einfach Event Queue genannt habe, registrieren sich alle Generic Device LBS bei dem Event Receiver. Das hat aber nichts mit der CCU2 oder so selbst zu tun.
2018-01-20 17_04_03-EDOMI · Administration.png
log vom hm_xml path?? mit :
string(29) "/sbin:/usr/sbin:/bin:/usr/bin"
["HTTP_USER_AGENT"]=>
string(12) "XMLRPC++ 0.7"
["HTTP_HOST"]=>
string(11) "10.2.x.x:80"
["CONTENT_TYPE"]=>
string(8) "text/xml"
["CONTENT_LENGTH"]=>
string(4) "5137"
["PATH"]=>
string(29) "/sbin:/usr/sbin:/bin:/usr/bin"
["SERVER_SIGNATURE"]=>
string(0) ""
["SERVER_SOFTWARE"]=>
string(32) "Apache/2.2.15 (CentOS) PHP/5.3.3"
["SERVER_NAME"]=>
string(8) "10.2.x.x"
["SERVER_ADDR"]=>
string(8) "10.2.x.x"
["SERVER_PORT"]=>
string(2) "80"
["REMOTE_ADDR"]=>
string(10) "10.2.x.xxx"
["DOCUMENT_ROOT"]=>
string(20) "/usr/local/edomi/www"
["SERVER_ADMIN"]=>
string(14) "root@localhost"
["SCRIPT_FILENAME"]=>
string(57) "/usr/local/edomi/www/data/liveproject/lbs/EXE19001435.php"
["REMOTE_PORT"]=>
string(5) "41539"
["GATEWAY_INTERFACE"]=>
string(7) "CGI/1.1"
["SERVER_PROTOCOL"]=>
string(8) "HTTP/1.1"
["REQUEST_METHOD"]=>
string(4) "POST"
["QUERY_STRING"]=>
string(0) ""
["REQUEST_URI"]=>
string(37) "/data/liveproject/lbs/EXE19001435.php"
["SCRIPT_NAME"]=>
string(37) "/data/liveproject/lbs/EXE19001435.php"
["PHP_SELF"]=>
string(37) "/data/liveproject/lbs/EXE19001435.php"
["REQUEST_TIME"]=>
int(1516464456)
im log steht
File: /usr/local/edomi/www/data/liveproject/lbs/EXE19001436.php | Error: 2 | Line: 187 | msg_send(): msgsnd failed: Invalid argument (1279)
2018-01-20 17:33:12 568423 37454 debug EXE19001436 [v0.4]: Starting Homematic Generic Device daemon (1279) 2018-01-20 17:33:12 569055 37454 debug EXE19001436 [v0.4]: File: /usr/local/edomi/www/data/liveproject/lbs/EXE19001436.php | Error: 2 | Line: 187 | msg_send(): msgsnd failed: Invalid argument (1279) 2018-01-20 17:33:12 569588 37454 debug EXE19001436 [v0.4]: LBS registered at event receiver LBS (1279) 2018-01-20 17:33:12 569670 37454 debug EXE19001436 [v0.4]: ================ ARRAY/OBJECT START ================ 2018-01-20 17:33:12 569761 37454 debug EXE19001436 [v0.4]: {"register":{"system":"edomi_hm","lbsid":"1279","a ddress":"OEQ0699032","outparams":{"2.LOWBAT_REPORT ING":1,"2.ACTUAL_TEMPERATURE":2,"2.CONTROL_MODE":3 ,"2.SET_TEMPERATURE":4}}} 2018-01-20 17:33:12 569825 37454 debug EXE19001436 [v0.4]: ================ ARRAY/OBJECT END ================ 2018-01-20 17:33:12 577786 37454 debug EXE19001436 [v0.4]: Command received by daemon: getvalue1 (1279) 2018-01-20 17:33:12 579382 37454 debug EXE19001436 [v0.4]: GetValue for param 1 (1279) 2018-01-20 17:33:12 592480 37458 debug EXE19001436 [v0.4]: MSGQID: 1222271881 (1280) 2018-01-20 17:33:12 596349 37458 debug EXE19001436 [v0.4]: API is HM using port 2001 (1280) 2018-01-20 17:33:12 598891 37458 debug EXE19001436 [v0.4]: Command received by daemon: start (1280) 2018-01-20 17:33:12 599667 37458 debug EXE19001436 [v0.4]: Starting Homematic Generic Device daemon (1280) 2018-01-20 17:33:12 600697 37458 debug EXE19001436 [v0.4]: File: /usr/local/edomi/www/data/liveproject/lbs/EXE19001436.php | Error: 2 | Line: 187 | msg_send(): msgsnd failed: Invalid argument (1280) 2018-01-20 17:33:12 604074 37458 debug EXE19001436 [v0.4]: LBS registered at event receiver LBS (1280) 2018-01-20 17:33:12 604170 37458 debug EXE19001436 [v0.4]: ================ ARRAY/OBJECT START ================ 2018-01-20 17:33:12 604244 37458 debug EXE19001436 [v0.4]: {"register":{"system":"edomi_hm","lbsid":"1280","a ddress":"OEQ0699032","outparams":{"2.ACTUAL_HUMIDI TY":1,"2.AUTO_MODE":2,"2.MANU_MODE":3,"2.BOOST_MOD E":4}}} 2018-01-20 17:33:12 604309 37458 debug EXE19001436 [v0.4]: ================ ARRAY/OBJECT END ================ Zuletzt geändert von ladnermi; 20.01.2018, 17:47.
Einen Kommentar schreiben:
-
Achso:
Weiß jemand, ob es eine maschinenlesbare Form aller Homematic bzw. Homematic-IP Geräte gibt, die alle Parameter, Werte, Wertetypen, etc. definieren?
Ich kenne nur die beiden PDF-Dateien von EQ-3 und, dass man über XMLRPC die ParamSetDescription für die VALUES bekommen kann.
Mir geht es darum, dass es doch evtl. auch praktisch wäre, ein Generatorskript für spezifische Homematic Device LBS zu bauen, mit dem dann automatisch diese LBS generiert werden.
So könnte man auf Knopfdruck für alle Homematic-Geräte einen LBS bauen lassen.
Einen Kommentar schreiben:

Einen Kommentar schreiben: