Hallo Zusammen,
mein Log-File wird mit der Meldung: PERL WARNING: Argument "" isn't numeric in numeric ge (>=) seit einiger Zeit im 2 Sekundenabstand zugemüllt. Ich habe das DOIF schon x-mal geprüft, aber nichts verdächtiges gefunden. Stacktrace zeigt auf die Funktion "Luftentfeuchter - condition c01" bzw. c02.
Alle Werte sind vorhanden, ich weiß nicht mehr weiter. Ich hänge die üblichen Traces und Logs an.
Vielleicht kann mir jemand helfen.2021.11.09 10:14:08 1: PERL WARNING: Argument "" isn't numeric in numeric ge (>=) at (eval 1569326) line 1.
2021.11.09 10:14:08 1: eval: Luftentfeuchter: warning in condition c01
2021.11.09 10:14:08 1: stacktrace:
2021.11.09 10:14:08 1: main::__ANON__ called by (eval 1569326) (1)
2021.11.09 10:14:08 1: (eval) called by ./FHEM/98_DOIF.pm (2348)
2021.11.09 10:14:08 1: main::DOIF_CheckCond called by ./FHEM/98_DOIF.pm (2692)
2021.11.09 10:14:08 1: main::DOIF_Trigger called by ./FHEM/98_DOIF.pm (2951)
2021.11.09 10:14:08 1: main::DOIF_Notify called by fhem.pl (3895)
2021.11.09 10:14:08 1: main::CallFn called by fhem.pl (3812)
2021.11.09 10:14:08 1: main::DoTrigger called by fhem.pl (4192)
2021.11.09 10:14:08 1: main::Dispatch called by ./FHEM/36_JeeLink.pm (865)
2021.11.09 10:14:08 1: main::JeeLink_Parse called by ./FHEM/36_JeeLink.pm (678)
2021.11.09 10:14:08 1: main::JeeLink_Read called by fhem.pl (3895)
2021.11.09 10:14:08 1: main::CallFn called by fhem.pl (773)
Internals:
DEF ([?08:00-19:00]
and ([Sensor_UG_WA_TEMP:humidity] >= 65
or ([Sensor_UG_KK_TEMP:humidity] >= 65
and [?Entfeuchten_UG_KK_dummy:state] eq "on")
or ([Sensor_UG_TT_TEMP:humidity] >= 65
and [?Entfeuchten_UG_TT_dummy:state] eq "on")
or ([Sensor_UG_HO_TEMP:humidity] >= 65
and [?Entfeuchten_UG_HO_dummy:state] eq "on"))
and [StadlBewohner:residentsHome] > 0
and [?Kontakt_UG_WH_FE_dummy:state] == 0
)
(set Schalter_UG_Entfeuchter on)
DOELSEIF
([?08:00-19:00]
and ([Sensor_UG_WA_TEMP:humidity] >= 61
or ([Sensor_UG_KK_TEMP:humidity] >= 61
and [?Entfeuchten_UG_KK_dummy] eq "on")
or ([Sensor_UG_TT_TEMP:humidity] >= 61
and [?Entfeuchten_UG_TT_dummy] eq "on")
or ([Sensor_UG_HO_TEMP:humidity] >= 61
and [?Entfeuchten_UG_HO_dummy] eq "on"))
and [StadlBewohner:residentsHome] > 0
and ([solarlog_totalpac:solar]-[solarlog_totalpac_cons:solar]) > 1000
and [Kontakt_UG_WH_FE_dummy] == 0
)
(set Schalter_UG_Entfeuchter on)
DOELSEIF
([?08:00-19:00]
and ([Sensor_UG_WA_TEMP:humidity] <= 56
or [Sensor_UG_KK_TEMP:humidity] <= 56)
and [StadlBewohner:residentsHome] > 0
)
(set Schalter_UG_Entfeuchter off)
DOELSEIF
([?19:01-07:59]
or [StadlBewohner:residentsHome] == 0
or [Kontakt_UG_WH_FE_dummy] > 0
)
(set Schalter_UG_Entfeuchter off)
DOELSEIF
([Sensor_UG_WA_TEMP:humidity] <= 56
or [Sensor_UG_KK_TEMP:humidity] <= 56
)
(set Schalter_UG_Entfeuchter off)
DOIFDEV ^global$|^StadlBewohner$|^Sensor_UG_TT_TEMP$|^Kontakt_UG_WH_FE_dummy$|^Sensor_UG_KK_TEMP$|^Sensor_UG_WA_TEMP$|^Sensor_UG_HO_TEMP$|^solarlog_totalpac_cons$|^solarlog_totalpac$
FUUID 5c54d154-f33f-ea07-cb74-23888f3713df47d1
MODEL FHEM
NAME Luftentfeuchter
NR 599
NTFY_ORDER 50-Luftentfeuchter
STATE cmd_3
TYPE DOIF
VERSION 24905 2021-09-01 18:35:54
Helper:
DBLOG:
cmd:
DBLogging:
TIME 1636453957.05368
VALUE 3
READINGS:
2021-11-09 11:32:36 Device Sensor_UG_KK_TEMP
2021-11-09 11:32:37 cmd 3
2021-11-09 11:32:37 cmd_event Sensor_UG_KK_TEMP
2021-11-09 11:32:37 cmd_nr 3
2021-11-09 11:32:35 e_Sensor_UG_HO_TEMP_humidity 59
2021-11-09 11:32:36 e_Sensor_UG_KK_TEMP_humidity 60.8
2021-11-09 11:32:23 e_Sensor_UG_WA_TEMP_humidity 54
2021-11-09 11:32:31 e_solarlog_totalpac_solar 4847
2021-11-09 11:20:48 mode enabled
2021-11-09 11:32:37 state cmd_3
2021-11-09 11:20:48 timer_01_c01 10.11.2021 08:00:00
2021-11-09 11:20:48 timer_02_c01 09.11.2021 19:00:00
2021-11-09 11:20:48 timer_03_c02 10.11.2021 08:00:00
2021-11-09 11:20:48 timer_04_c02 09.11.2021 19:00:00
2021-11-09 11:20:48 timer_05_c03 10.11.2021 08:00:00
2021-11-09 11:20:48 timer_06_c03 09.11.2021 19:00:00
2021-11-09 11:20:48 timer_07_c04 09.11.2021 19:01:00
2021-11-09 11:20:48 timer_08_c04 10.11.2021 07:59:00
Regex:
accu:
collect:
cond:
Kontakt_UG_WH_FE_dummy:
1:
&STATE ^Kontakt_UG_WH_FE_dummy$
3:
&STATE ^Kontakt_UG_WH_FE_dummy$
Sensor_UG_HO_TEMP:
0:
humidity ^Sensor_UG_HO_TEMP$:^humidity:
1:
humidity ^Sensor_UG_HO_TEMP$:^humidity:
2:
3:
4:
Sensor_UG_KK_TEMP:
0:
humidity ^Sensor_UG_KK_TEMP$:^humidity:
1:
humidity ^Sensor_UG_KK_TEMP$:^humidity:
2:
humidity ^Sensor_UG_KK_TEMP$:^humidity:
4:
humidity ^Sensor_UG_KK_TEMP$:^humidity:
Sensor_UG_TT_TEMP:
0:
humidity ^Sensor_UG_TT_TEMP$:^humidity:
1:
humidity ^Sensor_UG_TT_TEMP$:^humidity:
Sensor_UG_WA_TEMP:
0:
humidity ^Sensor_UG_WA_TEMP$:^humidity:
1:
humidity ^Sensor_UG_WA_TEMP$:^humidity:
2:
humidity ^Sensor_UG_WA_TEMP$:^humidity:
4:
humidity ^Sensor_UG_WA_TEMP$:^humidity:
StadlBewohner:
0:
residentsHome ^StadlBewohner$:^residentsHome:
1:
residentsHome ^StadlBewohner$:^residentsHome:
2:
residentsHome ^StadlBewohner$:^residentsHome:
3:
residentsHome ^StadlBewohner$:^residentsHome:
solarlog_totalpac:
0:
1:
solar ^solarlog_totalpac$:^solar:
2:
3:
4:
solarlog_totalpac_cons:
1:
solar ^solarlog_totalpac_cons$:^solar:
attr:
cmdState:
cmdpause:
1800
wait:
waitdel:
condition:
0 ::DOIF_time($hash,0,1,$wday,$hms) and (::ReadingValDoIf($hash,'Sensor_UG_WA_TEMP','humidity') >= 65 or (::ReadingValDoIf($hash,'Sensor_UG_KK_TEMP','humidity') >= 65 and ::ReadingValDoIf($hash,'Entfeuchten_UG_KK_dummy','state') eq "on") or (::ReadingValDoIf($hash,'Sensor_UG_TT_TEMP','humidity') >= 65 and ::ReadingValDoIf($hash,'Entfeuchten_UG_TT_dummy','state') eq "on") or (::ReadingValDoIf($hash,'Sensor_UG_HO_TEMP','humidity') >= 65 and ::ReadingValDoIf($hash,'Entfeuchten_UG_HO_dummy','state') eq "on")) and ::ReadingValDoIf($hash,'StadlBewohner','residentsHome') > 0 and ::ReadingValDoIf($hash,'Kontakt_UG_WH_FE_dummy','state') == 0
1 ::DOIF_time($hash,2,3,$wday,$hms) and (::ReadingValDoIf($hash,'Sensor_UG_WA_TEMP','humidity') >= 61 or (::ReadingValDoIf($hash,'Sensor_UG_KK_TEMP','humidity') >= 61 and ::InternalDoIf($hash,'Entfeuchten_UG_KK_dummy','STATE') eq "on") or (::ReadingValDoIf($hash,'Sensor_UG_TT_TEMP','humidity') >= 61 and ::InternalDoIf($hash,'Entfeuchten_UG_TT_dummy','STATE') eq "on") or (::ReadingValDoIf($hash,'Sensor_UG_HO_TEMP','humidity') >= 61 and ::InternalDoIf($hash,'Entfeuchten_UG_HO_dummy','STATE') eq "on")) and ::ReadingValDoIf($hash,'StadlBewohner','residentsHome') > 0 and (::ReadingValDoIf($hash,'solarlog_totalpac','solar')-::ReadingValDoIf($hash,'solarlog_totalpac_cons','solar')) > 1000 and ::InternalDoIf($hash,'Kontakt_UG_WH_FE_dummy','STATE') == 0
2 ::DOIF_time($hash,4,5,$wday,$hms) and (::ReadingValDoIf($hash,'Sensor_UG_WA_TEMP','humidity') <= 56 or ::ReadingValDoIf($hash,'Sensor_UG_KK_TEMP','humidity') <= 56) and ::ReadingValDoIf($hash,'StadlBewohner','residentsHome') > 0
3 ::DOIF_time($hash,6,7,$wday,$hms) or ::ReadingValDoIf($hash,'StadlBewohner','residentsHome') == 0 or ::InternalDoIf($hash,'Kontakt_UG_WH_FE_dummy','STATE') > 0
4 ::ReadingValDoIf($hash,'Sensor_UG_WA_TEMP','humidity') <= 56 or ::ReadingValDoIf($hash,'Sensor_UG_KK_TEMP','humidity') <= 56
days:
do:
0:
0 set Schalter_UG_Entfeuchter on
1:
0 set Schalter_UG_Entfeuchter on
2:
0 set Schalter_UG_Entfeuchter off
3:
0 set Schalter_UG_Entfeuchter off
4:
0 set Schalter_UG_Entfeuchter off
5:
helper:
DEVFILTER ^global$|^StadlBewohner$|^Sensor_UG_TT_TEMP$|^Kontakt_UG_WH_FE_dummy$|^Sensor_UG_KK_TEMP$|^Sensor_UG_WA_TEMP$|^Sensor_UG_HO_TEMP$|^solarlog_totalpac_cons$|^solarlog_totalpac$
NOTIFYDEV global|StadlBewohner|Sensor_UG_TT_TEMP|Kontakt_UG_WH_FE_dummy|Sensor_UG_KK_TEMP|Sensor_UG_WA_TEMP|Sensor_UG_HO_TEMP|solarlog_totalpac_cons|solarlog_totalpac
event temperature: 15.3,humidity: 60.8
globalinit 1
last_timer 8
sleeptimer -1
timerdev Sensor_UG_KK_TEMP
timerevent temperature: 15.3,humidity: 60.8
triggerDev Sensor_UG_KK_TEMP
DOIF_eventa:
cmd_nr: 3
cmd: 3
cmd_event: Sensor_UG_KK_TEMP
cmd_3
DOIF_eventas:
cmd_nr: 3
cmd: 3
cmd_event: Sensor_UG_KK_TEMP
state: cmd_3
timerevents:
temperature: 15.3
humidity: 60.8
timereventsState:
temperature: 15.3
humidity: 60.8
triggerEvents:
temperature: 15.3
humidity: 60.8
triggerEventsState:
temperature: 15.3
humidity: 60.8
internals:
all Entfeuchten_UG_KK_dummy:STATE Entfeuchten_UG_TT_dummy:STATE Entfeuchten_UG_HO_dummy:STATE Kontakt_UG_WH_FE_dummy:STATE
interval:
0 -1
1 0
2 -1
3 2
4 -1
5 4
6 -1
7 6
intervalfunc:
localtime:
0 1636527600
1 1636480800
2 1636527600
3 1636480800
4 1636527600
5 1636480800
6 1636480860
7 1636527540
readings:
all Sensor_UG_WA_TEMP:humidity Sensor_UG_KK_TEMP:humidity Sensor_UG_TT_TEMP:humidity Sensor_UG_HO_TEMP:humidity StadlBewohner:residentsHome solarlog_totalpac:solar solarlog_totalpac_cons:solar
realtime:
0 08:00:00
1 19:00:00
2 08:00:00
3 19:00:00
4 08:00:00
5 19:00:00
6 19:01:00
7 07:59:00
time:
0 08:00:00
1 19:00:00
2 08:00:00
3 19:00:00
4 08:00:00
5 19:00:00
6 19:01:00
7 07:59:00
timeCond:
0 0
1 0
2 1
3 1
4 2
5 2
6 3
7 3
timer:
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
trigger:
triggertime:
1636480800:
localtime 1636480800
hash:
1636480860:
localtime 1636480860
hash:
1636527540:
localtime 1636527540
hash:
1636527600:
localtime 1636527600
hash:
uiState:
uiTable:
Attributes:
DbLogExclude .*
DbLogInclude cmd
cmdpause 1800
disable 0
event-on-change-reading cmd
room System,UG
verbose 5
Poste doch auch ein list des Devices wo die Readings herkommen...
Vermutung: dort steht was wie 'humidity 60%' -> 60% ist eben NICHT numerisch sondern ein String wegen dem '%'
Aber: nur eine Vermutung...
Gruß, Joachim
Hallo Joachim,
anbei das List von Kontakt_UG_WH_FE_dummy, sowie von StadlBewohner
Internals:
FUUID 5f0ffd78-f33f-ea07-b731-6d15776cdd77973c
NAME Kontakt_UG_WH_FE_dummy
NR 1159
STATE 0
TYPE dummy
READINGS:
2021-09-09 20:58:01 state 0
Attributes:
DbLogExclude .*
mqttDevice 27
room Kontakt
Internals:
DURATIONTIMER 1636458804.2209
FUUID 5c689cff-f33f-ea07-8283-5f0f5cbb66904a73
FVERSION 10_RESIDENTS.pm:0.195330/2019-06-02
GUESTS rg_Andrea,rg_Annemarie,rg_Lisa
NAME StadlBewohner
NOTIFYDEV global,rr_Achim,rr_Anne,rg_Andrea,rg_Annemarie,rg_Lisa
NR 923
NTFY_ORDER 50-StadlBewohner
READY 1
ROOMMATES rr_Achim,rr_Anne
STATE home
TYPE RESIDENTS
READINGS:
2021-11-07 14:20:06 durTimerAbsence 00:00:00
2021-11-07 14:20:06 durTimerAbsence_cr 0
2021-11-09 12:52:24 durTimerPresence 03:32:06
2021-11-09 12:52:24 durTimerPresence_cr 212
2021-09-09 15:11:13 durTimerSleep 00:00:00
2021-09-09 15:11:13 durTimerSleep_cr 0
2021-10-05 16:42:50 homealoneSubtype -
2021-10-05 16:42:50 homealoneType -
2021-11-09 09:21:02 lastActivity gone
2021-11-09 09:21:02 lastActivityBy Anne
2021-11-09 09:21:02 lastActivityByDev rr_Anne
2021-11-09 09:20:18 lastArrival 2021-11-09 09:20:18
2021-11-09 09:20:07 lastDeparture 2021-11-09 09:20:07
2021-11-09 09:20:18 lastDurAbsence 00:00:11
2021-11-09 09:20:18 lastDurAbsence_cr 0
2021-11-09 09:20:07 lastDurPresence 42:58:54
2021-11-09 09:20:07 lastDurPresence_cr 2579
2021-10-05 16:43:34 lastHomealoneSubtype -
2021-10-05 16:43:34 lastHomealoneType -
2021-11-09 09:20:18 lastState gone
2021-11-09 09:20:18 presence present
2021-09-09 15:11:30 residentsAbsent 0
2021-09-09 15:11:30 residentsAbsentDevs -
2021-09-09 15:11:30 residentsAbsentNames -
2021-09-09 15:11:30 residentsAsleep 0
2021-09-09 15:11:30 residentsAsleepDevs -
2021-09-09 15:11:30 residentsAsleepNames -
2021-09-09 15:11:30 residentsAwoken 0
2021-09-09 15:11:30 residentsAwokenDevs -
2021-09-09 15:11:30 residentsAwokenNames -
2021-11-09 09:21:02 residentsGone 1
2021-11-09 09:21:02 residentsGoneDevs rr_Anne
2021-11-09 09:21:02 residentsGoneNames Anne
2021-09-09 15:11:30 residentsGotosleep 0
2021-09-09 15:11:30 residentsGotosleepDevs -
2021-09-09 15:11:30 residentsGotosleepNames -
2021-11-09 09:21:02 residentsHome 1
2021-11-09 09:21:02 residentsHomeDevs rr_Achim
2021-11-09 09:21:02 residentsHomeNames Achim
2021-11-07 10:54:23 residentsTotal 2
2021-11-09 09:21:02 residentsTotalAbsent 1
2021-11-09 09:21:02 residentsTotalAbsentDevs rr_Anne
2021-11-09 09:21:02 residentsTotalAbsentNames Anne
2021-11-07 10:54:23 residentsTotalGuests 0
2021-09-09 15:11:30 residentsTotalGuestsAbsent 0
2021-09-09 15:11:30 residentsTotalGuestsAbsentDevs -
2021-09-09 15:11:30 residentsTotalGuestsAbsentNames -
2021-11-07 10:54:23 residentsTotalGuestsPresent 0
2021-11-07 10:54:23 residentsTotalGuestsPresentDevs -
2021-11-07 10:54:23 residentsTotalGuestsPresentNames -
2021-11-07 10:54:23 residentsTotalPeople 2
2021-11-09 09:21:02 residentsTotalPeopleAbsent 1
2021-11-09 09:21:02 residentsTotalPeopleAbsentDevs rr_Anne
2021-11-09 09:21:02 residentsTotalPeopleAbsentNames Anne
2021-11-09 09:21:02 residentsTotalPeoplePresent 1
2021-11-09 09:21:02 residentsTotalPeoplePresentDevs rr_Achim
2021-11-09 09:21:02 residentsTotalPeoplePresentNames Achim
2021-09-09 15:11:30 residentsTotalPets 0
2021-09-09 15:11:30 residentsTotalPetsAbsent 0
2021-09-09 15:11:30 residentsTotalPetsAbsentDevs -
2021-09-09 15:11:30 residentsTotalPetsAbsentNames -
2021-09-09 15:11:30 residentsTotalPetsPresent 0
2021-09-09 15:11:30 residentsTotalPetsPresentDevs -
2021-09-09 15:11:30 residentsTotalPetsPresentNames -
2021-11-09 09:21:02 residentsTotalPresent 1
2021-11-09 09:21:02 residentsTotalPresentDevs rr_Achim
2021-11-09 09:21:02 residentsTotalPresentNames Achim
2021-09-09 15:11:30 residentsTotalRoommates 2
2021-11-09 09:21:02 residentsTotalRoommatesAbsent 1
2021-11-09 09:21:02 residentsTotalRoommatesAbsentDevs rr_Anne
2021-11-09 09:21:02 residentsTotalRoommatesAbsentNames Anne
2021-11-09 09:21:02 residentsTotalRoommatesPresent 1
2021-11-09 09:21:02 residentsTotalRoommatesPresentDevs rr_Achim
2021-11-09 09:21:02 residentsTotalRoommatesPresentNames Achim
2021-09-09 15:11:30 residentsTotalWakeup 0
2021-09-09 15:11:30 residentsTotalWakeupDevs -
2021-09-09 15:11:30 residentsTotalWakeupNames -
2021-09-09 15:11:30 residentsTotalWayhome 0
2021-09-09 15:11:30 residentsTotalWayhomeDelayed 0
2021-09-09 15:11:30 residentsTotalWayhomeDelayedDevs -
2021-09-09 15:11:30 residentsTotalWayhomeDelayedNames -
2021-09-09 15:11:30 residentsTotalWayhomeDevs -
2021-09-09 15:11:30 residentsTotalWayhomeNames -
2021-11-09 09:20:18 state home
TIMER:
StadlBewohner_DurationTimer:
HASH StadlBewohner
MODIFIER DurationTimer
NAME StadlBewohner_DurationTimer
Attributes:
DbLogExclude .*
alarmDevice Sensor
alarmSettings alarm4,|StadlBewohner:gone|Bewohner sind weg => Alarmanlage aktiviert|arm
alias Residents
devStateIcon .*home:user_available:absent .*absent:user_away:home .*gone:user_ext_away:home .*gotosleep:scene_toilet:asleep .*asleep:scene_sleeping:awoken .*awoken:scene_sleeping_alternat:home .*:user_unknown:home
event-on-change-reading state, STATE
event-on-update-reading state
group Home State
icon control_building_filled
room Residents
webCmd state
Residents funktioniert einwandfrei auch in anderen Abfragen. Genauso wie der Kontakt-dummy.
Gruß Joachim
Hi,
Vermutung: einer der Werte [Sensor_UG_WA_TEMP:humidity] [Sensor_UG_KK_TEMP:humidity] [Sensor_UG_TT_TEMP:humidity] [Sensor_UG_HO_TEMP:humidity] ist zum Abfragezeitpunkt leer -> Argument "" bzw. nicht lesbar nicht verfügbar.
Versuchmal ob der Fehler weggeht wenn Du defaultwerte einführst. Das ist natürlich dann nur die halbe Wahrheit :)
Gruß Otto
Otto, Du bist mein Held des Tages,
bei Deiner Aufzählung der Thermostate ist mir komisch vorgekommen, warum Du noch ein Thermometer erwähnst, das ich schon vor ein paar Wochen entfernt hatte. Ich Dussel habe das Thermometer zwar physikalisch entfernt, aber vergessen, daß es im DOIF noch vor sich hinschlummert.
Ich danke Dir und Joachim für die schnelle Hilfe. Man sieht, wenn man immer wieder nur alleine auf den Code starrt übersieht man einfach immer wieder Selbstverständlichkeiten.
Gruß Joachim