FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: jbraeu am 26 Januar 2020, 09:16:27

Titel: mehrere Userreadings
Beitrag von: jbraeu am 26 Januar 2020, 09:16:27
Hallo,

ich probiere seit Stunden diese 3 Readings miteinander zu kombinieren, wobei leider immer nur eines davon klappt.

habe es in einer Zeile versucht wie hier:

attr Stromzaehler userReadings verbr_kwh {ReadingsVal("Stromzaehler","total_consumption",0)/1000}, noPower:power.* {ReadingsVal($name,'power',100) < 0 ? 'true' : 'false') }, einsp_kwh {ReadingsVal("Stromzaehler","total_feed",0)/1000}


oder getrennt wie hier:

attr Stromzaehler userReadings einsp_kwh {ReadingsVal("Stromzaehler","total_feed",0)/1000}
attr Stromzaehler userReadings verbr_kwh {ReadingsVal("Stromzaehler","total_consumption",0)/1000}
attr Stromzaehler userReadings noPower:power.* { (ReadingsVal($name,'power',100) < 0 ? 'true' : 'false') }


aber nix davon funktioniert


Lösung: es fehlt die Pipe am Ende der define log, dann wird einfach nix geschrieben.
Beispiel:
define FileLog_Stromzaehler FileLog /opt/fhem/log/Stromzaehler-%Y-%m-%d.log Stromzaehler:power|Stromzaehler:verbr_kwh|Stromzaehler:einsp_kwh|
Titel: Antw:mehrere Userreadings
Beitrag von: Otto123 am 26 Januar 2020, 10:02:28
Hi,

die zweite Variante ist klar, Du überschreibst ja jedesmal die Definition.
In der ersten Variante: lass mal die Leerzeichen weg. Weil in der Doku steht
ZitatKomma getrennte Liste von benutzerdefinierten Readings.

Gruß Otto
Titel: Antw:mehrere Userreadings
Beitrag von: jbraeu am 26 Januar 2020, 10:59:55
Hi,

das klappt trotzdem irgendwie nicht, glaub ich bin schon betriebsblind :(


attr Stromzaehler userReadings verbr_kwh {ReadingsVal("Stromzaehler","total_consumption",0)/1000},einsp_kwh {ReadingsVal("Stromzaehler","total_feed",0)/1000},noPower:power.* { (ReadingsVal($name,'power',100) < 0 ? 'true' : 'false') }
#attr Stromzaehler event-on-change-reading .*

define FileLog_Stromzaehler FileLog /opt/fhem/log/Stromzaehler-%Y-%m.log Stromzaehler:power|Stromzaehler:verbr_kwh|Stromzaehler:einsp_kwh



Ich krieg im logfile keine Einträge für "einsp_kwh"

Logfileauszug:
2020-01-26_10:56:59 Stromzaehler verbr_kwh: 2950.704
2020-01-26_10:57:08 Stromzaehler power: -228
2020-01-26_10:57:08 Stromzaehler verbr_kwh: 2950.706
2020-01-26_10:57:37 Stromzaehler power: 15
2020-01-26_10:57:37 Stromzaehler verbr_kwh: 2950.7146
2020-01-26_10:58:07 Stromzaehler power: 2071
2020-01-26_10:58:07 Stromzaehler verbr_kwh: 2950.7192
2020-01-26_10:58:37 Stromzaehler power: 2002
2020-01-26_10:58:37 Stromzaehler verbr_kwh: 2950.7362
Titel: Antw:mehrere Userreadings
Beitrag von: CoolTux am 26 Januar 2020, 11:02:26
Würdest Du das ganze über das FHEMWEB Interface machen würde es gehen. Wenn man als Anfänger das Konfigfile editiert passieren Fehler!
Titel: Antw:mehrere Userreadings
Beitrag von: jbraeu am 26 Januar 2020, 11:21:28
nix für ungut aber leerzeichen sind leerzeichen egal wo man das schreibt
Titel: Antw:mehrere Userreadings
Beitrag von: marvin78 am 26 Januar 2020, 11:26:54
Zitat von: jbraeu am 26 Januar 2020, 11:21:28
nix für ungut aber leerzeichen sind leerzeichen egal wo man das schreibt

Falsch!
Titel: Antw:mehrere Userreadings
Beitrag von: Otto123 am 26 Januar 2020, 11:32:19
Du redest davon das Reading wird nicht aktualisiert und angezeigt oder wird im FileLog nicht geschrieben? ich verstehe jetzt die Frage nicht mehr.
Titel: Antw:mehrere Userreadings
Beitrag von: CoolTux am 26 Januar 2020, 11:40:56
Zitat von: jbraeu am 26 Januar 2020, 11:21:28
nix für ungut aber leerzeichen sind leerzeichen egal wo man das schreibt

Kein Problem. Du machst das schon
Titel: Antw:mehrere Userreadings
Beitrag von: jbraeu am 26 Januar 2020, 12:12:36
Hi,

ich will die Readings on change in das log schreiben allerdings kann ich leerzeichen entfernen wie ich will es taucht der logeintrag "einsp_kwh" im log einfach nicht auf obwohl power kleiner 0 ist!?


verbr_kwh{ReadingsVal("Stromzaehler","total_consumption",0)/1000},einsp_kwh{ReadingsVal("Stromzaehler","total_feed",0)/1000},noPower:power.* {(ReadingsVal($name,'power',100) < 0 ? 'true' : 'false')}
#attr Stromzaehler event-on-change-reading .*

define FileLog_Stromzaehler FileLog /opt/fhem/log/Stromzaehler-%Y-%m.log Stromzaehler:power|Stromzaehler:verbr_kwh|Stromzaehler:einsp_kwh
Titel: Antw:mehrere Userreadings
Beitrag von: Otto123 am 26 Januar 2020, 12:39:34
Du könntest list von den beiden Geräten liefern.

Und mein Tipp: Betrachte die fhem.cfg nicht als eine Textdatei die Dir gehört, sondern als eine Textfile basierte Datenbank die FHEM gehört. Und lass nur FHEM darin rum werkeln, FHEM hat wesentlich mehr Ahnung davon als Du. Kopiere Dir am Besten den Inhalt Deiner cfg irgendwo hin, hole Dir vom SVN eine Neue und nutze den Raw Definition Editor und schreibe Deine cfg Blockweise neu. Du profitierst dabei von der Fehleranalyse von FHEM.
Neue fhem.cfg holen und damit starten:
sudo service fhem stop
cd /opt/fhem
sudo wget -qO fhem.cfg https://svn.fhem.de/fhem/trunk/fhem/fhem.cfg
chown fhem: /opt/fhem/fhem.cfg
sudo fhem start


Gruß Otto