Fehlermeldung bei Mail_Benachrichtigung per ssmtp

Begonnen von Sonic, 16 Juni 2019, 21:48:17

Vorheriges Thema - Nächstes Thema

Sonic

Liebe Forumgemeinde.
Nachdem ich als Pearl Amateur nun alles probiert und keinen Erfolg habe, bitte ich um Eure Hilfe.
Ich habe mit unten stehendem Code ein Wasseralarm installiert.
Der HMS100WD funktioniert und ich kann damit im Testalarm bereits erfolgreich diverse Aktoren schalten.
Lediglich meine Email Benachrichtigung funktioniert nicht.
Ich bekomme dann im Log folgende Fehlermeldung:

Wasseralarm_mail return value: Not enough arguments for main::ReadingsVal at (eval 36163) line 2, near ""HMS100WD_005b:water_detect:.on") "

--------------------------------
hier mein Code der eigentlich im Alarmfall alle 5 Minuten eine Mail senden sollte.
Ich wäre um eure Hilfe dankbar.
Gruss aus dem Allgäu
--------------------------------


define Wasseralarm_mail notify HMS100WD_005b:water_detect:.on {\
  if (ReadingsVal("HMS100WD_005b:water_detect:.on") && (time > $main::NewMailtime) ){\
Log (3,"Logzeile zum sehen ob was passiert");;\
ssmtpMail('klaus@test.co','Wasseralarm','Wassereinbruch bei Hebeanlage');;\
$main::NewMailtime = time + 300;;\
}\
}

MadMax-FHEM

#1
ReadingsVal("Devicename","ReadingName","Ersatzwert")

EDIT: ob das dann schon alle Fehler waren und ob es dann auch geht wird man sehen. Ich hab jetzt nur mal die Lösung des angefragten Fehlers genannt, ohne weiter zu schauen...

EDIT2: so, doch mal schnell drüber geschaut ;) Das mit 'time' wird aber so auch nicht gehen. Das muss vermutlich mindestens $time heißen. Wo immer das definiert wurde... Bzw. je länger ich dann doch drauf kucke desto mehr glaube ich, dass da noch mehr falsch ist. Aber das werden dir die ausgegebenen/geloggten Fehler schon verraten... Bzw. vielleicht hast du Glück und ich liege falsch ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Prof. Dr. Peter Henning

Noch ein Tipp: DOIF verwenden, macht die Wiederholung automatisch und ist damit leichter wartbar.

LG

pah

P.S.: Und es heißt Perl, nicht Pearl.

Sonic

Hallo Joachim
Hallo Pah,

vielen Dank für Eure schnelle Hilfe.

@ Joachim, nachdem ich deinen Hinweis im Code korrigiert habe hat es sogleich funktioniert.
Die Mails kommen und sogar auch verzögert.

Alles Super, vielen Dank für Eure Hifle.

P.S tolles Forum   :)

@ pah
DOIF habe ich tatsächlich noch nie probiert. Davor  habe ich Respekt.
Ich muss mir das mal in Ruhe anschauen.


MadMax-FHEM

Gerne!
(auch wenn mich wundert, dass es dann doch so schnell ging ;)  )...

Wie wäre es dann die laufende Version zu posten (für andere mit ähnlichem Problem/Aufgabe) und dann ein [gelöst] vor den ersten Beitrag zu "kleben"!?

Gruß und viel Spaß noch, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Sonic

define Wasseralarm_mail notify HMS100WD_005b:water_detect:.on {\
  if (ReadingsVal("HMS100WD_005b","water_detect","on") && (time > $main::NewMailtime) ){\
Log (3,"Logzeile zum sehen ob was passiert");;\
ssmtpMail('klaus@test.de','Wasseralarm','Wassereinbruch bei Hebeanlage');;\
$main::NewMailtime = time + 180;;\
}\
}