Hallo!
Ich möchte gerne die Batterieüberwachung von der Seite http://www.fhemwiki.de/wiki/Batterie%C3%BCberwachung anpassen.
Dabei möchte ich einen Sensor abfragen, der folgendes Reading liefert:
ZitatbatVoltage
3.55
.
Ich möchte eine Warn-Email erhalten, wenn der Wert <3 ist.
Wie frag' ich das ab?
Meine Idee:
Zitat#define n_batt_chk notify .*:batVoltage:.* { if("%" !~ m/[0-2]+(.[0-9]{1,2})/){\
Aber das funktioniert nicht - die Email wird bei jedem Wert verschickt.
Der Reguläre Ausdruck der Prüfung wäre
Zitat[0-2]+(.[0-9]{1,2}
- nur wie baue ich das in die vorhandene Abfrage ein?
Kann mir da jemand kurz helfen? Das wäre super!!!
1. % ist unerwuenscht (deprecated, siehe notify Abschnitt im commandref), man sollte $EVENT verwenden
2. Statt Regexp-Akrobatik wuerde ich ReadingsNum($NAME,"batVoltage",0)<3.55 verwenden. Achtung, diese Funktion hat auch PERL WARNING ausgeloest, was ich gerade behoben habe, d.h. ein update ist erforderlich.
3. man kann perl Ausdruecke im telnet/FHEMWEB einfach testen:
fhem> { "batVoltage 2.55" =~ m/[0-2]+(.[0-9]{1,2})/ ? "Y" : "N" }
Y
fhem> { "batVoltage 3.55" =~ m/[0-2]+(.[0-9]{1,2})/ ? "Y" : "N" }
N
4. !~ bedeuten NICHT zutreffend, was vermutlich nicht gewollt ist.
Oder direkt in FHEM:
define n_batt_chk notify .*:batVoltage:.* IF ([$NAME:batVoltage:d]<3.55)({email...
Gruß
Damian