Programmer's Reference Guide

Zend_Service_Technorati

Zend_Service_Twitter

Einführung

Zend_Service_Twitter bietet einen Client für die » REST API von Twitter. Zend_Service_Twitter erlaubt es eine öffentliche Zeitachse abzufragen und wenn man einen Benutzernamen und ein Passwort für Twitter angibt, ist es auch erlaubt den eigenen Status zu erhalten und zu aktualisieren, Freunden zu antworten, Nachrichten an Freunde schicken, Tweets als Favoriten markieren und vieles mehr.

Zend_Service_Twitter implementiert einen REST Service und alle Methoden geben eine Instanz von Zend_Rest_Client_Result zurück.

Zend_Service_Twitter ist in Untersektionen geteilt damit man einfachst erkennen kann welcher Typ von Aufrufen angefragt wird.

  • account, stellt sicher das die eigenen Zugangsdaten gültig sind, prüft das API Limit und beendet die aktuelle Session für den authentifizierten Benutzer.

  • status, empfängt die öffentlichen und die Zeitlinien von Benutzern, und erlaubt es Sie anzusehen, zu aktualsieren, zu zerstören und Antworten für den authentifizierten Benutzer zu empfangen.

  • user, empfangen von Freunden, Verfolger des authentifizierten Benutzers. Mit der show Methode kann man erweiterte Informationen über den angegebenen Benutzer erhalten.

  • directMessage, empfängt die direkten Nachrichten des authentifizierten Benutzers und erlaubt es neue direkte Nachrichten zu senden und zu löschen.

  • friendship, erstellt oder entfernt eine Freundschaft für den authentifizierten Benutzer.

  • favorite, auflisten, erstellen oder entfernen eines favorisierten Tweets.

Authentifizierung

Mit der Ausnahme des Holens der öffentlichen Zeitlinie benötigt Zend_Service_Twitter eine Authentifizierung um zu funktionieren. Twitter verwendet aktuell eine » HTTP Basis Authentifizierung. Man kann den eigenen Benutzernamen oder eine registrierte Email mit dem Passwort, für das Login bei Twitter, übergeben.

Beispiel #1 Erstellung der Twitter Klasse

Das folgende Codebeispiel zeigt wie man den Twitter Service erstellt, den Benutzernamen und das Passwort übergibt, und dann überprüft ob Sie korrekt sind.

$twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
// Prüft die Angaben mit Twitter
$response = $twitter->account->verifyCredentials();

            

Account Methoden

  • verifyCredentials, verwende diese Methode um zu Testen ob die angegebenen Benutzerdaten gültig sind, und das mit einem minimalen Overhead.

    Beispiel #2 Die Angaben prüfen

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->account->verifyCredentials();
    
                        
  • endSession, verwende diese Methode um Benutzer aus der Clientanwendung abzumelden.

    Beispiel #3 Beenden von Sessions

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->account->endSession();
    
                        
  • rateLimitStatus, gibt die restliche anzahl von API Anfragen zurück die der authentifizierte Benutzer noch hat, bevor das API Limit für die aktuelle Stunde erreicht ist.

    Beispiel #4 Status des Rating Limits

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->account->rateLimitStatus();
    
                        

