Auch bei diesem Gerät treten im LOG PERL WARNING Meldungen seit einiger Zeit auf.
2016.09.26 11:34:54 4: JSONMETER EnergieEG: ReadFromUrl.467 Get json file from http://192.168.17.240:80/a?f=j
2016.09.26 11:34:54 5: JSONMETER EnergieEG: ReadFromUrl.473 received:
HTTP/1.0 200 OK
Content-Type: application/json
{"cnt":"5201,713","pwr":187,"lvl":103,"dev":"","det":"•","con":"OK","sts":"(21)","raw":0}
2016.09.26 11:34:54 4: JSONMETER EnergieEG: ReadFromUrl.475 Socket closed
2016.09.26 11:34:54 4: BlockingCall (JSONMETER_GetJsonFile): created child (9158), uses telnetForBlockingFn_1474882249 to connect back
2016.09.26 11:34:55 4: Connection accepted from telnetForBlockingFn_1474882249_127.0.0.1_52358
2016.09.26 11:34:55 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4584.
2016.09.26 11:34:55 3: stacktrace:
2016.09.26 11:34:55 3: main::__ANON__ called by fhem.pl (4584)
2016.09.26 11:34:55 3: main::fhemFork called by FHEM/Blocking.pm (122)
2016.09.26 11:34:55 3: main::BlockingStart called by FHEM/Blocking.pm (78)
2016.09.26 11:34:55 3: main::BlockingCall called by ./FHEM/70_JSONMETER.pm (378)
2016.09.26 11:34:55 3: main::JSONMETER_GetUpdate called by fhem.pl (2824)
2016.09.26 11:34:55 3: main::HandleTimeout called by fhem.pl (603)
2016.09.26 11:34:55 5: Cmd: >{JSONMETER_ParseJsonFile('EnergieEG|1|SFRUUC8xLjAgMjAwIE9LDQpDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb24NCg0KeyJjbnQiOiI1MjAxLDcxMyIsInB3ciI6MTg3LCJsdmwiOjEwMywiZGV2IjoiIiwiZGV0IjoiJmJ1bGw7IiwiY29uIjoiT0siLCJzdHMiOiIoMjEpIiwicmF3IjowfQ==')}<
2016.09.26 11:34:55 4: JSONMETER EnergieEG: ParseJsonFile.572 Extract 2 readings from 2 json parts
2016.09.26 11:34:55 5: JSONMETER EnergieEG: ParseJsonFile.575 Handle 1 3 electricityConsumed 3 1 cnt
2016.09.26 11:34:55 4: JSONMETER EnergieEG: ParseJsonFile.607 Value 5201713 for reading electricityConsumed extracted from '"cnt":"5201,713","pwr":187,"lvl":103,"dev":"","det":"•","con":"OK","sts":"(21)","raw":0}'
2016.09.26 11:34:55 5: JSONMETER EnergieEG: ParseJsonFile.575 Handle 1 3 electricityPower 1 0 pwr
2016.09.26 11:34:55 4: JSONMETER EnergieEG: ParseJsonFile.607 Value 187 for reading electricityPower extracted from '"cnt":"5201,713","pwr":187,"lvl":103,"dev":"","det":"•","con":"OK","sts":"(21)","raw":0}'
Das scheint aber nicht vom JSONMETER zu sein.
Irgendwer legt ein $defs Eintrag ohne Namen oder weitere Eintraege an, z.Bsp mt folgender Perl Zeile:
Zitatmy $name = $defs{$undefinedVariable}{NAME};
und das faellt in FHEM erst beim BlockingCall Aufruf auf, der fhemFork aufruft. Da Schleifen ueber $defs in fhem.pl recht haeufig sind, und damit das Problem per WARNING an vielen Stellen gemeldet wird, liegt das die Vermutung nahe, dass der kaputte Eintrag in JSONMETER angelegt wurde. Sicher ist das aber nicht.
Sollte eigentlich nicht sein, habe aber nochmal eine Sicherheits-Abfrage eingefügt.
Bitte mal testen, ob die Meldung jetzt weg ist. Ansonsten war's jemand anderes. :D