FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: HCS am 29 Oktober 2014, 21:24:46

Titel: filelog get - Ergebnis als json
Beitrag von: HCS am 29 Oktober 2014, 21:24:46
Ich möchte gerne Daten aus einem filelog als json bekomen.

.../fhem?XHR=1&cmd=get FileLog_TX29DTH_Cellar_Hobby - - 2014-10-29 2:::

liefert

2014-10-29_00:00:33 TX29DTH_Cellar_Hobby values: T: 18.3 H: 71.2
2014-10-29_00:01:41 TX29DTH_Cellar_Hobby values: T: 18.3 H: 71.2
2014-10-29_00:03:22 TX29DTH_Cellar_Hobby values: T: 18.3 H: 71.2
2014-10-29_00:04:30 TX29DTH_Cellar_Hobby values: T: 18.3 H: 71.2
usw.
usw.


Gibt es eine Möglichkeit, das als json zu bekommen?
Titel: Antw:filelog get - Ergebnis als json
Beitrag von: betateilchen am 29 Oktober 2014, 22:30:04
Letztendlich kann die Rückgabe eines get Filelog ja einfach als Hash betrachtet werden: Ein Array mit Datenzeilen, wobei man jede Zeile wieder als Array verarbeiten kann.

http://stackoverflow.com/questions/8463919/how-to-convert-a-simple-hash-to-json-in-perl
Titel: Antw:filelog get - Ergebnis als json
Beitrag von: HCS am 30 Oktober 2014, 13:05:46
Danke für den Tip. Ich hatte die Hoffnung, dass FHEM es vielleicht schon als json liefern kann und ich es nur noch nicht entdeckt habe.

Dann muss ich mich wohl ans Werk machen und es umwandeln.
Titel: Antw:filelog get - Ergebnis als json
Beitrag von: betateilchen am 30 Oktober 2014, 19:34:17
Man könnte sowas einfach als attributgesteuerte Option in FileLog_Get einbauen und einen patch für die 92_FileLog.pm daraus bereitstellen. Allzuviel zu tun ist das nicht, ich hab das vorhin während der ICE Fahrt von Düsseldorf nach Mannheim mal getestet.

Allerdings sollte man unbedingt abfragen, ob JSON als perl Modul zur Verfügung steht, damit es nicht zu einem gnadenlosen Systemabsturz kommt.