FHEM Forum

FHEM => Automatisierung => Thema gestartet von: guy.brush am 15 März 2013, 01:08:09

Titel: Notify und mailer
Beitrag von: guy.brush am 15 März 2013, 01:08:09
Gleich vorab, bin sehr neu in dem FHEM Gebiet. Habe eine FB7390 und einen CUL-Stick, Protokoll FS20. Ich möchte gerade eine Email versenden, wenn ein Gerät an- bzw- ausgeschaltet wird. Später möchte ich das mit meiner Klingel verheiraten, jedoch habe ich die Steuerung noch nicht.

Ich benutze fb_mail() wie aus dem Wiki, was per Command absetzen funktioniert. Jetzt habe ich folgendes in der fhem.cfg:

define MailOnNotify notify Turmlampe { fhem 'fb_mail("zensiert@domain.net (zensiert@domain.net)","Notify Test","funktioniert es????")' }

Habe schon mit den Hochkommas und Anführungszeichen gespielt, aber es will nicht..


Wie bekomme ich ds hin?
Für Anregungen bin ich immer dankbar.


Viele Grüße
Titel: Aw: Notify und mailer
Beitrag von: Puschel74 am 15 März 2013, 06:41:43
Hallo,

ein

Zitatmit den Hochkommas und Anführungszeichen gespielt, aber es will nicht..

ist immer gut - für Leute mit Kristallkugel ;-)

Im Logfile von fhem steht sicher eine Fehlermeldung.
Damit jetzt nicht alle deinen Zusammenbau und alles nachbauen und nachtesten müssen wäre es nett wenn du die zugehörige
Fehlermeldung aus dem fhem.log kopieren könntest.
Im Nebel stochern hinterlässt meist mehr Löcher als notwendig ;-)

Grüße
Titel: Aw: Notify und mailer
Beitrag von: rudolfkoenig am 15 März 2013, 09:33:18
Vmtl muss @ als @@ geschrieben werden, da sonst notify diesen durch den Event-ausloesenden Geraetenamen ersetzt.
Titel: Aw: Notify und mailer
Beitrag von: Groby am 15 März 2013, 09:42:08
Mein notify funzt so: {FB_mail('xxx@@yyy.com' (@@yyy.com'),'aaa','bbb')}
Titel: Aw: Notify und mailer
Beitrag von: guy.brush am 15 März 2013, 19:53:02
An das Logfile habe ich nicht gedacht. Spiele erst seit 2 Tagen mit FHEM herum :)

Meine fhem.cfg enhält u.a. folgendes:

# FB_Mail benutzen:
use FritzBoxUtils;

sub
fb_mail {
  my $rcpt = $_[0];
  my $subject = $_[1];
  my $text = $_[2];
  system("/bin/echo \"$text\" > /var/tmp/fhem_nachricht.txt");
system("/sbin/mailer -i '/var/tmp/fhem_nachricht.txt' -s \"$subject\" -t \"To <$rcpt>\" -f \"From Fritz <$rcpt>\" -m mail.gmx.net -a \"$rcpt\" -w passwort");
  system("rm /var/tmp/fhem_nachricht.txt");
}


Das ist mein notify:

define MailOnNotify notify Turmlampe {fb_mail("name@@gmx.net","Notify Test","funktioniert es????")}


Benutze ich fb_mail() per Commando, funktioniert es. Schalte ich auf der Fernbedienung die Lampe, sehe ich das auch im Logfile. Mehr allerdings nicht.

Benutze ich FB_mail() steht folgendes im Log:

2013.03.15 19:40:04 2: FS20 FS20_c04b00 dimdown
2013.03.15 19:40:04 3: MailOnNotify return value: Global symbol "@gmx" requires explicit package name at (eval 211) line 1.
Titel: Aw: Notify und mailer
Beitrag von: guy.brush am 15 März 2013, 22:27:15
Danke für deine Antwort Puschel. Falls das da deine echten Daten inkl. Passwort sind, solltest du das Passwort ändern und am besten den Post editieren / zensieren.

Habe jetzt fb_mail() ohne Empfänger-Adresse als Param. Die habe ich in der Funktion fest codiert und das "@" escaped. Mit @@ funktionierte es nicht. Jetzt funktioniert es.

Zum "/sbin/mailer" nochmal eine Anmerkung. Bei mir existiert der Parameter "send" nicht. Ausserdem muss ich zwingend SMTP-Adresse, Sender, Passwort etc angeben, ohne gehts nicht.


root@fritz:/var/mod/root# mailer --help
illegal option 'e'
usage: mailer mailer [-s subject] -f from -t to -m mailserver [-a authname [-w passwd]] -i file(s) [-r] [-d attachfile(s)] [-l] [-c charset]
options:
  -?                 - print this help
  -p STRING          - pidfile. ("/var/run/mmailer.pid")
  -s STRING          - subject. ("FRITZ!Box")
  -f STRING          - from. (NULL)
  -t STRING          - to. (NULL)
  -m STRING          - mailserver. (NULL)
  -a STRING          - authname. (NULL)
  -w STRING          - passwd. (NULL)
  -n                 - no SMTP-Auth. (NOTSET)
  -d STRING          - attachment(s). (NULL)
  -i STRING          - inline part(s) - add text file(s) here. (NULL)
  -r                 - use "multipart/related" if possible. (NOTSET)
  -l                 - SMTP with SSL or TLS. (NOTSET)
  -c STRING          - charset (default: iso-8859-1, no charset conversion!). (NULL)
  -D STRING          - switch debug logs on. (NULL)
note: please use filename extensions if possible

Titel: Aw: Notify und mailer
Beitrag von: Puschel74 am 16 März 2013, 08:24:42
Hallo,

Mist. Wusste doch ich überseh irgendwas.

Danke für den Hinweis.

Grüße