Hallo zusammen,
habe da eine Fehlermelund in meinem Log:
2016.06.14 11:46:31 1: PERL WARNING: Argument "off" isn't numeric in numeric ge (>=) at (eval 112663) line 1.
2016.06.14 11:46:31 3: eval: {if(ReadingValIf('HM_xxxxxx_Climate','desired-temp','') >= 18){fhem('set HM_xxxxx_Climate desired-temp 21')}}
Das Problem an der Sache ist das wenn es war genug ist die Heizung manuell im Sommer deaktiviere.
Dann erschein in dem reading "desired-temp" anstatt einer Temperatur die ich bei Abwesendheit die Solltemperatur absenke.
Heute habe ich dann durch verbose 3 herausgefunden woher die meldung kommt.
Da die Thermostate jetzt ausgeschaltet sind steht in der Solltemperatur jetzt leider "off".
Bekommt man dieses Problem gelöst?
Internals:
DEF xxxxxx
NAME HM_xxxxxx_Climate
NR 358
STATE T: 22.7 desired: off
TYPE CUL_HM
chanNo 02
device HM_xxxxxx
Readings:
2016-05-06 19:44:05 CommandAccepted yes
2015-05-10 17:19:03 R-dayTemp 21 C
.
.
2015-10-28 07:51:57 battery ok
2016-06-14 14:42:22 boostTime -
2016-06-14 14:42:22 commReporting off
2016-06-14 14:42:22 controlMode manual
2016-06-14 15:05:15 desired-temp off
2016-06-14 15:05:15 humidity 57
2016-06-14 15:05:15 measured-temp 22.7
.
.
Gruß und dankbar für eine Tipp
Porsti
Du könntest "ge" statt ">=" verwenden, das DOIF für diese Zeit deaktiveren oder die Ausgabeformatierung http://fhem.de/commandref_DE.html#DOIF_Filtern_nach_Zahlen verwenden.
Hi,
habe jetzt den Filter (:d) auf Zahlen gesetzt aber keine gefundene Zahl bringt auch einen Fehler im log.
2016.06.14 20:05:43 1: PERL WARNING: Argument "" isn't numeric in numeric ge (>=) at (eval 376115) line 1
Gibt es vielleicht eine möglichkeit einen ersatzwert zu setzen wenn keine Zahl gefunden wurde?
Gruß
Porsti
$val=($val=~'on'?10.5:$val)
Bitte entsprechend anpassen und einbauen oder sich im Netzt über Perlprogrammierung (https://wiki.selfhtml.org/wiki/Perl/Bedingte_Anweisungen#Einfache_Entweder-Oder-Abfrage) informieren.