Hauptmenü

Textfile einlesen

Begonnen von Tweak, 12 Oktober 2015, 20:03:11

Vorheriges Thema - Nächstes Thema

Tweak

Hallo,
ich wollte Fragen ob es relativ einfach möglich ist ein Textfile in FHEM einzulesen und dann diese Inhalte als Reading zu verwenden? Das es geht, weiß ich bereits vom WS3600 da ich eine Alternativ-Station habe, verwende ich das TextFile und das klappt ausgezeichnet.

Jetzt aber würde ich gerne die Daten eines Wechselrichters erfassen welche ich mit einem kleinen Tool auslese und anschließend die Ausgabe in ein Textfile schreibe.

Danke für eure Hilfe!

Sg
Manuel

rapster

Zitat von: Tweak am 12 Oktober 2015, 20:03:11
ich wollte Fragen ob es relativ einfach möglich ist ein Textfile in FHEM einzulesen und dann diese Inhalte als Reading zu verwenden?

Einer der vielen vielen möglichen Wege dies zu tun...
{ fhem("setreading dummyDevice myReading ".`cat /opt/fhem/blub`) }

Die Datei /opt/fhem/blub muss zuvor natürlich schon irgend einen tollen Inhalt haben ;)

Gruß
  Claudiu

Tweak

Klappt das wirklich so einfach?  8)

S00: main battery voltage in mV: 24060
S01: panel voltage in mV: 0
S02: panel power in W: 0
S03: charging current in mA: 0
S04: yield total: 0
S05: yield today: 0
S06: maximum power today in W: 220
S07: yield yesterday in 0.01 kWh: 0
S08: maximum power yesterday in W: 0
S09: error code: 0
S10: converter state: 0
S11: firmware version: 114
S12: procduct id: 41027
S13: serial Number: 0


Inhalt des Files.

Sg

rapster

Wie wärs wenn du es einfach ausprobierst  ::)

betateilchen

Das geht noch einfacher und mit Fehlerprüfune, denn in der fhem.pl gibt es dazu passende Funktionen FileRead() und FileWrite() zum Lesen und schreiben von Textdateien.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rapster

Ob das einfacher ist oder nicht kann er selber entscheiden, einen solchen Tipp hatte ich beabsichtigt wegen der Fragestellung "einfach" nicht gepostet,
sonst könnte er z.B. folgendes tun um das File auf readings aufzuteilen, allerdings kam es nicht so rüber als ob es hier dann über copy/paste hinausgehen wird...

{ open FILE, "/opt/fhem/blub" or die "Couldn't open file: $!";; while (<FILE>){ $_ =~ /(.+?):(.+)/;; fhem("setreading dummy $1 $2") } close FILE }



justme1968

und den umweg über irgendwelche files kann man sich sparen wenn man die daten direkt so aufbereitet das man sie per fhem.pl oder telnet und setreading an fhem schickt. das spart dann noch alle möglichen at oder sonstiges pollen um die daten aktuell zu halten.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Tweak

Habs bereits hinbekommen, herzlichen Dank für eure Hilfe!