Status Methoden

  • publicTimeline, gibt die 20 letzten Statusmeldungen von nicht geschützten Benutzern mit einem eigenen Benutzericon zurück. Die öffentliche Zeitlinie wird von Twitter alle 60 Sekunden gecacht.

    Beispiel #5 Empfangen der öffentlichen Zeitlinie

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->status->publicTimeline();
    
                        
  • friendsTimeline, gibt die 20 letzten Statusmeldungen zurück die von authentifizierten Benutzer gesendet wurden und den Freunden dieser Benutzer.

    Beispiel #6 Empfangen der Zeitlinie von Freunden

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->status->friendsTimeline();
    
                        

    Die friendsTimeline Methode akzeptiert ein Array von optionalen Parameters um die Abfrage zu verändern.

    • since, grenzt die zurückgegeben Ergebnisse auf jene Statusmeldungen ein die nach dem spezifizierten Datum/Zeit (bis zu 24 Stunden alt) erstellt wurden.

    • page, die Seite die man zurückbekommen will.

  • userTimeline, gibt die 20 letzten Statusmeldungen zurück die von authentifizierten Benutzern geschrieben wurden.

    Beispiel #7 Empfangen der Zeitlinie von Benutzern

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->status->userTimeline();
    
                        

    Die userTimeline Methode akzeptiert ein Array von optionalen Parametern um die Abfrage zu verändern.

    • id, spezifiziert die ID oder den Bildschirmnamen des Benutzers für den die friends_timeline zurückzugeben ist.

    • since, grenzt die zurückzugebenden Ergebnisse auf jene Stati ein die nach dem spezifizierten Datum/Zeit (bis zu 24 Stunden als) erstellt wurden.

    • page, welche Seite zurückgegeben werden soll.

    • count, spezifiziert die Anzahl der Stati die man erhalten will. Kann nicht größer als 200 sein.

  • show, gibt einen einzelnen Status zurück, der durch den ID Parameter, wie anbei, spezifiziert wird. Der Author des Status wird auch zurückgegeben. Diese Methode benötigt eine Tweet ID die an Sie übergeben wird.

    Beispiel #8 Den Status eines Benutzers sehen

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->status->show(1234);
    
                        
  • update, aktualisiert den Status des authentifizierten Benutzers. Diese Methode erwartet das der aktualisierte Status übergeben wird den man an Twitter übermitteln will. Ein zweiter optionaler Parameter ist die ID des Tweets auf den man antwortet.

    Beispiel #9 Aktualisieren des Benutzerstatus

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->status->update('Mein größter Tweet');
    
                        

    Die update Methode akzeptiert einen zweiten optionalen Parameter.

    • in_reply_to_status_id, die ID eines bestehenden Status auf den dieser Status als Antwort gesendet werden soll.

  • replies, gibt die 20 letzten Antworten/@replies (Statusaktualisierungen die mit @username anfangen) für den authentifizierten Benutzer zurück.

    Beispiel #10 Zeigt Benutzerantworten

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->status->replies();
    
                        

    Die replies Methode akzeptiert ein Array von optionalen Parametern um die Anfrage zu verändern.

    • since, grenzt die Ergebnisse die man erhält auf jene ein, deren Stati nach dem spezifizierten Datum/Zeit (bis zu 24 Stunden alt) erstellt wurden.

    • page, welche Seite soll zurückgegeben werden.

    • since_id, gibt nur Stati zurück die eine größere ID (das ist die aktuellere) als die spezifizierte ID haben.

  • destroy, entfernt den Status der durch den benötigten ID Parameter spezifiziert ist.

    Beispiel #11 Löschen eines Benutzerstatus

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->status->destroy(12345);
    
                        

Benutzermethoden

  • friends, gibt bis zu 100 Freunde des authentifizierten Benutzers zurück, die zuletzt aktualisiert haben, und jeden von Ihnen mit dem aktuellen Status.

    Beispiel #12 Empfangen von Benutzerfreunden

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->user->friends();
    
                        

    Die friends Methode akzeptiert ein Array von optionalen Parameter um die Abfrage zu verändern.

    • id, spezifiziert die ID oder den Bildschirmnamen des Benutzers von dem die Liste an Freunden zurückgegeben werden soll.

    • since, grenzt die zurückzugebenden Ergebnisse auf jene Stati ein die nach dem spezifizierten Datum/Zeit (bis zu 24 Stunden als) erstellt wurden.

    • page, welche Seite soll zurückgegeben werden.

  • followers, gibt die Verfolger des authentifizierten Benutzers zurück, und jeden von Ihnen mit seinem aktuellen Status.

    Beispiel #13 Empfangen der Verfolger eines Benutzers

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->user->followers();
    
                        

    Die followers Methode akzeptiert ein Array von optionalen Parametern die die Anfrage verändern.

    • id, spezifiziert die ID oder den Bildschirmnamen des Benutzers von dem die Liste an Verfolgern zurückgegeben werden soll.

    • page, welche Seite soll zurückgegeben werden.

  • show, gibt erweiterte Informationen über einen angegebenen Benutzer zurück, der durch eine ID oder einen Bildschirmnamen spezifiziert wird wie durch den anbei benötigten ID Parameter.

    Beispiel #14 Zeigt Benutzerinformationen

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->user->show('myfriend');
    
                        

