ich habe eine "readingGroup" angelegt damit ich den Batteriestatus der Geräte auslesen kann. Dazu habe ich der DEF
Zitat.*:battery
hinterlegt. Jetzt habe ich jedoch ein Gerät, welches nicht mit das Attribut "battery" hat sondern
ZitatpowerLevel
.
Wie kann ich nun die DEF erweitern dass neben dem Attribut *battery auch powerLevel ausgewertet wird, oder muss ich dazu eine neue ReadinGroup anlegen?
Zitat.*:battery or powerLevel
hat nicht funktioniert.
.*:(battery|powerLevel)
DANKE, funktioniert !!!!
eine Nachfrage habe ich doch noch. Das PowerLevel ist ein numerischer Rückgabewert. Wenn der Wert <= 25 ist soll ein entsprechendes Icon verwendet werden und genau daran hakt es nun noch :-\
Zitat{'battery.ok' => 'measure_battery_100', 'battery.low' => 'measure_battery_25', 'powerLevel.<=25' => 'measure_battery_25'}
Mein valueIcon
{ return "measure_battery_25\@red" if($READING eq "battery" && $VALUE eq "low"); return "measure_battery_100\@green" if($READING eq "battery" && $VALUE eq "ok"); return "measure_battery_25" if($READING eq "batteryLevel" && $VALUE <= 2.1); return "measure_battery_50" if($READING eq "batteryLevel" && $VALUE > 2.1 && $VALUE <= 2.5); return "measure_battery_75" if($READING eq "batteryLevel" && $VALUE > 2.5 && $VALUE <= 2.7); return "measure_battery_100" if($READING eq "batteryLevel" && $VALUE > 2.7) }
ciao walter
:-\ gehts ein bisschen einfacher ?
das wiederholte prüfen auf den reading namen kann man sich sparen wenn man den per ausdruck in den hash für diesen reading namen einbaut:{'battery.ok' => 'measure_battery_100', 'battery.low' => 'measure_battery_25', 'powerLevel' => '{ return "measure_battery_25" if( $VALUE < 25 ); return "measure_battery_100";}'}
gruss
andre