Network: Needish · clandescuento · Willka Travel & Adventures
// you’re reading...

Usando Twitter desde CakePHP

Hace unos días empecé a construir un “componente” para conectar CakePHP con el API de Twitter. Tengo lista una primera versión (alpha) con algunas de las funcionalidades implementadas. Todavia quedan cosas por mejorar, como el manejo automático de errores, pero más de vale Release Early, Release Often[1], que echar a dormir el código.

Pueden descargarlo desde aqui: cakephp_twitter-v0.1alpha.zip (4Kb)

Documentación (:P)

La forma de uso es la siguiente. Si lo queremos usar desde un controlador:

var $uses = array("Twitter");

Y en la acción correspondiente:

$this->Twitter->metodo([parámetros], [autenticación]);

Si quisieran usarlo desde un modelo, lo mejor sería hacer:

App::import('model','Twitter');
$twitter = new Twitter();
$twitter->metodo([parámetros], [autenticación]);

No todos los métodos que el API soporta están implementados, en Twitter::$_methods pueden ver los que se implementaron, sus parametros y los valores por defecto. Los parámetros están definidos con los mismos nombre que en el API de Twitter

El parámetro parámetros, es un array con los parametros necesarios para la invocación.

El parámetro autenticación solo es necesario en los casos en que el método lo requiera. En la definición de cada método hay un atributo authentication que indica si es requerida. Este parametro es un array(’user’ => $user, ‘pass’ => $password), pero para mayor facilidad pueden construirlo usando cualquiera de los siguientes dos métodos:

  1. Twitter::createAuthentication($user, $password)
  2. Twitter::setAuthentication($user, $password)

Ejemplos:

// Get the public timeline
$response = $this->Twitter->getPublicTimeline(); 

// Update an user status
$this->Twitter->setAuthentication($user, $pass);
$response = $this->Twitter->updateStatus(
	array("status"=>"My new Status")
);

// Create a friend
$response = $this->Twitter->createFriend(
	array(
		"id"=>"newfriend"
	),
	$this->Twitter->createAuthentication(
		$user,
		$pass
	)
);

Actualización: Está probado con la versión más reciente de CakePHP (1.2.0.6589) y en PHP 5, probablemente en PHP 4 no funciona porque usa json_decode (no incluido)

Comments

2 comments for “Usando Twitter desde CakePHP”

  1. Hola,

    Quería darte las gracias por este POST, era justo lo que necesitaba para poder concluir con una tarea en la que me encontraba trabajando hoy. Aprovechando la organización de tu código introduje un método que me hacía falta, nada excepcional simplemente incluí las siguientes líneas:

    “userTimeline” => array(
    //http://twitter.com/statuses/user_timeline.format
    “url” => “http://twitter.com/statuses/user_timeline.json”,
    “method” => “get”,
    “defaultParameters” => array(
    “id”=>null,
    “count”=>5,
    “since”=>null,
    “since_id”=>null,
    “page”=>null
    )
    ),

    Posted by Jose Andres Martinez | February 5, 2009, 20:46
  2. Interesante codigo. Gracias por compartirlo. Apenas haga tiempo de utilizarlo, tendras mi feedback.

    Saludos

    Posted by walter | March 23, 2009, 11:28

Post a comment

Mi nombre es Pablo Viojo y tengo 27 años. Nací en Uruguay el 7 de agosto de 1981. Actualmente vivo en Santiago, Chile
Aparte de esto me interesa todo lo que tenga que ver con Internet y las nuevas tecnologías. Más info aquí, en mi hCard o en formato FOAF

View Pablo Viojo's profile on LinkedIn

Featured Posts

Romper paradigmas
February 23, 2009

A veces es necesario romper paradigmas…
¿Por qué la vista, o un elemento de la vista, no puede comunicarse con el modelo?
Paradigma: Un paradigma es —desde fines de la década de 1960— un modelo o patrón en cualquier disciplina científica u otro contexto epistemológico. El concepto fue originalmente específico de la gramática; en 1900 el diccionario [...]

Reedición: Microformatos, los bloques de la web semántica
November 18, 2008

¿Que son los microformatos?
Se trata de formatos de marcado XHTML, aplicables en contextos particulares, que utilizan los atributos definidos por los estándares para mejorar la semántica de los documentos. Son una herramienta muy util para aquellas estructuras que se repiten frecuentemente en documentos, ya sea que se trate de documentos creados por una persona, por [...]

La importancia del Undo en las Web Applications
November 11, 2008

Tomado de Needish the Blog, con permiso del autor
Robert O’Callahan, en su artículo The Essence Of Web Applications, resume algunos aspectos de las aplicaciones web y su relación con las aplicaciones de escritorio.
En lo personal no estoy muy de acuerdo con lo que opina, sobre todo cuando menciona aspectos relacionados con los elementos [...]

La importancia de las interfaces en los nuevos modelos de interacción web
May 14, 2006

Últimamente este blog ha tenido bastante poco movimiento, fundamentalmente debido a falta de tiempo por parte de quien escribe por estos lados.
Si bien tengo unos cuantos temas que me gustaría tocar, fundamentalmente porque en los últimos meses me ha tocado entrar en un área bastante nueva de la programación para la web (sí, esa, la [...]

Suscribe

Enter your email address: