Automatisch »Twittern« mit PHP

Twitter (www.twitter.com) ist ein Instant-Nachrichtendienst mit zig Millionen Nutzern. Wir zeigen, wie man Termine und kurze Nachrichten automatisch über PHP an den Twitter-Dienst posten kann.

Twitter lässt sich am Besten als Lösung zwischen Blog und Chat bezeichnen. Die maximal 140 Zeichen langen Nachrichten fallen nach kurzer Zeit aus dem Aufmerksamkeitsbereich der Nutzer. Ähnlich wie bei einem Nachrichtenticker verschwinden sie aus der Liste. Allerdings können sie durch Interessierte (Follower) neu in das System eingestellt werden. Für Blogs mit tagesaktuellen Nachrichten oder Einrichtungen mit täglichen Veranstaltungen ist das Twittter System eine interessante Möglichkeit neue Zielgruppen zu erreichen. Damit die täglichen Nachrichten und Termine nicht immer händisch in Twitter eingetragen werden müssen, braucht es eine automatische Lösung.

Twitter bietet eine einfache Schnittstelle (API) um Nachrichten einzustellen. Das folgende Beispiel enthält eine kleine PHP-Klasse und einen Aufruf.

PHP Twitter Klasse
 
$t = new doTwitter();
$t->sendMsg("Ich bin eine kleine Nachricht");
 
/**
* Einfache Klasse zum Senden einer Nachricht an Twitter
* $tuser und $tpassword bitte anpassen
**/

class doTwitter {
var $tuser = "melaniemueller";
var $tpassword = "geheim";
var $tapiurl = "http://twitter.com/statuses/update.xml";
 
function doTwitter() {}
 
// sends a max 140 char msg to twitter
function sendMsg($tdata) {
if (strlen($tdata)>=140) {
$p = strpos($tdata," ",100);
if ($p==0 || $p>125) $p=125;
$tdata = substr ($tdata, 0, $p)."...";
}
$tdata = "status=".urlencode($tdata);
 
// connect 2 twitter
$ch = curl_init($this->tapiurl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $tdata);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERPWD, "{$this->tuser}:{$this->tpassword}");
$tdata = curl_exec($ch);
 
// send message
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return ($httpcode != 200) ? false : true;
}
}
 

 

mbe-frontpageDiese Klasse haben wir für einen unserer Kunden eingesetzt. Die fast täglichen Termine und häufigen Nachrichten werden mittels Cronjob automatisch in Twitter Nachrichten umgewandelt. Dabei sollte man darauf achten, dass die Links in den Twitter Nachrichten so kurz wie möglich sind. Ein bisschen Geduld muss man auch mitbringen. Im Laufe der Zeit wächst die Schar der Folgenden (Follower) und die Nachrichten werden wahrgenommen.

Weiterführende Links

 

Kommentar hinzufügen

E-Mail: Für Antworten. Wird nicht angezeigt.
  Sicherheitscode zur Prüfung. Nur Kleinschreibung. Keine Leerzeichen.
Kommentare (2)
Re: Funktioniert nicht
15. Februar 2011
Joest Feenders

Hallo Marc1423,
danke für den Hinweis. Das funktioniert in der Tat so nicht mehr - Twitter hat die Art der Authentifizierung auf ein deutlich komplexeres Verfahren (Server-Key) umgestellt ... Ich werden diesen Beitrag in ein paar Tagen rausnehmen (sobald Du das hier gelesen hast), der ist einfach veraltet ... und demnächst eine aktualisierte Version einstellen ;-)
Ciao Joest

Funktioniert nicht
14. Februar 2011
Habe den Code mit eigenem PW und USER getestet. Funktiniert leider nicht. Frage mich auch warum $tapiurl definiert wird und dann nicht mehr genutzt wird.
 

Verlag Klaus Wagenbach (Bestellabwicklung / Webshop)
Der Verlag Klaus Wagenbach (www.wagenbach.de) gilt als einer... weiter

Microsite - 25 Jahre Gmeiner Verlag
Der Gmeiner Verlag hat anlässlich des 25jährigen Jubiläums... weiter

Ostpreussen - Microsite für eine Buchpremiere
Die Kinoindustrie macht es vor. Zu jedem ernsthaften Film gibt... weiter

Ostpreussen - Microsite für eine Buchpremiere