Mobile studiVZ-Seite als Twitter-Schnittstelle zum Buschfunk

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (Jetzt bewerten!)
Loading ... Loading ...

studi_mobi1Seit dem 04.03.09 sind studiVZ, schülerVZ und meinVZ auch als mobile Variante verfügbar. Dadurch können auch Nutzer ohne iPhone unterwegs die wichtigsten Dinge “checken”. Die Seite macht einen sehr schlanken Eindruck und bietet u.a. folgende Funktionen: Status-Update, Nachrichten, Fotos, Gruscheln und ein ausführliches Profil. Außerdem bleibt der Login-Status erhalten, wenn man die Webseite zu einem späteren Zeitpunkt erneut aufruft.

Obwohl mir die iPhone-Anwendung und die ausführliche Web-Variante genügen, lässt sich aus der mobilen Version trotzdem ein Nutzen ziehen.  Meine Twitter-Aktualisierungen kann ich an studiVZ senden, ohne mich dort einloggen zu müssen. Dazu habe ich mir ein PHP-Skript erzeugt, dass in verschiedenen Schritten abläuft:

Zunächst werden einige Login-Informationen verwaltet.

$loginStudi = “xxx”;
$pwStudi = “xxx”;
$loginTwitter = “xxx”;

Nun hole ich meine letzte Twitter-Aktualisierung:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, “http://twitter.com/statuses/user_timeline/$loginTwitter.json”);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$buffer = curl_exec($ch);
$json = json_decode($buffer);
$text = $json[0]->text;

Als nächstes generiere ich eine neue Session-ID:

$url = “http://m.studivz.net/op/studivz/de/mcat/login/”;
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_USERAGENT, “Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en)”);
$buffer = curl_exec($ch);
$needle = “/op/studivz/de/mcat/login/;jsessionid=”;
$session = substr($buffer,strpos($buffer,$needle)+strlen($needle),32); // REGEX = nerdy ;)

Damit logge ich mich nun ein:

$url = “http://m.studivz.net/op/studivz/de/mcat/login/;jsessionid=”.$session;
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, “username=$loginStudi&password=$pwStudi”);
$buffer = curl_exec($ch);

Schließlich kann ich die Statusaktualisierung durchführen:

$url = “http://m.studivz.net/op/studivz/de/mcat/status/senden/;jsessionid=”.$session;
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, “text=$text”);
$buffer = curl_exec($ch);



Wenn man die PHP-Datei von cronjob.de aufrufen lässt, werden Twitter-Aktualisierungen auch an studiVZ gesendet. Dieses Script  lässt sich natürlich ergänzen. Damit eine Nachricht nur ein mal im studiVZ erfolgreich aktualisiert wird, speicher ich sie z.B. als MD5-Hash in einer Textdatei ab. Es bleibt zu hoffen, dass die mobile studiVZ-Seite auch künftig relativ einfach aufgebaut ist. Sie funktioniert derzeit über eine in der URL gespeicherte Session-Variable und kommt ohne weitere Security-Token aus.

Gefällt Dir "Ningel Skript"?

