Tweetnest Installationsanleitung.

23 01 2013

Nachdem mich einige gefragt haben, wie man denn Tweetnest überhaupt installiert und auch die Heldenstadt meiner Anleitung nicht ganz folgen konnte, schreibe ich hier mal eine ausführlichere Anleitung.

Ich muss zugeben, die vorherige Anleitung zum Import seines Twitter-Archiv-Downloads setzte einiges an Wissen voraus und Tools wie z.B. git sind nicht auf jedem Rechner vorhanden und auch einen Shell-Zugang zu seiner Webseite hat nicht jeder.

Daher nun eine Anleitung für Leute mit Webspace auf dem PHP und MySQL verfügbar sind und sonst nichts weiter benötigt wird.

Besorgt euch als Erstes den aktuellen Stand von Tweetnest. Wenn ihr den Link zum Fork des Users tralafiti anklickt, seht ihr einen Button mit der Aufschrift „Zip“, dort wird die aktuelle Version auf euren Rechner herunter geladen.

Entpackt das Archiv, ihr erhaltet einen Ordner „tweetnest-master“. Diesen einfach in „tweetnest“ umbenennen und auf euren Webspace hochladen.
Nun öffnet im Browser die Adresse eurer Webseite und fügt „/tweetnest“ am Ende hinzu. Es sollte sich nun die Installationsseite von Tweetnest öffnen. Hier müsst ihr das Formular mit euren Daten ausfüllen.

Das Feld „TWITTER SCREEN NAME:“ ist selbst erklärend, hier tragt ihr euren Twitternamen ein. Auch die Zeitzoneneinstellung ist keine Hexerei. Für Deutschland wählt ihr bei „YOUR TIME ZONE:“ einfach „Europe/Berlin“ in dem Feld aus.

Die nächste Textbox ist mit „TWEET NEST PATH:“ benannt, diese wird automatisch gefüllt und sollte nur geändert werden, wenn ihr wirklich wisst, was ihr da macht. Also so stehen lassen.
Der nächste Abschnitt ist für die Datenbank-Konfiguration zuständig.
Tragt dort eure MySQL-Zugangsdaten ein, solltet ihr sie nicht wissen, schaut in der Doku eures Anbieters nach oder fragt diesen. Die Datenbank, die Tweetnest nutzen soll, muss schon vorhanden sein. Das Feld „TABLE NAME PREFIX:“ müsst ihr nicht ändern, im Normalfall ist die Einstellung in Ordnung.

Die nächsten zwei Felder drehen sich um das Admin-Passwort. Da ich ja davon ausgehe, dass ihr keinen Shell-Zugang zu eurem Webspace habt, setzt hier bitte ein Passwort. Dies sollte natürlich nicht identisch mit eurem Passwort bei Twitter sein.

Die Haken bei „“FOLLOW ME” BUTTON“ und „SMARTYPANTS“ können einfach gesetzt bleiben.

Das Feld „@ANYWHERE API KEY“ lasst ihr leer, dies ist für den Betrieb von Tweetnest nicht zwingen notwendig.

Ein Klick auf „Submit and Setup“ schließt die Einrichtung ab. Löscht im Anschluss die Datei „setup.php“ von eurem Webspace.

Der erste Schritt nach dem Setup ist das Aufrufen der Load User Seite. Diese erreicht ihr, indem ihr an die Domain eures Webspace „tweetnest/maintenance/loaduser.php“ anfügt.

Wenn ihr also „www.twitterarchiv.tld“ besitzt, so müsst ihr nun „www.twitterarchiv.tld/tweetnest/maintenance/loaduser.php“ aufrufen. Ihr werdet nach einem Benutzernamen und einem Passwort gefragt. Der Nutzername ist euer Twittername und das Passwort ist das bei der Installation vergebene Admin-Passwort.

Die nächsten Schritte kümmern sich um den Import des Twitter-Archivs. Die Zip-Datei, die ihr bei Twitter herunter laden könnt, enthält mehrere Dateien und Ordner. Uns interessieren nur die Dateien im Ordner „data\js\tweets“. Für jeden Monat gibt es dort eine Datei, der Dateiname ist immer wie folgt aufgebaut: „jjjj_mm.js“. So heißt beispielsweise die Datei für den Januar 2013 „2013_01.js“. Alle Javascript-Dateien aus dem tweets-Ordner nehmt ihr nun und ladet sie in den schon vorhandenen Ordner „tweetnest/archive“ auf eurem Webspace.

