E-Mails (in Unraid) automatisch per Skript (Python / Bash) versenden

,
Bist du auf der suche nach einem Python- oder Shellskript, was automatische E-Mails verschicken kann? Dann bist du hier genau richtig!
Schon mein Video dazu gesehen?
Anleitung

Als aller erstes muss das folgende Skript wie beschrieben angepasst werden.

Python3 Skript

Welche Variablen müssen geändert werden?

  1. sender_email                 => Beispiel: [email protected]
  2. recipient_emails            => Beispiel: [email protected]
  3. smtp_server                   => Beispiel: smtp.example.com (kommt auf Anbieter an)
  4. smtp_port                       => Beispiel: 587 (kommt auf Anbieter an)
  5. smtp_username             => Beispiel: [email protected]
  6. smtp_password              => Beispiel: x1bf4wqp8xd2nvih (=> Anleitung siehe Video)
  7. subject                            => Beispiel: Wartungsarbeiten
  8. html_content                  => Beliebig anpassbar
Shell / Bash Skript

Welche Variablen müssen geändert werden?

  1. SMTPFROM               => Beispiel: [email protected]
  2. SMTPTO                      => Beispiel: [email protected]
  3. SMTPSERVER             => Beispiel: smtp.example.com (kommt auf Anbieter an)
  4. SMTPUSER                 => Beispiel: [email protected]
  5. SMTPPASS                 => Beispiel: x1bf4wqp8xd2nvih (=> Anleitung siehe Video)
  6. SUBJECT                    => Beispiel: Wartungsarbeiten
  7. MESSAGEBODY         => Beliebig anpassbar

Wenn nun das Pythonskript bearbeitet wurde, müssen wir jetzt nur noch Unraid einrichten.

Unraid benötigt hier nun Python-Pakete.
Diese können wir über (mindestens) zwei Wege installieren.

Möglichkeit 1

Bei der ersten Möglichkeit installieren wir ein zusätzliches Tool aus den Unraid Community Applications. Das Tool was ich meine, nennt sich NerdTools.

Dafür müssen wir nur im Unraid Apps-Tab nach diesem Tool suchen.
Wenn ihr dieses Tool (auch siehe Bild) gefunden habt, installiert es.

NerdTools Unraid

Jetzt sollte dieses Plugin erfolgreich auf euerem Unraid Server installiert sein.

Doch ein Schritt ist noch nötig.
Geht jetzt unter eueren „SETTINGS“ auf „NerdTools“.
Hier müssen wir jetzt nach drei Paketen Ausschau halten:

  • python-pip-xx.x.x
  • python-setuptools-xx.x.x
  • python3-x.x.xx
NerdTools Settings
Möglichkeit 2

Bei der zweiten Möglichkeit installieren wir auch ein zusätzliches Plugin: un-get. Dieses stammt aber von GitHub, besser gesagt vom Nutzer ich777.

Als ersten Schritt müssen wir dieses Plugin installieren. Da dieses nicht im Apps-Tab verfügbar ist, müssen wir in den „PLUGINS“-Tab von Unraid wechseln. Hier können wir unter dem Reiter „Install Plugin“ per Link Plugins laden (siehe Bild).

Bestätige das Laden mit dem klick auf „INSTALL“.

Nachdem das Plugin nun erfolgreich installiert sein sollte, öffne ein neues Terminal von Unraid und gebe folgenden Befehl ein:

Wenn etwa das gleiche wie im Bild rechts angezeigt wird, ist das Plugin erfolgreich installiert und wir können fortfahren.

Jetzt nutzen wir den folgenden Befehl, um das Plugin zu aktualisieren:

Jetzt können wir python3 mit folgendem Befehl installieren:

Nachdem wir nun Python3 über einer der zwei Möglichkeiten installiert haben, müssen wir nur noch das Skript in Unraid einfügen.

Hierfür nutzen wir ein weiteres Plugin, dieses nennt sich „User Scripts“ und ist ebenfalls im Apps-Tab, also den Community Applications von Unraid verfügbar.

Das Menü hierfür erreichen wir, in dem wir unter dem Tab „SETTINGS“ auf „User Scripts“ navigieren.

Hier können wir jetzt ein neues Skript hinzufügen. Dies geht mit einem klick auf „ADD NEW SCRIPT“.
Noch einen Namen festlegen, wie zum Beispiel „PythonMail“, und das Skript ist angelegt.

Jetzt können wir das bearbeitete Skript vom Anfang einfügen, in dem wir unter dem gerade angelegtem Skript auf das Zahnrad klicken und hier „EDIT SCRIPT“ auswählen.

Jetzt kommt noch eine Wichtige Sache: Unraid schreibt in die erste Zeile Standardmäßig „#!/bin/bash“. Diese Zeile muss entfernt werden.

In den nun leeren Editor können wir das kopierte Skript einfügen.

Jetzt speichern wir das Skript mit „SAVE CHANGES“.

Das sollte es jetzt auch schon gewesen sein.
Wenn wir nun das Skript ausführen wollen, können wir entweder einen Cron-job dafür anlegen, um es regelmäßig zu starten, oder wir starten es manuell.
Für den ersten Test können wir es manuell über den Button „RUN SCRIPT“ starten.

Wenn -wie im Bild rechts- keine Fehler auftauchen, sollte die E-Mail versendet worden sein.

Ergebnis

Im E-Mail-Postfach sollte das wie folgt aussehen:

So einfach ist es, E-Mails automatisiert -oder auch manuell- über ein Pythonskript bzw. Shell-/Bashskript zu versenden.

Related Articles