Gelöst: Notify mit perl code und dummy

Begonnen von FhemPiUser, 23 März 2015, 22:03:39

Vorheriges Thema - Nächstes Thema

FhemPiUser

Hallo,

folgender notify code funktioniert nicht. kann jemand helfen?

CUL_EM_9:cnt.* {fhem("set GasTagV ".int($EVTPART3-Value(Gas0Wert)));}

GasTagV und Gas0Wert sind jeweils ein dummy.

ziel ist es, vom em 1000 wz den aktuellen tagesverbrauchswert zu ermitteln und anzuzeigen.

fuer Gas0Wert gibt es noch ein weiteren notify, der den cum-wert um 0 uhr speichern soll, aber auch der geht nicht:

CUL_EM_9:cum_day.* set Gas0Wert $EVTPART3;

flurin

Zitat von: kilian2050 am 23 März 2015, 22:03:39
Hallo,

folgender notify code funktioniert nicht. kann jemand helfen?

CUL_EM_9:cnt.* {fhem("set GasTagV ".int($EVTPART3-Value(Gas0Wert)));}

GasTagV und Gas0Wert sind jeweils ein dummy.

ziel ist es, vom em 1000 wz den aktuellen tagesverbrauchswert zu ermitteln und anzuzeigen.

fuer Gas0Wert gibt es noch ein weiteren notify, der den cum-wert um 0 uhr speichern soll, aber auch der geht nicht:

CUL_EM_9:cum_day.* set Gas0Wert $EVTPART3;

So könnte es gehen:


CUL_EM_9:cnt.* {$var = int($EVTPART3-Value(Gas0Wert)); fhem("set GasTagV $var")}


Gruss
flurin

Icinger

Warum setzt du nicht das statistics-Modul darauf an? Dann hast gleich ganz automatisch Tages-, Wochen-, Jahresverbrauch usw....
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

betateilchen

weil man für das simple setzen eines Wertes in einem dummy nicht unbedingt noch ein weiteres Modul verwenden möchte?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

FhemPiUser

Ja, die tages/monats/jahresgraphen habe ich schon, nur da sieht man nicht den aktuellen tagesverbrauch (0 uhr bis jetzt).

Wie kann man eigentlich Debuggen? Wenn ich ein printf einfuege sehe ich keine ausgabe im fhem logfile.

Bin mir auch nicht sicher, ob ich ein Dummy aus dem Perl Code heraus aufrufen kann.

FhemPiUser

so, jetzt funktioniert es. hatte u.a. den filter statt gross klein geschrieben (CNT):

CUL_EM_9:CNT.* { fhem("set GasTagV ".sprintf("%.3f",($EVTPART3-Value("Gas0Wert")))); }