Reading aus Telnet Abfrage

Begonnen von sparkiie, 07 Juni 2019, 22:43:55

Vorheriges Thema - Nächstes Thema

sparkiie

Ich habe die Möglichkeit die Batterien meiner Solaranlage per Telnet abzurufen.
Unter Windows funktioniert dies ganz einfach per Konsole. Wenn ich bspw. telnet 192.168.0.120 5910 aufrufe, dann erhalte ich die Werte als Antwort.

# 204#3;07.06.19 22:37:55;;;;;;;;;;;;;;;;;;;;;;;71.00;74.00;;;;;;-3.77;-2.33;-2.37;;;;;;74.00;71.00;71.00;;;;;;D;D;D;;;;;;N;N;N;;;;;;3.314;3.315;3.315;;;;;;3.311;3.310;3.311;;;;;;49.69;49.69;49.68;72.00;3.00;

Mit welchem Modul könnte ich die Daten ins FHEM bringen?


Prof. Dr. Peter Henning

Anstatt auf ein externes Blog mit lustiger Rechtschreibung zu verweisen, hätte besser ein Hinweis auf das Modul ECMD da gestanden.

LG

pah

sparkiie

#3
Prima! Damit habe ich schon mal einen Ansatz.
Leider jedoch fehlt mir ein bisschen die Erklärung zum Modul.

Ich habe die Definition hinbekommen und erhalte per get .... raw {} auch das raw Reading.

Das Modul wechselt aktuell sekündlich zwischen opened und disconnected.
Ich denke das liegt daran, dass die Verbindung von der Gegenseite nach Übermittlung der Daten beendet wird. Kann man dem Modul sagen, es soll nur einmal abfragen, die Antwort ausgeben und fertig?

Ein UserReading auf das raw Reading funktioniert leider auch nicht?

Nutzt vielleicht jemand das Modul in einer ähnlichen Anwendung?

define pylontech_test ECMD telnet 192.168.0.120:5910
attr pylontech_test logTraffic 1
attr pylontech_test userReadings Test {ReadingsVal($name,'raw',0)}

setstate pylontech_test disconnected
setstate pylontech_test 2019-06-08 11:05:08 raw # 204#3;;08.06.19 11:05:09;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;61.00;;67.00;;;;;;;;;;;;13.08;;13.45;;13.38;;;;;;;;;;;;61.00;;67.00;;67.00;;;;;;;;;;;;C;;C;;C;;;;;;;;;;;;N;;N;;N;;;;;;;;;;;;3.365;;3.361;;3.360;;;;;;;;;;;;3.356;;3.354;;3.354;;;;;;;;;;;;50.40;;50.37;;50.35;;65.00;;3.00;;
\


Im Log sieht es so aus:
2019-06-08 11:13:00 ECMD pylontech_test CONNECTED
2019-06-08 11:13:00 ECMD pylontech_test UNKNOWNCODE 3;08.06.19 11:12:57;;;;;;;;;;;;;;;;;;;;;;;64.00;71.00;;;;;;15.02;16.19;16.36;;;;;;64.00;71.00;70.00;;;;;;C;C;C;;;;;;N;N;N;;;;;;3.375;3.378;3.378;;;;;;3.368;3.370;3.372;;;;;;50.57;50.61;50.63;68.33;3.00; 
2019-06-08 11:13:00 ECMD pylontech_test DISCONNECTED
2019-06-08 11:13:00 ECMD pylontech_test CONNECTED
2019-06-08 11:13:00 ECMD pylontech_test UNKNOWNCODE 3;08.06.19 11:12:57;;;;;;;;;;;;;;;;;;;;;;;64.00;71.00;;;;;;15.02;16.19;16.36;;;;;;64.00;71.00;70.00;;;;;;C;C;C;;;;;;N;N;N;;;;;;3.375;3.378;3.378;;;;;;3.368;3.370;3.372;;;;;;50.57;50.61;50.63;68.33;3.00; 
2019-06-08 11:13:00 ECMD pylontech_test DISCONNECTED
2019-06-08 11:13:00 ECMD pylontech_test CONNECTED
2019-06-08 11:13:00 ECMD pylontech_test UNKNOWNCODE 3;08.06.19 11:12:57;;;;;;;;;;;;;;;;;;;;;;;64.00;71.00;;;;;;15.02;16.19;16.36;;;;;;64.00;71.00;70.00;;;;;;C;C;C;;;;;;N;N;N;;;;;;3.375;3.378;3.378;;;;;;3.368;3.370;3.372;;;;;;50.57;50.61;50.63;68.33;3.00; 
2019-06-08 11:13:00 ECMD pylontech_test DISCONNECTED
2019-06-08 11:13:00 ECMD pylontech_test CONNECTED
2019-06-08 11:13:00 ECMD pylontech_test UNKNOWNCODE 3;08.06.19 11:12:57;;;;;;;;;;;;;;;;;;;;;;;64.00;71.00;;;;;;15.02;16.19;16.36;;;;;;64.00;71.00;70.00;;;;;;C;C;C;;;;;;N;N;N;;;;;;3.375;3.378;3.378;;;;;;3.368;3.370;3.372;;;;;;50.57;50.61;50.63;68.33;3.00; 
2019-06-08 11:13:00 ECMD pylontech_test DISCONNECTED


Meine Behelfslösung:
define Solar_Update at +*00:01:00 attr pylontech_test stop 0; get pylontech_test raw 0; attr pylontech_test stop 1;

Prof. Dr. Peter Henning

Das Modul wird ganz oft genutzt, auch im Zusammenhang mit EBUS. Dafür gibt es einen eigenen Forenbereich, bitte mal dort nachsehen

LG

pah

sparkiie

Das ist mir eine Nummer zu hoch.
Ich finde auch nichts, was meinem Anwendungsfall irgendwie ähnelt. Ich werde es wohl bei der Behelfslösung lassen.
Schön wäre ein set active/inactive oder connect/disconnect.
Beim setzen von attr stop will fhem immer wieder gespeichert werden...