Nun wird die Seite „maintenance/loadarchive.php“ im Browser aufgerufen, die komplette URL müsst ihr euch wieder wie im oben beschriebenen Beispiel zusammenbauen.
Normalerweise startet man den Import über den Shell-Zugang, dort gibt es dann auch keine Probleme. Über den Browser hat eine PHP-Datei nur eine beschränkte Ausführungszeit, dann wird der Import abgebrochen und ihr seht eine Fehlermeldung eures Browsers („Zeitüberschreitung“).
Keine Sorge, dies ist nicht weiter problematisch und der Entwickler des Skripts hat dies berücksichtigt. Ladet einfach die Seite neu, nachdem der Fehler aufgetreten ist. Dies wiederholt ihr nach jeder Fehlermeldung. Je nach Server, auf dem ihr euren Webspace habt, kann mit einem Mal laden zwischen 2500 und 5000 Tweets importiert werden. So könnt ihr grob überschlagen, wie oft ihr die Seite aufrufen müsst.
Versucht aber nicht wie im Wahn die Seite neu zu laden, dass beschleunigt nichts. Also immer erst die Fehlermeldung abwarten und schauen, dass der Browser nicht noch versucht die Seite zu laden. Bei den meisten Anbietern ist das Timeout auf 60 Sekunden gesetzt, d.h., nach 60 Sekunden wird der Import abgebrochen und erst dann ladet ihr die Seite neu.

Wenn ihr dann die Seite „Tweet Nest: Loading tweets from archive“ seht, dann ist der Import komplett abgeschlossen.

Nun könnt ihr Tweetnest benutzen.
Damit Tweetnest auch eure zukünftigen Tweets empfangen kann, müsst ihr regelmäßig die Seite „maintenance/loadtweets.php“ aufrufen. Bei diesem Aufruf werden maximal 3200 Tweets der Vergangenheit geladen, wer also extrem häufig twittert, muss die Aktualisierung häufiger laufen lassen als der wenig-Twitterer.





Das eigene Tweetarchiv.

19 01 2013

Viele von uns sind bei Twitter anzutreffen. Wir pusten unsere Gedanken ins Netz und dort verschwinden sie nach ein paar Tagen im Nirvana. Keiner erinnert sich mehr daran, die Chance nachzulesen ist bei Twitter auch nicht gerade einfach. Wenn ich einen meiner ersten Tweets lesen will, klappt das nicht.

Nun gibt es seit einiger Zeit Tools wie Tweetnest und Thinkup. Beide archivieren eure Tweets. Tweetnest ist spartanisch gehalten, ihr seht eure Tweets, könnt auf einer Zeitleiste einzelne Tage auszählen oder eine Textsuche bemühen.
Thinkup sichert nicht nur Tweets, ihr könnt dort auch Facebook, Google+ und Foursquare einbinden und eure Statusupdates sichern. Außerdem gibt es einige Auswertungsmöglichkeiten und mehr oder weniger sinnvolle Grafiken, neudeutsch Charts.
Beide Tools haben aber einen Nachteil, sie können durch eine Beschränkung der Twitter-API nicht besonders weit in die Vergangenheit schauen. Diese Twitter-API ist die Verbindung der Programme zu euren Tweets. Twitter erlaubt es nur 3200 Tweets der Vergangenheit zu laden. Wer also zum Installationszeitpunkt eines Tools mehr als 3200 Tweets hat, schaut in die Röhre. Eure Tweets, die ihr in Zukunft schreibt, werden alle erfasst – wenigstens da seid ihr auf der sicheren Seite. Ich habe Tweetnest seit über einem Jahr laufen und habe dort etwas über 13.000 Tweets gesammelt. Somit fehlten mir aber über 23.000!

Twitter bietet nun seit einiger Zeit die Möglichkeit, seine Tweets herunter zu laden. Diese Funktionalität wird nach und nach für alle Nutzer freigeschaltet.
Der Punkt ist in den Account-Einstellungen im unteren Teil zu finden, wenn er für euch aktiviert ist.
Auch hier kommt ihr nicht sofort an eure Tweets, ihr müsst erst einen Download anfordern. Dies geht ganz einfach via Mausklick und dann heißt es warten. Bei mir betrug die Wartezeit nur 5 Minuten. Die Zeit variiert aber. Wenn der Download endgültig bereitsteht, bekommt ihr eine Mail mit dem Downloadlink.

