Fehler bei Mailversand Mail: syntax error at (eval 238) line 1, at EOF

Begonnen von FHEM-User22, 01 August 2015, 10:30:56

Vorheriges Thema - Nächstes Thema

FHEM-User22

Zitat von: krikan am 01 August 2015, 12:52:17
Es hat doch bei Dir schon funktioniert, wie Brice es Dir gezeigt hat: Über die Eingabe in der Kommmandozeile von Fhem bzw. Bearbeitung im DEF.

Das ist nicht mehr funktionsfähiger Code:
*12:35:00 {\  DebianMail('xxx@xxxxx.de','FHEM gruest','passt doch');;\ }
Ursprung ist der fhem.cfg-Code aus dem Wiki, den Du bei der Bearbeitung direkt in der fhem.cfg genauso wie Wiki gezeigt eintragen solltest. Und nicht irgendwie umformatiert. "\" und ",," sind Spezialitäten, die (im Wesentlichen) Direkt-editierter betreffen und in Kommandozeile/DEF nichts zu suchen haben und automatisch erledigt werden.

Im Übrigen @@ ist grds. nichts für at, sondern notify.

Und wenn Du bei Aufruf des sub einfach etwas nicht übergibst, führt das eben zu Perl-Warnungen / Fehlern.

OK, super, jetzt klappt alles bestens.
Das mit den \ und ;; muss ich mir nochmal zu Gemüte führen. Ich mache alles übers WEB-Frontend in eine Datenbank. Keine .cfg direkt bearbeitet.

Dankeschön nochmals an alle
FHEM auf Raspberry Pi und Proxmox und... und.... und....

FHEM-User22

Zitat von: Brice am 01 August 2015, 12:29:11
Ich arbeite beim Mailversand nicht mit Anhängen, sondern lasse mir Temeraturwerte von Kühl- und Gefrierschrank mitteilen.

Gibts dafür eine Anleitung oder Codeschnipsel?

Dankeschön
FHEM auf Raspberry Pi und Proxmox und... und.... und....

Brice

Eine Anleitung gibt es sicherlich irgendwo, aber da dies bei mir bereits seit ca. 3 Jahren implementiert ist, gehe ich davon aus, dass diese aus der Vor-Forums-Zeit kommt (also der Google-Group). Die suche ich dir jetzt aber nicht.

Ich nutze S300TH in der Kühl-Gefrierkombi. Code wie folgt, keine Ahnung, ob du damit etwas anfangen kannst. Und: die cfg wurde noch direkt editiert :-)

define check_Gefrierschrank_Temp notify Gefrierschrank_Temp:temperature.* { \
if ( (ReadingsVal("Gefrierschrank_Temp","temperature",0) > -13.0) && (time > $main::NewMailtime) ){\
DebianMail('name@@domain.de','Gefrierschrank Temperatur %EVTPART1','zu hoch');;\
$main::NewMailtime = time + 3600;;\
  }\
}


Achtung: da ein Notify, muss das @ maskiert werden, wie Krikan schon erwähnte.

Damit nicht bei jedem Überschreiten eine neue Mail generiert wird (die S300TH senden ca. alle 3 Minuten), ist NewMailtime auf 1 Stunde gesetzt. Dazu muss die  99_MyUtils.pm erweitert werden:

####### New Mail #####
sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
  my $NewMailtime = time;
}

my $NewMailtime = time;


Heute würde das wohl eleganter mit einem DOIF zu erledigen sein, aber bei mir läuft es als Notify seit mehreren Jahren, früher mit FB_Mail jetzt mit DebianMail.

Über Sinn bzw. Unsinn der Temp-Überwachung läßt sich natürlich streiten. Bei unserer Kombi werden die Schwellwerte immer dann überschritten, wenn wir mehrere Tage nicht zuhause sind. Dann kommen z.T. mehrere Mail pro Tag (ist im Freundeskreis schon ein Running Gag). Ist wie bei Feuerlöschern: MiniMax ist auch nur Mist, wenn du nicht zuhause bist ;-)
FHEM auf RPi 4 4GB (Buster) | produktiv) CUL 868 für FS20 | S300TH | KS300 | Max!Cube als CUN 868 für TechemWZ | HM-MOD-RPI-PCB für HM | Z-Wave ZME_UZB1 | FRITZ!DECT 200 | HUE | Lightify | Echo Dot | WS3080

FHEM-User22

ok,
dankeschön. Ich versuche mich mal daran.

Schöne Grüße
FHEM auf Raspberry Pi und Proxmox und... und.... und....