FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Ivolein am 26 März 2018, 18:08:44

Titel: UserReadings um Mitternacht löschen
Beitrag von: Ivolein am 26 März 2018, 18:08:44
Hallo,

ich habe mir ein UserReadings erstellt, das über die Integralfunktion meinen Stromverbrauch berechnet.
Wie kann ich nun den Befehl "setreading" zeitgesteuert definieren, dass jeweils um Mitternacht mein UserReading auf "0" gesetzt wird.

Ich habe schon folgendes Versucht:
setreading SonnenBatterie StromErzeugung 0 at *00:00

oder ein
setreading SonnenBatterie StromErzeugung {0} at *00:00

hat nichts gebracht.

Die Fehlermeldung im FHEM-LOG
Argument "{0} at *00:00" isn't numeric in addition (+) at fhem.pl

Sagt mir leider nichts.

Viele Grüße,

Michi
Titel: Antw:UserReadings um Mitternacht löschen
Beitrag von: betateilchen am 26 März 2018, 18:19:55
"help at" in die Befehlszeile eingeben.
Titel: Antw:UserReadings um Mitternacht löschen
Beitrag von: Ivolein am 26 März 2018, 20:40:47
so.. jetzt funktionert es
DEF: *00:00 {fhem('setreading <device> <Reading> 0')}

Warum muss ich aber in den geschweiften Klammern noch eine Anweisung mit fhem('<code>') schreiben und kann nicht einfach nur innerhalb den geschweiften Klammern ein "setreading <device> <Reading>" schreiben ?
Titel: Antw:UserReadings um Mitternacht löschen
Beitrag von: betateilchen am 26 März 2018, 20:48:21
Zitat von: Ivolein am 26 März 2018, 20:40:47
so.. jetzt funktionert es
DEF: *00:00 {fhem('setreading <device> <Reading> 0')}

Warum muss ich aber in den geschweiften Klammern noch eine Anweisung mit fhem('<code>') schreiben und kann nicht einfach nur innerhalb den geschweiften Klammern ein "setreading <device> <Reading>" schreiben ?

Weil Du völlig grundlos die geschweifte Klammer verwendest. Probiers doch mal einfach ganz ohne...

DEF: *00:00 setreading <device> <Reading> 0

Übrigens würde ich nie ein at auf genau 00:00 definieren. Da passieren manchmal merkwürdige Dinge. Besser wäre 00:01 oder meinetwegen auch 00:00:10 als Zeitangabe.
Titel: Antw:UserReadings um Mitternacht löschen
Beitrag von: Ivolein am 27 März 2018, 13:25:13
Ich habe das schon am anfang so versucht...
*13:08:10 setreading SonnenBatterieMeasurementValues StromErzeugung 0

Solange ich nur ein Reading schreiben will geht das auch - bei mehrer bekomme ich eine Fehlermeldung
PERL WARNING: Argument "0, setreading SonnenBatterieMeasurementValues StromNetze..." isn't numeric in addition (+) at fhem.pl line 4341.
Titel: Antw:UserReadings um Mitternacht löschen
Beitrag von: CoolTux am 27 März 2018, 13:37:51
Für Dich im Moment empfehle ich. Immer ein setreading pro Device und Reading. Getrennt durch ;

*13:08:10 setreading DEVICE READING VALUE; setreading DEVICE2 READING VALUE


Wenn Du dann mal größer bist reden wir über Reguläre Ausdrücke kurz RegExp.