Hi
ich müsste für einen Plot aus DBLOG heraus etwas nachberechnen, scheitere aber an der Regex
weder dass eine noch dass andere wollen rechnen :-(
die syntax sollte dioch stimmen
<device>:<reading>:<default>:<fn>:<regexp>
#DbLog <SPEC1>:consumption_cum_day:0::($val/1000)
#DbLog <SPEC1>:consumption_cum_day:0::sprintf("%.1f",$val/1000)
Was ist hier falsch?
eigentlich sollte im gplot nur folgendes stehen:
#DbLog <SPEC1>
und SPEC1 per plotfunction festgelegt werden
attr xxx plotfunction MyDevice:consumption_cum_day:0::sprintf("%.1f",$val/1000)
Ob die funktion korrekt ist, verefizier mal bitte mit den Beispielen in der commandref.
Ich hatte da ein paar angegeben so wie ich sie nutze.
Hallo
hab es so umgestellt wie beschrieben. alles in die Plotfunktion und nur <SPEC1> etc in die gplot.
Anzeige ist da, wie auch vorher, aber rechnen will es immer noch nicht.
In der Commanref und auch sonst im Netz finde ich nur (on/off) Ersetzungen oder String-Filter als Funktion, aber keine Berechnungen.
Eine meiner Plotfunctions sehen so aus:
Bodenfeuchte:data:::$val=~s/.*A:\s([-\.\d]+).*/$1/eg
dementsprechend müsste es bei dir dann ev so passen..
MyDevice:consumption_cum_day:0::$val=sprintf("%.1f",$val/1000)
Oh danke,
genau dass war es. Es funktioniert. Wusste nicht dass ich $val den Wert wieder übergeben muss.
MyDevice:consumption_cum_day:0::$val=sprintf("%.1f",$val/1000)