Zum Inhalt

Mail

HomeMatic

Im Folgenden finden sich zwei Skripte für den Versand von E-Mails. Das erste Skript ermöglicht den Versand einer einfachen E-Mail, während das zweite für den Versand einer HTML-Mail gedacht ist. Zur Benachrichtigung über die Zentrale ist es erforderlich, ein neues Programm auf der Zentrale anzulegen. Hierfür kann in der WebUI der Zentrale unter Programme und Verknüpfungen > Programme & Zentralenverknüpfung genutzt werden. Einem neuen Programm sollte ein aussagekräftiger Name zugewiesen werden. Des Weiteren sollte eine Wenn-Bedingung definiert werden. Für die Dann-Bedingung kann eines der beiden folgenden Skripte vollständig kopiert werden. Es besteht die Möglichkeit, die Skripte nach Bedarf anzupassen.

! Hier den Empfänger, Betreff und Text der Mail angeben
string MailEmpfaenger = "IhrMailZiel@provider.de";
string MailBetreff = "Einfache Mail";
string MailText = "Dies ist eine einfache Mail.";
MailText = MailText # "\\\r\\\nWeitere Zeilen können einfach angefügt werden.";

! Den Rest bitte 1:1 kopieren    
string stdout;
string stderr;
string teilstr;
string sendmail = "";
string sendbetreff = "";
string mailto = "";

foreach(teilstr, MailBetreff.Split(" "))
{
    sendbetreff = sendbetreff # "+" # teilstr;
}

foreach(teilstr, MailText.Split(" "))
{
    sendmail = sendmail # "+" # teilstr;
}

foreach(teilstr, MailEmpfaenger.Split(" "))
{
    mailto = mailto # "+" # teilstr;
}

system.Exec ("/bin/sh /etc/config/addons/mh/email.sh "# sendbetreff # " " # sendmail # " " # mailto, &stdout, &stderr);

Zeilentrennung

Für einfache Mails erfolgt die Zeilentrennung über \\\r\\\n

string MailText = "Hier ist Zeile 1.";
MailText = MailText # "\\\r\\\nHier ist Zeile 2.";
! Hier den Empfänger, Betreff und Text der Mail angeben
string MailEmpfaenger = "IhrMailZiel@provider.de";
string MailBetreff = "HTML E-Mail";
string MailText = "Dies ist eine HTML-E-Mail.";
MailText = MailText # "\<br\>Weitere Zeilen können einfach angefügt werden.";
MailText = MailText # "\<img src=\"https://www.easy-smarthome.de/fileadmin/images/EasySmartHomeLogo.jpg\" alt=\"Mein Bild\"\>";

! Den Rest bitte 1:1 kopieren
string stdout;
string stderr;
string teilstr;
string sendmail = "";
string sendbetreff = "";
string mailto = "";

foreach(teilstr, MailBetreff.Split(" "))
{
    sendbetreff = sendbetreff # "+" # teilstr;
}

foreach(teilstr, MailText.Split(" "))
{
    sendmail = sendmail # "+" # teilstr;
}

foreach(teilstr, MailEmpfaenger.Split(" "))
{
    mailto = mailto # "+" # teilstr;
}

system.Exec ("/bin/sh /etc/config/addons/mh/htmlmail.sh "# sendbetreff # " " # sendmail # " " # mailto, &stdout, &stderr);

Zeilentrennung

Für einfache Mails erfolgt die Zeilentrennung über \<br\>

string MailText = "Hier ist Zeile 1.";
MailText = MailText # "\<br\>Hier ist Zeile 2.";

Mehrere Empfänger

Mehrere Empfänger können aufgeführt werden, indem sie durch ein Semikolon getrennt angegeben werden.

string MailEmpfaenger = "Mail1@provider.de\;Mail2@provider.de\;Mail3@provider.de";

smartha home

Um eine E-Mail zu versenden, muss der Node-Blue Knoten Mail in der Kategorie CloudMatic verwendet werden.