defmod BatterieStatusProzent readingsGroup .*:[Bb]attery
attr BatterieStatusProzent alias Batterie Status %
attr BatterieStatusProzent mapping %ALIAS
attr BatterieStatusProzent room System
Damit wird der Status von Batterien angezeigt, ich habe den Eindruck als wenn ein device kein Zahlenwert sondern z.B. ein "low" ausgibt.
Habe ich im log:
PERL WARNING: Argument "" isn't numeric in numeric le (<=) at (eval 1328) line 1.
Kann das jemand nachvollziehen?
LG
Tom
schalte mal stacktrace ein und zeig wo die meldung genau her kommt.
gruss
andre
2017.02.23 08:53:32 1: PERL WARNING: Argument "" isn't numeric in numeric le (<=) at (eval 300297) line 1.
2017.02.23 08:53:32 1: stacktrace:
2017.02.23 08:53:32 1: main::__ANON__ called by (eval 300297) (1)
2017.02.23 08:53:32 1: (eval) called by ./FHEM/33_readingsGroup.pm (343)
2017.02.23 08:53:32 1: main::lookup2 called by ./FHEM/33_readingsGroup.pm (526)
2017.02.23 08:53:32 1: main::readingsGroup_value2html called by ./FHEM/33_readingsGroup.pm (1066)
2017.02.23 08:53:32 1: main::readingsGroup_2html called by ./FHEM/33_readingsGroup.pm (1165)
2017.02.23 08:53:32 1: main::readingsGroup_detailFn called by ./FHEM/01_FHEMWEB.pm (1815)
2017.02.23 08:53:32 1: main::FW_showRoom called by ./FHEM/01_FHEMWEB.pm (1034)
2017.02.23 08:53:32 1: main::FW_answerCall called by ./FHEM/01_FHEMWEB.pm (528)
2017.02.23 08:53:32 1: main::FW_Read called by fhem.pl (3302)
2017.02.23 08:53:32 1: main::CallFn called by fhem.pl (674)
Kannst du damit etwas anfangen.
LG
Tom
Hallo Andre
Könntest du damit etwas anfangen?
LG
Tom
push
Ich "glaube" den Fehler gefunden zu haben :-\
defmod BatterieStatus readingsGroup .*:[Bb]attery
attr BatterieStatus alias Batterie Status
attr BatterieStatus mapping %ALIAS
attr BatterieStatus notime 1
attr BatterieStatus room System
attr BatterieStatus valueFormat {return "0" if ( $NUM <=24 );;\
return "25" if( $NUM <=25 );;\
return "50" if( $NUM <=50 );;\
return "75" if( $NUM <=75 );;\
return "100"}
attr BatterieStatus valueIcon {'battery.0' => 'measure_battery_0@red','battery.25' => 'measure_battery_25@orange','battery.50' => 'measure_battery_50@green','battery.75' => 'measure_battery_75@green','battery.100' => 'measure_battery_100@green','Battery.0' => 'measure_battery_0@red','Battery.100' => 'measure_battery_100@green','batteryLevel.0' => 'measure_battery_0@red','batteryLevel.25' => 'measure_battery_25@orange','batteryLevel.50' => 'measure_battery_50@green','batteryLevel.75' => 'measure_battery_75@green','batteryLevel.100' => 'measure_battery_100@green'}
Es wird der Status der Batterien abgefragt und valueFormat greift diesen dann ab, bekommt aber von einer "leeren" Batterie den Status "low".
Verstehe leider nicht das zu fixen. Probiert habe ich schon:
{return "0" if ( $NUM eq "low" );
return "0" if ( $NUM <=24 );
return "25" if( $NUM <=25 );
return "50" if( $NUM <=50 );
return "75" if( $NUM <=75 );
return "100"}
Doch ist der Wert in dem Fall doch keine Zahl.
Leider kein Brüller
LG
Tom