Twitter API 1.1 … fácil, no?

Pensaba que para practicar un poco utilizaría el Twitter API y pondría una lista de tweets en una página. No puede ser muy complicado, no? Pues ….

  1. Crear la application de Twitter … hecho.
  2. Leer un poco y concluir que sólo necesito Application only access.
  3. O “SSL absolutely required”! Necesito Connecting to Twitter API using SSL

… total, es un poco complicado. Instalé Go para crear un archivo pem de root certificates … Go parece interesante pero tengo otras cosas que aprender ahora. Hice un buen intento de construirlo yo, pero tenía problemas con que el servicio no me podiá “authenticate” y luego iba bien pero no me daba ningún tweet. Intenté con file_get_contents and luego con cURL.

Entonces leí esto en https://dev.twitter.com/overview/api/ssl 

When communicating with Twitter, it’s always best to use well-tested and predefined libraries to communicate with the API.

Y encontré TwitterOAuth. No es un Bundle de Symfony2, pero se puede instalar con composer. Lo instalas y aparece un tu carpeta vendor. Para utilizarlo en un service hay que poner esto al comienzo del código:

use \Abraham\TwitterOAuth\TwitterOAuth;

y luego algo asi para coger unos tweets:

// pon lo que te interesa claro :)
$query_array = array(
    'q' => 'empleo barcelona php',
    'count' => 30
);

$twitter = new TwitterOAuth(
    $this->twitter_api_key,
    $this->twitter_api_secret,
    $this->twitter_access_token,
    $this->twitter_access_token_secret
);

return($twitter->get("search/tweets", $query_array));

Y ahora tengo unos cuanto tweets con que jugar.