FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Dia81 am 11 April 2021, 17:53:18

Titel: Richtige Syntax bei setreading
Beitrag von: Dia81 am 11 April 2021, 17:53:18
Da ich meinen anderen Thread nicht löschen kann erbitte ich Hilfe was hier an Syntax falsch ist :



define 3DDruckerEnergie_Monat at *00:05:10 {fhem "setreading Fritz_Steckdose_3D energyCountermonat {([Fritz_Steckdose_3D:energyCounterEndofmonth]-[Fritz_Steckdose_3D: energyCounterBeginofmonth])" if ((strftime "%d",localtime time) eq "01")}


Das Reading wird mit Code beschrieben nicht mit den Werten,  hingegen klappt



define 3DDruckerEnergie_Ultimobisheute at *13:00:00 setreading Fritz_Steckdose_3D energyCountertag {([Fritz_Steckdose_3D:energyKWH]-[Fritz_Steckdose_3D:energyCounterBeginofmonth])}


Aber ich brauche das halt kombiniert mit dem if . Wie kann ich das obere richtig bauen

Danke
Titel: Antw:Richtige Syntax bei setreading
Beitrag von: Otto123 am 11 April 2021, 18:00:26
Der fhem() Aufruf ist ein durcheinander  mit Klammern und " und Leerzeichen zuviel - so sollte er richtig sein:
fhem ("setreading Fritz_Steckdose_3D energyCountermonat {([Fritz_Steckdose_3D:energyCounterEndofmonth]-[Fritz_Steckdose_3D:energyCounterBeginofmonth])}")
Also bitte separat in der Kommandozeile testen (mit {}drumherum) und dann schauen ob das mit if tut :) (auch ohne at testen!)
define 3DDruckerEnergie_Monat at *00:05:10 {fhem ("setreading Fritz_Steckdose_3D energyCountermonat {([Fritz_Steckdose_3D:energyCounterEndofmonth]-[Fritz_Steckdose_3D:energyCounterBeginofmonth])}") if ((strftime "%d",localtime time) eq "01")}