Methoden zur direkten Benachrichtigung

  • messages, gibt eine Liste der 20 letzten direkten Nachrichten für den authentifizierten Benutzer zurück.

    Beispiel #15 Empfangen der letzten empfangenen direkten Nachrichten

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->directMessage->messages();
    
                        

    Die message Methode akzeptiert ein Array von optionalen Parametern um die Anfrage zu verändern.

    • since_id, gibt nur direkte Nachrichten mit einer ID zurück, die größer als (das ist aktueller als) die spezifizierte ID sind.

    • since, grenzt die zurückzugebenden Ergebnisse auf jene Stati ein die nach dem spezifizierten Datum/Zeit (bis zu 24 Stunden als) erstellt wurden.

    • page, welche Seite soll zurückgegeben werden.

  • sent, gibt eine Liste der 20 letzten direkten Nachrichten zurück die vom authentifizierten Benutzer gesendet wurden.

    Beispiel #16 Empfangen der letzten gesendeten direkten Nachrichten

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->directMessage->sent();
    
                        

    Die sent Methode akzeptiert ein Array von optionalen Parametern um die Abfrage zu verändern.

    • since_id, gibt nur direkte Nachrichten mit einer ID zurück, die größer als (das ist aktueller als) die spezifizierte ID sind.

    • since, grenzt die zurückzugebenden Ergebnisse auf jene Stati ein die nach dem spezifizierten Datum/Zeit (bis zu 24 Stunden als) erstellt wurden.

    • page, welche Seite soll zurückgegeben werden.

  • new, sendet eine neue direkte Nachricht vom authentifizierten Benutzer zum spezifizierten Benutzer. Benötigt sowohl den Benutzer also auch den Text Parameter wie unten gezeigt.

    Beispiel #17 Senden einer direkten Nachricht

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->directMessage->new('myfriend', 'mymessage');
    
                        
  • destroy, entfernt eine direkte Nachricht die im benötigten ID Parameter spezifiziert wird. Der authentifizierte Benutzer muß der Empfänger der spezifizierten direkten Nachricht sein.

    Beispiel #18 Löschen einer direkten Nachricht

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->directMessage->destroy(123548);
    
                        

Methoden für die Freundschaft

  • create, befreundet den im ID Parameter spezifizierten Benutzer mit dem authentifizierten Benutzer.

    Beispiel #19 Erstellung eines Freundes

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->friendship->create('mynewfriend');
    
                        
  • destroy, beendet die Freundschaft des im ID Parameter spezifizierten Benutzers, mit dem authentifizierten Benutzer.

    Beispiel #20 Löschen eines Freundes

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->friendship->destroy('myoldfriend');
    
                        
  • exists, tested ob eine Freundschaft zwischen dem authentifizierten Benutzer und dem übergebenen Benutzer existiert.

    Beispiel #21 Prüfen ob eine Freundschaft existiert

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->friendship->exists('myfriend');
    
                        

Methoden für Favoriten

  • favorites, gibt die 20 letzten Stati von Favoriten für den authentifizierten oder durch den ID Parameter spezifizierten Benutzer zurück.

    Beispiel #22 Favoriten empfangen

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->favorite->favorites();
    
                        
    • id, die ID oder der Bildschirmname des Benutzers von dem die Liste der bevorzugten Stati zurückgegeben werden soll.

    • page, welche Seite soll zurückgegeben werden.

  • create, favorisiert den mit dem ID Parameter spezifizierten Status für den authentifizierten Benutzer

    Beispiel #23 Favoriten erstellen

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->favorite->create(12351);
    
                        
  • destroy, entfernt die Favorisierung des des mit dem ID Parameter spezifizierten Status für den authentifizierten Benutzer.

    Beispiel #24 Entfernt Favoriten

    $twitter = new Zend_Service_Twitter('myusername', 'mysecretpassword');
    $response = $twitter->favorite->destroy(12351);
    
                        

