UserReadings um Mitternacht löschen

Begonnen von Ivolein, 26 März 2018, 18:08:44

Vorheriges Thema - Nächstes Thema

Ivolein

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

betateilchen

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

Ivolein

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 ?

betateilchen

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.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Ivolein

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.

CoolTux

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.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net