Aus Raspberry Pi Geek 02/2017

Mit dem ESP8266 E-Mails versenden (Seite 2)

Sehen wir uns nun die zwei Zeilen für den Mailversand etwas genauer an. Die erste (Zeile 31) erzeugt ein Objekt vom Typ SendEmail. Diesem übergeben Sie alle Parameter, um sich mit einen SMTP-Server zu verbinden. Die Tabelle “SendEmail-Objekt” beschreibt diese Parameter der Reihe nach. Ein Objekt des Typs SendEmail hat eine Methode send() (Zeile 32), mit der Sie die E-Mails versenden. Die dazu notwendigen Parameter beschreibt die Tabelle “Send-Methode”.

SendEmail-Objekt

Parameter

Beschreibung

smtp_server

providerspezifisch (Beispiel: smtp.gmail.com)

smtp_port

häufig 25, bei Gmail 465

smtp_login

providerspezifisch (oft die E-Mail-Adresse)

smtp_password

das zum SMTP-Login passende Passwort

smtp_timeout

maximale Wartezeit für Netzwerkoperationen

smtp_ssl

true/false: SSL aktivieren oder abschalten

Send-Methode

Parameter

Beschreibung

mail_from

E-Mail-Adresse des Absenders

mail_to

E-Mail-Adresse des Empfängers

mail_subject

Betreff der E-Mail

mail_text

Inhalt der E-Mail

Jetzt kommt der kniffelige Part: Alle Provider verwenden zwar denselben Satz an Parametern, erwarten dafür aber häufig unterschiedliche Werte. Anders als ein moderner Client kann der ESP8266 die Parameter nicht “erraten”. Hier liegt der Teufel im Detail – tragen Sie also die Parameter gewissenhaft ein.

Google nutzt für seinen Dienst Gmail beispielsweise den Server smtp.gmail.com, den Sie auf dem Port 465 erreichen. Als Login dient hier die E-Mail-Adresse samt entsprechendem Passwort. Als Wert für den Timeout hat sich im Test 5000 bewährt; SSL aktivieren Sie über true für die entsprechende Variable.

Die E-Mail-Adressen innerhalb der Send-Anweisung umschließen Sie mit spitzen Klammern (<>). Zusätzlich aktivieren Sie noch das Login für weniger sichere Apps. Um das zu erreichen, folgen Sie den Anweisungen in der Warnnachricht, die Sie von Gmail erhalten. Vermutlich verwenden andere Provider ähnliche Mechanismen – geben Sie also nicht so schnell auf, wenn es nicht auf Anhieb klappt.

Auch die allgegenwärtige Spam-Flut macht Probleme: Die Provider greifen auf immer neue Verfahren zurück, um ihre Systeme abzusichern. Versuchen Sie es unter Umständen erst einmal mit einem lokalen Mailserver auf einem NAS oder einem RasPi: Hier haben Sie die volle Kontrolle über alle Mechanismen und Parameter.

Bewegungsmelder

Nun ergänzen wir die Schaltung um einen Bewegungsmelder [4] – am Programm ändert sich dadurch erst einmal nichts. Die Abbildung 3 zeigt den erweiterten Schaltplan des Aufbaus. Neben dem Sensor kommt noch eine kleine Transistorschaltstufe hinzu, da das Signal des Bewegungsmelders nicht ausreicht, um den ESP8266 sauber zurückzusetzen.

Abbildung 3: So kommt Leben ins System: Über einen Bewegungsmelder nimmt die neue Version des Testaufbaus Daten auf und sendet eine entsprechende Nachricht an einen Mail-Account.

Abbildung 3: So kommt Leben ins System: Über einen Bewegungsmelder nimmt die neue Version des Testaufbaus Daten auf und sendet eine entsprechende Nachricht an einen Mail-Account.

Der Kondensator C4 an der Basis des Transistors stabilisiert das Ausgangssignal des Sensors, damit es keinen falschen Alarm auslöst. Vielleicht ist Ihnen aufgefallen, dass der Basisvorwiderstand in dieser Transistorschaltstufe fehlt: Das liegt daran, dass er sich schon auf dem Modul des Sensors befindet.

Einen Tipp noch zum Sensor: Wenn Sie ihn zum Ausprobieren auf dem Schreibtisch haben, schaltet er vermutlich ständig. Um das Problem zu minimieren, stecken Sie ihn einfach in eine leere (Klo-)Papierrolle. Dadurch meldet er nur noch Bewegungen, die sich direkt vor der Öffnung abspielen.

Fazit

Den Versand von E-Mails erledigt der ESP8266 dank der hier vorgestellten Bibliothek im Handumdrehen. Über die Arduino IDE fällt es leicht, die Software zu bearbeiten oder zu erweitern und wieder auf den Mikrocontroller aufzuspielen. 

Der Autor

Martin Mohr erblickte im Zeitalter der Magnetringkernspeicher und Hebdrehwähler das Licht der Welt. Schon früh entwickelte er eine Vorliebe für alles, was blinkt; eine Ausbildung zum Elektroniker verstärkte das noch. Nach einem Informatikstudium lag sein Beschäftigungsfeld überwiegend in der Entwicklung von Java-Applikationen. Mit dem Raspberry Pi erwachte die alte Liebe zur Elektronik wieder.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben