RSS E-Mail Benachrichtigung

Wenn man einige Dienste auf seinem Uberspace am Laufen hat, dann wird es irgendwann mühselig bei allen immer stets die aktuelle Version im Auge zu behalten. Das wissen viele Entwickler auch und stellen daher RSS-Feeds zur Verfügung, die nur bei Updates ihrer Software aktualisiert werden. Allerdings wäre es praktisch, wenn man darüber per E-Mail benachrichtigt würde. Dafür gibt es tatsächlich auch einen Dienst, den man auf dem Uberspace laufen lassen kann und zwar rss2email. Die folgende Installationsanleitung hält sich an die Anleitung des Entwicklers, ergänzt um die Konfiguration, damit der Dienst regelmäßig ausgeführt wird.

Installation

Zunächst muss rss2email heruntergeladen werden. Überprüft bitte auf der Downloadseite, ob die Version noch die aktuellste ist. Danach muss das Paket entpackt werden und die Dateiberechtigungen gefixt werden - bei mir fehlten alle Berechtigungen. Dann muss schließlich noch das Wrapper-Skript angelegt werden, damit r2e im Pfad landet. Da das Skript an und für sich in Python geschrieben ist, denkt daran im mitgelieferten r2e-Skript den Python-Aufruf auf python2 oder python2.7 umzubiegen, sofern ihr python auf python3 umgebogen habt. Außerdem muss die Beispielkonfiguration kopiert werden.

$ wget http://www.allthingsrss.com/rss2email/rss2email-2.71.tar.gz
$ tar -xzf rss2email-2.71.tar.gz
$ chmod 700 rss2email-2.71
$ mv rss2email-2.71 ~/bin/rss2email
$ chmod 600 ~/bin/rss2email/*
$ chmod +x ~/bin/rss2email/r2e
$ cat <<'__EOF__' >> ~/bin/r2e
#!/bin/sh
cd ~/bin/rss2email
./r2e $*
__EOF__
$ chmod +x ~/bin/r2e
$ cp ~/bin/rss2email/config.py.example ~/bin/rss2email/config.py

Als nächstes muss man die Konfiguration anpassen, die meisten Einstellungen müssen jedoch nicht verändert werden. Die DEFAULT_FROM E-Mail-Adresse muss angepasst werden, sie ist die Standardadresse, von der diese Mails versendet werden. Damit man auch über Änderungen an einem Post informiert wird, sollte noch TRUST_GUID = 0 gesetzt werden. Das Versenden der E-Mails ist am einfachsten über sendmail möglich, dazu muss SMTP_SEND = 0 gesetzt werden. Ich hab außerdem noch UTF-8 an den Anfang der CHARSET_LIST gesetzt.

$ nano ~/bin/rss2email/config.py

Als letztes muss der Cronjob eingerichtet werden, wobei das genau genommen nicht als Cronjob gelöst wird, sondern, wie von den Ubernauten vorgeschlagen, mit runwhen. Dazu muss man zunächst sicherstellen, dass die daemontools für diesen Nutzer bereits eingerichtet wurden, dann muss der runwhen-Job eingerichtet werden und eingestellt werden, wann und wie oft der Job ausgeführt werden soll. Der Job soll dabei täglich nachts um drei ausgeführt werden:

$ test -d ~/service || uberspace-setup-svscan
$ runwhen-conf ~/etc/run-r2e "$HOME/bin/r2e"
$ sed -i 's/RUNWHEN=\"\"/RUNWHEN=\",H=3\"/' ~/etc/r2e/run
$ ln -s /home/zwiebel/etc/run-r2e ~/service

Hinweis: Die $HOME-Variable in dem runwhen-conf-Aufruf ist Absicht, in den Anführungszeichen wird ~ warum auch immer nicht korrekt expandiert.

Datenbank anlegen

Zunächst muss die Datenbank, in der die Feeds gespeichert werden, angelegt werden. Diese wird mit der <ZIELADRESSE>, an die die Feeds gesendet werden, initialisiert.

$ r2e new <ZIELADRESSE>

Feeds abonnieren

Jetzt müssen nur noch die Feeds abonniert werden. Dies erfolgt mit dem add-Befehl, als erstes Beispiel dient der Update-Feed von rss2email, weitere Feeds werden genauso hinzugefügt:

$ r2e add http://feeds.feedburner.com/allthingsrss/hJBr

Was man noch besser machen kann

Wie immer ziemlich vieles ;-) Was ich hier konkret noch verbessern möchte:

  • Da es hier einen runwhen-Job und damit also eine Abhängigkeit von den daemontools gibt, mein obligatorischer Wunsch endlich eine Möglichkeit zu finden, dass ich diese Services überwachen kann um bei Problemen benachrichtigt zu werden. Das bleibt wohl nochn Weilchen ne Baustelle...

Für weitere Vorschläge und Ideen bin ich immer zu haben, bis die Kommentarfunktion tut leider nur per Mail oder Twitter.

Irgendwann kommt hier noch die Kommentarfunktion.
HowTo Kodi Internes Uberspace Linux FireTV Gnome