Skip to content

Ein Bot, der Raser in Wiesbaden twittert

Eine sorgfältig kuratierte Twitter-Bubble ist immer wieder gut für glückliche Zufälle. Vor einer Weile bin ich auf einen Tweet von @BerkshireCar aufmerksam geworden, der mein Interesse geweckt hat. Der Inhalt dieses Accounts wird von einem Bot gespeist, der Geschwindigkeitsübertretungen twittert, die in der englischen Grafschaft Berkshire westlich von London passieren.

Dazu werden Daten des Karten- und Navigationsdienstes HERE verwendet, der erfreulicherweise ein API bereitstellt. Außerdem stehen Anleitung und Quellcode des Twitter-Bots in einem GitHub-Repository als Open Source zur Verfügung.

Tachometer mit dem Wappen von Wiesbaden Nachdem ich mir beides angesehen hatte, war klar, dass ich so einen Bot auch gern für Wiesbaden hätte. Während die ursprüngliche Version, die in Großbritannien offenbar schon einige Nachahmer gefunden hat, den Dienst Integromat zur Ausführung nutzt, setze ich (vorerst jedenfalls) auf eine lokal installierte Lösung mittels n8n.

Im Folgenden gehe ich teilweise recht ausführlich auf die einzelnen Bestandteile des Twitter-Bots ein, beschreibe APIs, Software und Fallstricke, über die ich bei der Implementierung gestolpert bin.

"Ein Bot, der Raser in Wiesbaden twittert" vollständig lesen

VPN-Tunnel mit der FRITZ!Box 7320 und Linux

Sehr weit oben auf meiner ToDo-Liste stand, einen VPN-Tunnel über meine AVM FRITZ!Box ("Fritzbox") einzurichten. Das würde mir sicheren Zugriff aufs Internet auch dann ermöglichen, wenn ich mich in fremden WLANs einwähle. Dort würde ich nämlich zunächst einen verschlüsselte Verbindung zu meiner Fritzbox aufbauen und von dort Internetseiten aufrufen - ganz als wäre ich zuhause in meinem Heimnetzwerk.

Da ich in Sachen Netzwerk- und Serverkonfiguration noch einiges dazulernen kann, hatte ich mich bisher vor der VPN-Konfiguration gedrückt. Heute habe ich endlich den Schritt gewagt und das VPN - mit tatkräftiger Hilfe des AVM-Supports - schließlich auch erfolgreich eingerichtet. Doch der Reihe nach.

"VPN-Tunnel mit der FRITZ!Box 7320 und Linux" vollständig lesen

Polly - Twitter-Client für Linux mit Multi-Account

Polly (Logo)Es wird Zeit, dass ich hier Polly vorstelle, einen noch relativ jungen Twitter-Client für Linux. Für mich ist Polly der beste Twitter-Client, den es momentan für Linux gibt. Ok, da ist noch Tweetdeck; aber Tweetdeck basiert auf Adobe AIR, welches nicht mehr aktiv für Linux weiterentwickelt wird. Genau das und auch die (subjektive) Unbrauchbarkeit von Gwibber waren die Gründe, auf Polly umzusteigen.

Und dann kam Polly

Polly hieß anfänglich Schizobird, ist in Python programmiert und unterstützt mehrere Twitter-Accounts gleichzeitig (daher der ursprüngliche Name). Auf Wunsch einiger Nutzer wurde ein neuer Name gesucht, und Polly bekam schließlich den Zuschlag. Die Multi-Account-Fähigkeiten und eine Tweetdeck-ähnliche Darstellung der jeweiligen Accounts sowie der Spalten für Mentions und Direct Messages gaben für mich den Ausschlag, Polly etwas intensiver zu testen.

