Mail wird aus FHEM nicht gesendet, jedoch funktioniert Senden mit der wmail.bat

Begonnen von avg123-de, 26 August 2014, 11:04:35

Vorheriges Thema - Nächstes Thema

avg123-de

Hallo,

ich habe folgendes Problem:

Ich habe mir heute die Funktion zu E-Mail senden für FHEM eingebaut nach folgender Anleitung (für Windows):

http://www.fhemwiki.de/wiki/E-Mail_senden

Jedoch funktioniert das Sender aus FHEM heraus nicht. Wie es dort beschrieben ist, kann man, um die Funktion zu überprüfen folgendes in die Befehlszeile von FHEM eingeben:

Zitat{ SUB-Routinen-Name('EMailAdresse@Mail.Domain','Test','Test-Text');; }

Wenn ich dies ausprobiere tut sich nichts, außer dass nach den Tastendruck auf "Enter" unter der Befehlszeile "Test-Text" steht. Eine E-Mail erhalte ich also nicht. Wenn ich jedoch die .bat-Datei ausführe (Doppelklick) öffnet sich kurz die CMD und ein paar Sekunden später habe ich eine Mail in meinem Postfach.

Meine Definition in der FHEM.cfg ist wie folgt (hatte Radio zum Testen verwendet):

define Mail_Radio notify Radio.* { system("wmail @:%")}

hoffentlich könnt ihr mir weiterhelfen, bin schon stundenlang am ausprobieren und am verzweifeln...


viele Grüße
avg123-de




FHEM auf virtualisiertem Debian in Hyper-V auf Dell Poweredge T110 II mit Windows Server 2012, 1x HM-LAN, verschiedene HomeMatic-Komponenten, Intertechno ITR-1500, Arduino Uno Ethernet mit RF-Modul, DeltaSol BX via VBus, Fritz!Box + Fritz!Fon, SmartVisu via Fronthem, Doorpi

ChrisD

Hallo,

Wenn du nur den Windows-Teil aus dem Wiki eingerichtet hast kann der Aufruf von
Zitat{ SUB-Routinen-Name('EMailAdresse@Mail.Domain','Test','Test-Text');; }
nicht funktionieren. Diese Zeile ist auch nicht für Windows gedacht sondern für die Verwendung von SendEmail unter Linux.

Zum Testen ob es aus FHEM funktioniert kannst du in der FHEM-Kommandozeile
{system("wmail Test1234")}
eingeben, wenn keine Mail ankommt kannst du im Konsolenfenster oder im Log nachschauen ob dort eine Fehlermeldung steht.

Startest du FHEM als Dienst ?

Grüße,

ChrisD

avg123-de

Hallo,

erst einmal danke für deine Hilfe!

Ich hatte eben mal den Befehl in meine FHEM-Kommandozeile eingegeben, jedoch ist das einzige was FHEM mir ausgibt 65280 (habe mal einen Screenshot angehangen).
Im Log taucht leider keine Fehlermeldung auf, genau so wie im Konsolenfenster.

Ich starte FHEM nicht als Dienst sondern über die Windows Aufgabenplanung bei Systemstart.
FHEM auf virtualisiertem Debian in Hyper-V auf Dell Poweredge T110 II mit Windows Server 2012, 1x HM-LAN, verschiedene HomeMatic-Komponenten, Intertechno ITR-1500, Arduino Uno Ethernet mit RF-Modul, DeltaSol BX via VBus, Fritz!Box + Fritz!Fon, SmartVisu via Fronthem, Doorpi

ChrisD

Hallo,

65280 ist der Fehlercode den system zurückgibt. Das bedeutet dass beim Aufruf von wmail der Code 255 zurückgegeben wurde. Unter welchem Benutzer startest du FHEM ?

Kannst du zum Testen am Anfang von wmail.bat die Zeile
echo Start %date% >>wmail.log
einfügen und an die Zeile mit SendEmail -f ... am Ende
-l wmail.log -v -v -v
hinzufügen ?

Beim Aufruf der bat-Datei sollte jetzt eine Logdatei namens wmail.log im gleichen Verzeichnis erzeugt werden. Wenn dies funktioniert kannst du erneut versuchen in FHEM
{system("wmail Test1234")}einzugeben und schauen ob sich in wmail.log etwas getan hat.

Grüße,

ChrisD

avg123-de

Hallo,

habe die wmail.bat jetzt so abgeändert, wie du es geschrieben hast.
Wenn ich die wmail.bat jetzt ausführe, wir mir einiges in die wmail.log geschrieben.
Wenn ich jedoch jetzt in FHEM den Befehl

{system("wmail Test1234")}

eingebe, kommt immer noch der Fehler 65280 und in die wmail.log wird nichts geschrieben.
FHEM wird unter dem Administrator-Konto ausgeführt, als der ich auch angemeldet bin.

viele Grüße

avg123-de
FHEM auf virtualisiertem Debian in Hyper-V auf Dell Poweredge T110 II mit Windows Server 2012, 1x HM-LAN, verschiedene HomeMatic-Komponenten, Intertechno ITR-1500, Arduino Uno Ethernet mit RF-Modul, DeltaSol BX via VBus, Fritz!Box + Fritz!Fon, SmartVisu via Fronthem, Doorpi

ChrisD

Hallo,

Wenn nichts in die wmail.log geschrieben wird deutet das darauf hin dass FHEM die Datei nicht findet. Kannst du mit{use Cwd;; getcwd}den von FHEM benutzten Pfad ausgeben ?

Weiterhin kannst du versuchen wmail.bat mit dem kompletten Pfad aufrufen, z.B.:
{system("C:/FHEM/wmail.bat Test1234")}wobei '\' durch '/' zu ersetzen sind.

Grüße,

ChrisD

avg123-de

Hallo,

danke, es klappt jetzt das ich aus FHEM E-Mails senden kann.

Wenn ich
{use Cwd;; getcwd}
eingebe, bekomme ich den Pfad in FHEM ausgegeben.

Beim Versuch mit
{system("C:/fhem/fhem-5.5/wmail.bat Test1234")}
hat das senden via FHEM nun geklappt.

viele Grüße

avg123-de
FHEM auf virtualisiertem Debian in Hyper-V auf Dell Poweredge T110 II mit Windows Server 2012, 1x HM-LAN, verschiedene HomeMatic-Komponenten, Intertechno ITR-1500, Arduino Uno Ethernet mit RF-Modul, DeltaSol BX via VBus, Fritz!Box + Fritz!Fon, SmartVisu via Fronthem, Doorpi