33 Meinungen

  1. Хм… Пока это у нас не очень сильно развито, так что придётся немного подождать.

  2. _Mephistopheles

    Hey, seit Heute überflüssig *VZ hat ne Verbindung zur Twitter API hergestellt :-D
    Die sind so krank.. kopieren alles… Kannst inzwischen auch per SMS den Buschfunk füttern ;-) alelrdings über eine Sondernummer 56000 oder so^^
    MfG

  3. Hmm, das mit der URL hat wohl nicht ganz hingehauen… Hier nochmal: http://twitter.mehrblog.net/support.php

  4. Marco

    Benni :

    Hey,

    So für die, die es Interessiert ich habe, das Script mit der MD5-Hash Funktion erweitert, damit auch nur neue Tweets gepostet werden.

    Ich danke Dir!

  5. Hey,

    So für die, die es Interessiert ich habe, das Script mit der MD5-Hash Funktion erweitert, damit auch nur neue Tweets gepostet werden.

    Falls jemand Interesse daran hat, packe ich die Anleitung gleich mit daran:

    Folgender Code Schnipsel muss unter die Loginvariablen.
    Der Code Überprüft ob schon eine Text-Datei mit den Twitter user existiert, ansonsten wird diese neu angelegt.

    $filename = ”.$loginTwitter.’.txt’;

    if (file_exists($filename)) {
    // print “The file $filename exists”;
    } else {
    // print “The file $filename does not exist”;
    $textdatei = fopen ($filename, “w”);
    fclose($textdatei);
    }

    Nun packen wir vor den Code der die Session ID generiert folgendes:

    $handle = fopen ($filename, “r”);
    $contents = fread ($handle, filesize ($filename));
    fclose ($handle);

    $checksum = md5($text);

    if($contents==$checksum){

    echo “Kein Neuer Twitter Status”;
    } Else {

    Und danach

    echo “Neue Twitter Status”;

    $datei_handle=fopen($filename,w);
    fwrite($datei_handle,$checksum);
    fclose($datei_handle);

    }

    Der erste Codeblock öffnet die twittername.txt und überprüft die Checksumme mit der aktuellen Checksumme.
    Ist die Checksumme gleich passiert nichts, da kein neuer Status vorliegt. Sollte die CHecksumme unterschiedlich sein, liegt ein neuer Status vor
    und die Funktion, die den Status nach Twitter postet wird aufgerufen.

    Der zweite Codeblock aktualisiert die twittername.txt mit der aktuellen Checksumme um wie im ersten Codeblock beschrieben, doppelte Einträge zu verhindern.

    Gruß Benni

    Twitter: http://twitter.com/hhbensch

  6. Ich habe mich mal der Snippets hier bedient und eine Version mit @Reply-Filter und Überprüfung auf Aktualität erstellt. Zu finden ist das komplette Skript auf meiner Seite (http://blackit.de). Sieht noch hässlich aus, funktioniert aber schon ganz gut ;) !

    Danke nochmal für den hier geposteten Code und viele Grüße!

  7. [...] der cURL-Snippets auf http://www.wuestenigel.com/2009/03/07/mobile-studivz-seite-als-twitter-schnittstelle/ habe ich dieses nette kleine Skript zusammengeschustert, welches zusätzlich zu der Grundfunktion [...]

  8. Hmm, das mit der URL hat wohl nicht ganz hingehauen… Hier nochmal: http://twitter.mehrblog.net/support.php

  9. @Marco
    Hast du gesehen das diser Blog auf genennt wird? :D

  10. hab problem gefunden, bzw jd
    war nen falsche url
    zusehen ist das ganze auf http://darksocial.ath.cx/t4e/ =)

  11. Marco

    @fx2309
    Bitte ncoh mal den letzten Absatz meines Beitrags lesen. ;-)
    Stichwort: MD5

  12. fx2309

    der hit wäre noch ob das Script guckt ob der läste EIntrag nicht älter als x Minuten ist und nur neue Einträge postet.

    Da mein Cronjbo alle 5 Minuten läuft, steht bei mir im VZ immer seit 1-5 Minuten…. dass ist etwas suboptimal

  13. Marco

    Hi Michael,

    es gibt mittlerweile einen Service dafür: http://twitter.mehrblog.net/

    Ansonsten hilft es idR, Schritt für Schritt dem Fehler auf die Schliche zu kommen. Für den Anfang schlage ich vor, einfach mal print_r() nach jedem Schritt für die entsprechenden Objekte auszugeben.

    Grüße

Jetzt kommentieren

Ähnliche Erfahrungen

  1. schuelerVZ-Buschfunk schlägt Twitter um Faktor 500
  2. studiVZ integriert Twitter und SMS
  3. Die studiVZ iPhone Applikation ist gelungen
  4. Twitter-Spam
  5. Twitter News
  6. Buschfunk mit Farben
  7. Sind Twitter-Mashups legal
  8. Twitter setzt Applikation-Links auf nofollow
  9. Buschfunk Sprüche
  10. Neue Twitter-Startseite
  11. Listen auf Twitter – I like!
  12. Deutsche Twitter-Charts reloaded
  13. Mehr Besucher durch Twitter
  14. Fehler in der Twitter-Suche
  15. Pinnwand Bilder bei studiVZ und meinVZ
  16. Twitter kann süchtig machen
  17. Twitter-Suche funktioniert wieder
  18. Linktipps 19 Jahre nach dem Gewinn der Weltmeisterschaft
  19. Twitter-Mosaik
  20. Stoppt OAuth die Twitter Hacks?