Aufgrund des noch recht jungen Alters von Polly war intensives Testen auch nötig, ich konnte einige Bugs finden und reporten und war positiv überrascht, wie schnell Hauptentwickler Marcelo Hashimoto auf meine Bugreports reagiert hat. Sogar einige meiner Feature-Wünsche sind mittlerweile in Polly enthalten! Da ist man doch gern Early Tester einer Open Source Software ;-)

Vogelhaltung

Es gibt ein PPA, das man als Quelle einbinden kann, um die Installation zu vereinfachen:

$ sudo add-apt-repository ppa:conscioususer/polly-daily
$ sudo apt-get update
$ sudo apt-get install polly

Ich bin aber einen anderen Weg gegangen und habe mir den Code direkt aus dem Repository ausgechekt: bzr . Vorteil: Ich kann regelmäßig und häufig per bzr update updaten, ohne auf eine Aktualisierung des PPA warten zu müssen. Nachteil: So eine "bleeding edge"-Version kann auch schon mal defekt sein. Das kam bei mir aber so gut wie nie vor:

$ cd ~  #Ins Home-Verzeichnis wechseln
$ sudo apt-get install python-socksipy python-oauth2 python-numpy bzr  #Benötigte Pakete installieren
$ bzr branch lp:polly  #Polly mittels bazaar auschecken
$ ~/polly/polly  #startet Polly

Natürlich könnt ihr das Verzeichnis polly jetzt auch woanders hinschieben. Wollt ihr den aktuellen Code aus dem Repository ziehen, genügt ein:

$ cd ~/polly
$ bzr update

Polly will einen Keks

Zu den bereits unterstützen Features zählen Favorites, Old- und New-Style Retweets, Mentions und Direct Messages - also fast alles, was man zum Twittern so braucht. Fotos und Videos können getwittert, Links automatisch gekürzt werden. Und Notifications lassen sich ins Ubuntu-System integrieren, wenn man's mag. Außerdem gibt es frei sortierbare Spalten, die Streams aus vier Kategorien enthalten können.

  • Tweet Stream: Home (der "normale" Stream); Mentions; eigene Tweets; Favorites; Retweets
  • User Stream: Followers; Friends
  • List Stream: meine Listen; Listen, auf denen ich stehe; Listen, die ich "abonniert" habe
  • Message Stream: Alle Direktnachrichten; Gesendete DMs; Empfangene DMs

Leider noch nicht implementiert ist die Twittersuche, aber der Menüpunkt dafür ist bereits vorhanden. Ich nehme an, das Feature wird in der nächsten größeren Version enthalten sein. Wer Ideen für weitere sinnvolle Features hat oder noch den einen oder anderen Bug findet, kann beides über Launchpad melden.

Polly hat bei mir mittlerweile Tweetdeck als Standard-Twitterclient abgelöst, und ich bin nicht der Einzige, dem das so geht ;-) Wenn ihr also nach einer sehr brauchbaren Alternative zu Gwibber und AIR-basierten Clients wie Tweetdeck sucht, gebt Polly einfach mal eine Chance.

Twitter-Plugin lernt OAuth

OAuth LogoNachdem Ende August die "OAuthcalypse" eintrat und Twitter externe Anwendungen seitdem nur noch per OAuth authentifiziert, musste auch das entsprechende Plugin für Serendipity angepasst werden. Am vergangenen Wochenende hat Garvin Hicking diese Funktionalität mit Hilfe der Community umgesetzt. Ich freue mich, dass ich dabei behilflich sein konnte. Momentan ist eine Testversion des Plugins hier zum Download verfügbar. Sollten keine Fehler mehr auftreten, dürfte die neue Version bald auch über den Serendipity-eigenen Installer SPARTACUS augeliefert werden.

Zu OAuth hatte ich ja im Rahmen der PHP Usergroup Rheinhessen im März einen kurzen Vortrag gehalten. Aufgrund der Umstellung bei Twitter ist OAuth mittlerweile wohl im Mainstream angekommen. Finde ich gut. Jetzt wird bereits über OAuth 2.0 diskutiert.