Zend_Service_Twitter_Search

Einführung

Zend_Service_Twitter_Search bietet einen Client für die » Such API von Twitter. Das Twitter Suchservice wird verwendet um in Twitter zu suchen. Aktuell gibt es Daten nur im Atom oder JSON Format zurück, aber ein komplettes REST Service kommt in Zukunft welche auch XML Antworten unterstützen wird.

Twitter Trends

Gibt die Top Zehn Abfragen zurück die aktuell bei Twitter Trend sind. Die Antwort enthält die Zeit der Abfragen, den Namen jedes einzelnen Trendtopics, und auch die Url zur Twitter Suchseite für dieses Topic. Aktuell unterstützt die Such-API für Trends nur eine Rückgabe von JSON weswegen die Funktion ein Array zurückgibt.

$twitter_search = new Zend_Service_Twitter_Search();
$twitter_trends = $twitter_search->trends();

foreach($twitter_trends as $trend) {
    print $trend['name'] . ' - ' . $trend['url'] . PHP_EOL
}

        

Das zurückgegebene Array enthält zwei Werte:

  • name, ist der Name des Trends.

  • url, ist die Url um die Tweets für diesen Trend zu sehen.

Suchen in Twitter

Die Verwendung der Suchmethode gibt Tweets zurück die einer speziellen Abfrage entsprechen. Es gibt eine Anzahl von » Suchoperatoren die für die Abfrage verwendet werden können.

Die Suchmethode akzeptiert sechs verschiedene optionale URL Parameter die als Array übergeben werden:

  • lang, begrenzt die Tweets auf eine angegebene Sprache, wobei lang durch einen » ISO 639-1 Code angegeben werden muß

  • rpp, die Anzahl der Tweets die pro Seite zurückzugeben sind, bis zu einem Maximum von 100

  • page, die Seitennummer die zurückzugeben ist, bis zu einem Maximum von etwa 1500 Ergebnissen (basierend auf RPP * Seite)

  • since_id, gibt Tweets mit den Status IDs zurück die größer als die angegebene ID sind

  • show_user, ist es "true", fügt es ">user<:" am Anfang des Tweets hinzu. Das ist nützlich für Leser die das Authorfeld in Atom nicht anzeigen. Der Standardwert ist "false"

  • geocode, gibt Tweets zurück bei denen Benutzer in einerm angegebenen Radium zum angegebenen Längen- und Breitengrad sind, wobei der Ort des Benutzers von seinem Twitter Profil genommen wird. Der Wert des Parameters wird durch "latitude,longitude,radius" spezifiziert, wobei die Einheiten des Radius entweder in "mi" (Meilen) oder "km" (Kilometer) spezifiziert werden müssen.

Beispiel #25 Suchbeispiel für JSON

Das folgende Codebeispiel gibt ein Array mit den Werten der Suchergebnisse zurück

$twitter_search = new Zend_Service_Twitter_Search('json');
$search_results = $twitter_search->search('zend', array('lang' => 'en'));

            

Beispiel #26 Suchbeispiel für ATOM

Das folgende Codebeispiel gibt ein Zend_Feed_Atom Objekt zurück.

$twitter_search = new Zend_Service_Twitter_Search('atom');
$search_results = $twitter_search->search('zend', array('lang' => 'en'));

            

Zend-Spezifische Zugriffsmethoden

Wärend die Such API von Twitter nur zwei Methoden spezifiziert, hat Zend_Service_Twitter_Search zusätzliche Zugriffsmethoden die für die Modifizierung von internen Eigenschaften verwendet werden können.

  • getResponseType() und setResponseType() erlauben es den Antworttype der Suche zu empfangen und, zwischen JSON und ATOM, zu verändern.


Zend_Service_Technorati
blog comments powered by Disqus

Select a Version

Languages Available

Components

Search the Manual