Bei mir sind (nahezu) alle Tweets enthalten. Ca. 20 Stück sind trotzdem irgendwo im Datenorkus verschwunden.
Das Twitter-Archiv enthält alles, was man benötigt um seine alten Tweets anzuschauen – ihr benötigt lediglich einen Browser.
Wenn die Daten schon mal da sind, dann könnte man sie ja gleich weiter nutzen. Wie sind sie denn abgelegt? Jeder Monat wird in einer separaten Datei gespeichert. Einmal als CSV-Datei und einmal als JavaScript-Datei. Interessant an den JavaScript-Dateien ist die Tatsache, dass es nahezu sauberes JSON ist – lediglich die erste Zeile stört.
Ein „tail -n +2“ würde unter Linux in diesem Fall schon weiter helfen.

Da ich sicher nicht der Erste bin, der die Daten nutzen will, fragen wir doch mal unsere freundliche Datenkrake Google, wie es diesbezüglich aussieht. Siehe da, es gibt einen Fork des originalen Tweetnests auf GitHub. Dieser enthält nicht nur einen Import, sondern ist auch auf dem aktuellen Tweetnest-Stand.
Ein beherztes „git clone git://github.com/tralafiti/tweetnest.git“ später und ich hatte die Version auf meiner Platte. Noch schnell die Tweetnest-Konfiguration („inc/config.php“) und die dazugehörige Datenbank sichern, die geänderte Tweetnest-Version einspielen und die Konfiguration wieder zurückspielen.

Diese Tweetnest-Version benötigt noch eine Änderung der Datenbank, die ID jedes Tweets darf nur noch einmal vorkommen. Doch keine Sorge, ich müsst euch darüber keine Gedanken machen. Mittels „php upgrade.php“ startet ihr ein mitgeliefertes Skript, welches euch die Arbeit abnimmt.
Das ging einfacher als gedacht. Nun die Javascript-Dateien aus dem Twitter-Export in das Verzeichnis “archive” kopierten und den Import mittels “php maintenance/loadarchive.php” anschmeißen. Etwas mehr als 15 Minuten später waren meine fast 36.000 Tweets importiert, es gab keine Dopplungen und ich kann sie wie von Tweetnest gewohnt durchsuchen und mir der Zeit nach geordnet ansehen.
Wie bereits erwähnt, fehlen 20 Tweets, dies kann ich persönlich aber verschmerzen. Die zukünftigen Tweets werden dann über den Tweetnest eigenen Mechanismus wie gewohnt abgerufen und gespeichert.





#ff @zalez

11 01 2013

Es ist mal wieder Freitag und es wird Zeit für eine weitere Empfehlung in meiner losen Follow-Friday-Rubrik.

Heute empfehle ich euch den @zalez. Er ist ein ehemaliger Sunnie Boy, wurde dann ohne eigenes Zutun Orakel und ist heute Amazone. So zumindest die letzten Stationen seines beruflichen Werdegangs.

Der ein oder andere wird ihn als einen der Titelhelden aus CSI:Munich kennen. Dort betreibt er eines seiner Hobbys- ZFS anpreisen 😉

Aber auch sonst ist Constantin ein echter Held. Ein Systemheld. Der Held der ersten Stunde und auch heute noch aktiv. Dank ihm darf auch der Heldenfunk weiter leben, auch wenn es Sun nicht mehr gibt.

Doch das ist nicht sein einziger Podcast!
Wenn ihr euch mit Constantin über Essen unterhalten wollt, macht euch auf etwas gefasst. Der gute Mann ist schließlich ein Paleosoph 🙂

In diesem Sinne: Folgt alle @zalez und grillt drei saftige Steaks – eins für euch, eins für Constantin und natürlich eins für mich.





Leipzig von oben.

6 01 2013

Ein geniales Video über die geilste Stadt der Welt. Ich freue mich auf den kompletten Film.

Schaut euch an, was man mit einem Multicopter, einer guten Kamera und einer gehörigen Portion Können hin bekommt: