FHEM Forum

FHEM => Automatisierung => Thema gestartet von: no_Legend am 25 Juni 2014, 09:59:04

Titel: Pushmsg bei Batteriestatus Low
Beitrag von: no_Legend am 25 Juni 2014, 09:59:04
Hi,

ich bin noch recht neu im Thema FHEM, bitte habt ein wenig nachsicht.

Kann mir einer erklären, was ich falsch mache, bei folgendem Befehl bekomme ich einen Syntax fehler.

define notifiy_batt_chk notify .*:[Bb]attery.* { if($EVENT !~ m/ok$/mi/) { \ { set pushmsg 'FHEM' 'FHEM Batteriewarnung, $NAME. - $EVENT' ''0'')
  };; \
   Log 3,''$NAME : Batteriewarnung $EVENT'';; \
  } \
}


Danke und Gruß Robert

Edit:
Hab da ein bisschen was gefunden.
So momentan sieht der Aufruf wie folgt aus:


define notifiy_batt_chk notify .*:[Bb]attery.* {if($EVENT !~ m/ok$/mi/){{fhem("set pushmsg msg 'FHEM' 'FHEM Batteriewarnung, $NAME. - $EVENT' ''0''")};;Log 3,"$NAME: Batteriewarnung $EVENT";;}}


Und als bekomm ich folgendes:
2014.06.25 12:15:28 3: notifiy_batt_chk return value: syntax error at (eval 39) line 1, near "/)"
syntax error at (eval 39) line 1, near ";}"
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: P.A.Trick am 25 Juni 2014, 23:08:54
define notifiy_batt_chk notify .*:[Bb]attery.* {if($EVENT !~ m/ok$/mi/){fhem("set pushmsg msg 'FHEM' 'FHEM Batteriewarnung, $NAME. - $EVENT' ''0''")};;Log 3,"$NAME: Batteriewarnung $EVENT";;}}


Versuche das mal und nimm in Zukunft bitte die GUI zum editieren!
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: no_Legend am 26 Juni 2014, 11:29:12
Hi,

P.A.Trick.

Danke bisher keinen Fehler im log bekommen.

Gruß Robert
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: P.A.Trick am 27 Juni 2014, 07:33:07
Gerne das freut mich!
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: no_Legend am 27 Juni 2014, 20:00:56
Hi Patrick,

irgendwas stimmt immer noch nicht.
Egal wie ich es einbinde, direkt in cfg oder per comandozeil ich bekomme folgenden Fehler:

2014.06.27 20:00:19 3: notifiy_batt_chk return value: syntax error at (eval 80) line 1, near "/)"
syntax error at (eval 80) line 1, near ";}"
Unmatched right curly bracket at (eval 80) line 1, at end of line
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: Puschel74 am 27 Juni 2014, 20:26:25
Hallo,

bei mir sieht die Abfrage so aus:
.*:[Bb]attery.* {
  if($EVENT !~ m/ok/) {
    if (Value("Zustands_Warnung") ne "Batterie") {
      Log(3,"$NAME: Batteriewarnung $EVENT");
      fhem("set Batteriestatus_Led led red");
      fhem ("set Zustands_Warnung on");
      DebianMail('xxxx.yyyy@zzzz.aa',$NAME,$EVENT);
    }
  }
}


NICHT für die fhem.cfg bestimmt!

Grüße
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: no_Legend am 27 Juni 2014, 21:24:01
Hi Puschel,

frag ist das auf der cfg oder auf dem DEF Feld im Gui?
Wenn ich es richtig versteht, dann muss ich ja nur so anpassen, damit es geht oder?


.*:[Bb]attery.* {
  if($EVENT !~ m/ok/) {
    if (Value("Zustands_Warnung") ne "Batterie") {
      Log(3,"$NAME: Batteriewarnung $EVENT");
      fhem("set pushmsg msg 'FHEM' 'FHEM Batteriewarnung, $NAME. - $EVENT' ''0''");
    }
  }
}


So das Script geht.
Nur bekomme ich jetzt wegen den Heizugntermostaten alle Minute eine Pushnachricht.
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: Puschel74 am 27 Juni 2014, 21:34:37
Hallo,

äh, ja.
Zustands_Warnung ist bei mir ein Dummy der noch abgefragt wird.
Eben damit ich nur eine Mail bekomme.
Sorry - hatte ich vergessen zu erwähnen.

Der Dummy wird gesetzt sobald ein Device mit Battery-Reading etwas anderes als ok sendet.

Grüße
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: no_Legend am 27 Juni 2014, 21:37:05
Kannst du mir noch die Dummy definition zukommen lassen?

Danke schon mal für deine Mühe
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: Puschel74 am 27 Juni 2014, 21:49:14
Hallo,

klar doch - siehe Screenshot.

Grüße
Titel: Antw:Pushmsg bei Batteriestatus Low
Beitrag von: no_Legend am 01 Juli 2014, 07:58:45
Mal noch etwas, kann man nicht abfragen, bei welchem Gerät was abgefragt werden soll.
So könnte man ja den Termostat einfach ausschließen mit einer verschalteten IF.
Oder einschließen, somit würde man sich den Dummy sparen können.

Geht das, dass man das Model Abfragt?

Danke und Gruß Robert