BIN-RPC Live Converter
Moderator: Co-Administratoren
Re: BIN-RPC Live Converter
In welchen Format brauchst du die Daten?
so ein kleiner Converter von XML-RPC auf irgendwas ist ja kein großer Akt
so ein kleiner Converter von XML-RPC auf irgendwas ist ja kein großer Akt
-
- Beiträge: 596
- Registriert: 08.08.2009, 10:29
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 1 Mal
Re: BIN-RPC Live Converter
So, habs doch per Fernzugang eben mal schnell zum laufen gebracht.
telnet meldet nun keine Fehler mehr, aber Historian zeigt das Cux Device noch immer nicht an.
Ich weiß nur das Cacti die Daten via "Scipt/Command" abruft mittels z.B. "echo CGET HEQ0030253:1 | nc localhost 6770 -q 1"
Man kann auch auf dem Linux mittel "telnet localhost 6770" und anschließenden "CGET HEQ0030253:1" Daten erzeugen. Die Ausgabe im telnet sieht dann z.B. so aus "HUMIDITY:76 TEMPERATURE:23"
Aber du meinst wohl sicher was anderes, oder?
Kein großer Akt ist gut, wenn man in der Materie steckt sicher nicht und um so dankbarer bin ich (und sicher auch viele andere) das ihr uns eben mal schnell helfen könnt und das auch macht.
telnet meldet nun keine Fehler mehr, aber Historian zeigt das Cux Device noch immer nicht an.
Wenn ich genau wüßte was du meinst würde ich dir gerne antwortenIn welchen Format brauchst du die Daten?
so ein kleiner Converter von XML-RPC auf irgendwas ist ja kein großer Akt
Ich weiß nur das Cacti die Daten via "Scipt/Command" abruft mittels z.B. "echo CGET HEQ0030253:1 | nc localhost 6770 -q 1"
Man kann auch auf dem Linux mittel "telnet localhost 6770" und anschließenden "CGET HEQ0030253:1" Daten erzeugen. Die Ausgabe im telnet sieht dann z.B. so aus "HUMIDITY:76 TEMPERATURE:23"
Aber du meinst wohl sicher was anderes, oder?
Kein großer Akt ist gut, wenn man in der Materie steckt sicher nicht und um so dankbarer bin ich (und sicher auch viele andere) das ihr uns eben mal schnell helfen könnt und das auch macht.
Viele Grüße, Stefan!
Re: BIN-RPC Live Converter
Die CUxD Geräte werden nicht von allein erscheinen Hostorian kennt dieses Interface nicht, ggf. baut Matthias den irgendwann ein
aber zurück zu Cacti
hat das ding selbst eine Schnittstelle, wo man dem die Daten proaktiv einliefern kann?
Also quasi Daten an Cacti senden und nicht von Cacti abholen lassen
Falls ja, kann man mit sehr wenig Aufwand die Events von CUxD an Cacti weiterleiten
aber zurück zu Cacti
hat das ding selbst eine Schnittstelle, wo man dem die Daten proaktiv einliefern kann?
Also quasi Daten an Cacti senden und nicht von Cacti abholen lassen
Falls ja, kann man mit sehr wenig Aufwand die Events von CUxD an Cacti weiterleiten
-
- Beiträge: 596
- Registriert: 08.08.2009, 10:29
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 1 Mal
Re: BIN-RPC Live Converter
Ich glaube es gibt nur Collection Methoden.
Einmal "DataQueries" und einmal "Data Input Methods", siehe Bilder.
Einmal "DataQueries" und einmal "Data Input Methods", siehe Bilder.
Viele Grüße, Stefan!
-
- Beiträge: 596
- Registriert: 08.08.2009, 10:29
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 1 Mal
Re: BIN-RPC Live Converter
Aso,
(vorsicht, blöde Annahme!) kann man z.B. die Werte des Stromzählers nicht aktiv in eine Textdatei die immer nur die letzten Werte enthält schreiben lassen und dann wiederum via Cacti im Minutentakt auslesen, oder irgendwie so?
(vorsicht, blöde Annahme!) kann man z.B. die Werte des Stromzählers nicht aktiv in eine Textdatei die immer nur die letzten Werte enthält schreiben lassen und dann wiederum via Cacti im Minutentakt auslesen, oder irgendwie so?
Viele Grüße, Stefan!
Re: BIN-RPC Live Converter
du kannst auch minütlich bei cuxd nachfragen
geht auch mit aktueller Version
http://homematic-forum.de/forum/viewtop ... =31&t=8070
Lade dir die Skripte runter, damit kannst du die CCU abfragen
per JSON kriegst du auch so alle Daten inkl. CUxD Geräte, allerdings dauert es länger und bei zu vielen Sessions wird Webinterface blockiert, also logout nicht vergessen
Wenn du per XML-RPC die Daten abfragen willst, brauchst du zuerst den Converter, dann kannst du mit XML_RPC Klasse auch CUxD abfragen
Gruß
Leo
geht auch mit aktueller Version
http://homematic-forum.de/forum/viewtop ... =31&t=8070
Lade dir die Skripte runter, damit kannst du die CCU abfragen
per JSON kriegst du auch so alle Daten inkl. CUxD Geräte, allerdings dauert es länger und bei zu vielen Sessions wird Webinterface blockiert, also logout nicht vergessen
Wenn du per XML-RPC die Daten abfragen willst, brauchst du zuerst den Converter, dann kannst du mit XML_RPC Klasse auch CUxD abfragen
Gruß
Leo
Re: BIN-RPC Live Converter
Hallo!
Ich versuche den Konverter gerade mit den neuesten CUxD- und historian-Versionen zum laufen zu bringen. Bis jetzt habe ich aber noch nix zum funktionieren gebracht...
Der Konverter ist auf dem gleichen Rechner wie der historian, ein Telnet auf localhost 8701 geht und verbindet sich mit dem converter.
Nur wenn ich den historian damit verbinden will, dann schmeisst der historian eine Fehlermeldung, weil er init nicht absetzen kann.
Ein tcpdump auf lo zeigt mir auch die Anfrage des historian, aber keine Antwort des konverters:
Auf der Netzwerkseite kommt aus dem Converter garnix raus, die ip der CCU ist aber im hmxmlbin eingetragen.
Die "richtige" Antwort wäre anscheinend (abgefangene Anfrage des historian direkt an die CCU):
Was mir sonst noch passiert ist: Mein erster Fehler mit hmxmlbin war natürlich ein fehlendes xmlrpc im php, hier währe eine entsprechende Fehlermeldung des Scripts sehr praktisch.
Kann ich den Konverter mit anderen Programmen noch testen?
cu,
Michael
Ich versuche den Konverter gerade mit den neuesten CUxD- und historian-Versionen zum laufen zu bringen. Bis jetzt habe ich aber noch nix zum funktionieren gebracht...
Der Konverter ist auf dem gleichen Rechner wie der historian, ein Telnet auf localhost 8701 geht und verbindet sich mit dem converter.
Nur wenn ich den historian damit verbinden will, dann schmeisst der historian eine Fehlermeldung, weil er init nicht absetzen kann.
Ein tcpdump auf lo zeigt mir auch die Anfrage des historian, aber keine Antwort des konverters:
Code: Alles auswählen
POST / HTTP/1.1
Content-Length: 196
Content-Type: text/xml
Cache-Control: no-cache
Pragma: no-cache
User-Agent: Java/1.6.0_17
Host: 127.0.0.1:8701
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive
<?xml version="1.0" encoding="ISO-8859-1"?>
<methodCall>
.<methodName>system.multicall</methodName>
.<params>
..<param><value><array><data></data></array></value></param>
.</params>
</methodCall>
wrong type
Die "richtige" Antwort wäre anscheinend (abgefangene Anfrage des historian direkt an die CCU):
Code: Alles auswählen
POST / HTTP/1.1
Content-Length: 196
Content-Type: text/xml
Cache-Control: no-cache
Pragma: no-cache
User-Agent: Java/1.6.0_17
Host: 192.168.2.8:2000
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive
<?xml version="1.0" encoding="ISO-8859-1"?>
<methodCall>
.<methodName>system.multicall</methodName>
.<params>
..<param><value><array><data></data></array></value></param>
.</params>
</methodCall>
HTTP/1.1 200 OK
Server: XMLRPC++ 0.7
Content-Type: text/xml
Content-length: 138
<?xml version="1.0"?>
<methodResponse><params><param>
.<value><array><data></data></array></value>
</param></params></methodResponse>
Kann ich den Konverter mit anderen Programmen noch testen?
cu,
Michael
Re: BIN-RPC Live Converter
Hallo
um die Funktionsweise des Konverters zu testen musst du folgendes machen
lade folgendes Skript runter: http://homematic-forum.de/forum/viewtop ... =31&t=8070
Ersetze die Beispieldatei bzw. erstelle neue mit dem nachfolgenden Inhalt (Pfade und URL anpassen)
Damit kannst due die Funktionsweise des Konverters testen.
Außerdem ist es hilfreich die Debug Option von FALSE auf TRUE zu setzen und Syslog beobachten
Bezüglich der Abhängigkeiten lasse ich mir was einfallen
um die Funktionsweise des Konverters zu testen musst du folgendes machen
lade folgendes Skript runter: http://homematic-forum.de/forum/viewtop ... =31&t=8070
Ersetze die Beispieldatei bzw. erstelle neue mit dem nachfolgenden Inhalt (Pfade und URL anpassen)
Damit kannst due die Funktionsweise des Konverters testen.
Außerdem ist es hilfreich die Debug Option von FALSE auf TRUE zu setzen und Syslog beobachten
Bezüglich der Abhängigkeiten lasse ich mir was einfallen
Code: Alles auswählen
<?php
#error_reporting(0);
include_once('HM_PHP_connect/lib/client.xmlrpc.php');
include_once('HM_PHP_connect/lib/client.http.php');
if(!function_exists('curl_init') || !function_exists('xmlrpc_encode_request'))
{
die('modules curl and xml-rpc are required');
}
try
{
# manually set host/port
$api = new client_xmlrpc(array('url'=>'http://XXX.XXX.XXX.XXX:8701'));
# Step 2 get device list
// Call call any function by method_name(param1, param2, param3)
#$devlist=$api->listDevices();
$method = 'system.listMethods';
print_r($api->$method());
$devlist=$api->listDevices();
print_r($devlist);
}
catch (Exception $e)
{
print_r($e->getMessage());
}
?>
Re: BIN-RPC Live Converter
Hallo!
Erstmal danke, dein Testscript funktioniert einwandfrei, es wird ein Devicelisting angezeigt und sehr viele Einträge im syslog angelegt.
Jetzt kommt wohl das Problem, dass der historian das ganze etwas anders formatiert, als erwartet. Ein bisschen hab ich das Gefühl, dass es hier an den Zeilenendzeichen liegt:
Aufruf mit den Original-Daten des historian:
Aufruf mit entfernten Zeilenrücklauf:
Dementsprechend dürfte es ja nur eine kleiner Fehler im Parsen der Daten sein.
cu,
Michael
Erstmal danke, dein Testscript funktioniert einwandfrei, es wird ein Devicelisting angezeigt und sehr viele Einträge im syslog angelegt.
Jetzt kommt wohl das Problem, dass der historian das ganze etwas anders formatiert, als erwartet. Ein bisschen hab ich das Gefühl, dass es hier an den Zeilenendzeichen liegt:
Aufruf mit den Original-Daten des historian:
Code: Alles auswählen
nc 127.0.0.1 8701 < historianfirstcall.txt
wrong type
Code: Alles auswählen
nc 127.0.0.1 8701 < historianfirstcall2.txt
HTTP/1.1
200 OK
Server: HM_RPC_ROUTER 0.1
Content-length: 106
Content-type: text/xml
<?xml version="1.0" encoding="utf-8"?>
<params>
<param>
<value>
<string/>
</value>
</param>
</params>
cu,
Michael
- Dateianhänge
-
- historianfirstcall2.txt
- Modifizierte Zeilenenden
- (428 Bytes) 203-mal heruntergeladen
-
- historianfirstcall.txt
- Original Aufruf
- (438 Bytes) 211-mal heruntergeladen
Re: BIN-RPC Live Converter
Danke
es kann in der Tat an "newline" Zeichen liegen, ich seh zu. dass ich da kurzfristig einen fix einbaue
Gruß
Leo
es kann in der Tat an "newline" Zeichen liegen, ich seh zu. dass ich da kurzfristig einen fix einbaue
Gruß
Leo