FHEM Forum

FHEM => Automatisierung => Thema gestartet von: grappa24 am 09 Dezember 2019, 00:24:29

Titel: ReadingsGroup .*:[Bb]attery - bestimmte Devices ausnehmen
Beitrag von: grappa24 am 09 Dezember 2019, 00:24:29
Hallo,
ich hab zwecks Überwachung meiner Batterien eine ReadingsGroup definiert: define battStatus ReadingsGroup .*:[Bb]attery möchte aber hier drei Devices ausnehmen, da deren battery-reading einen (nicht erwünschten) numerischen Wert statt ok bzw. low liefert. Die Namen dieser drei Devices fangen alle mit "HUESensor..." an. (Wie) kann man die Ausnahme bei der Definition spezifizieren?
Titel: Antw:ReadingsGroup .*:[Bb]attery - bestimmte Devices ausnehmen
Beitrag von: amenomade am 09 Dezember 2019, 01:50:19
Mit devspec https://fhem.de/commandref_DE.html#devspec
.*:FILTER=NAME!=HUESensor.*
Titel: Antw:ReadingsGroup .*:[Bb]attery - bestimmte Devices ausnehmen
Beitrag von: grappa24 am 09 Dezember 2019, 10:04:44
super, vielen Dank!
Titel: Antw:ReadingsGroup .*:[Bb]attery - bestimmte Devices ausnehmen
Beitrag von: MadMax-FHEM am 09 Dezember 2019, 11:02:21
Hallo,

ich "normalisiere" die Batteriewerte aller Geräte und zeige die dann in einer readingsGroup an.

https://forum.fhem.de/index.php/topic,82637.msg747514.html#msg747514

Vielleicht ja interessant...

Alternativ könnte auch ein userReadings bei diesen Geräten gehen, dann hast du darüber auch eine Übersicht ;)

Gruß, Joachim
Titel: Antw:ReadingsGroup .*:[Bb]attery - bestimmte Devices ausnehmen
Beitrag von: grappa24 am 09 Dezember 2019, 17:43:45
Danke Joachim,
ich benutze noch das DOIF hier aus dem Forum ([":battery: low"] and [?$SELF:B_$DEVICE] ne "low") ({DebianMail('xxxxxxx', 'FHEM - battery warning from device: $DEVICE','Bitte die Batterie im Gerät $DEVICE erneuern')}, setreading $SELF B_$DEVICE low) DOELSEIF ([":battery: ok"] and [?$SELF:B_$DEVICE] ne "ok") (setreading $SELF B_$DEVICE ok) Ja, das mit dem Normalisieren tut Not ;), werde mir Deine .pm Datei mal ansehen
Titel: Antw:ReadingsGroup .*:[Bb]attery - bestimmte Devices ausnehmen
Beitrag von: Eistee am 22 Dezember 2019, 18:16:50
Hab das so gemacht das ich die Icons mit dem Stand sehe und die ok/low Geräte einfach auf Akku voll oder leer gesetzt vom Icon her.

defmod xx.Batterie.Status readingsGroup .*:[Bb]attery\
.*:[Bb]atteryLevel
attr xx.Batterie.Status alias Batteriestatus
attr xx.Batterie.Status icon batterie
attr xx.Batterie.Status mapping %ALIAS
attr xx.Batterie.Status notime 1
attr xx.Batterie.Status valueFormat {\
return "0" if( $VALUE eq "low" );;;;\
return "100" if( $VALUE eq "ok" );;;;\
}
attr xx.Batterie.Status valueIcon {\
'battery' => (($VALUE > 87)?'measure_battery_100@green':(($VALUE > 62)?'measure_battery_75@green':(($VALUE > 37)?'measure_battery_50@orange':(($VALUE > 12)?'measure_battery_25@red':'measure_battery_0@red'))))\
}