Accediendo a la API cerrada de Tuenti

5 Marzo 2010 35 Comentario(s) Comentar

Nota: Tenía escrita esta entrada en borradores antes de que Tuenti lanzara su API de forma cerrada y orientada a empresas que adquieran una licencia, tal y como se puede leer hoy en Barrapunto.

Que no me guste Tuenti no significa que no me guste trastear con las API que ofrecen los distintos servicios web. Pero Tuenti, a día de hoy (más de cuatro años después de su lanzamiento), sigue sin contar con una API pública que permita a los programadores desarrollar aplicaciones para la red social. Supongo que son los intereses económicos los que fuerzan a que (casi) todo el tráfico pase por la web, y, por tanto, aparezcan los anuncios y eventos patrocinados que financian el chiringuito. Como digo, no hay disponible una API pública, pero sí cuentan con una privada que brinda el servicio a la aplicación de Tuenti para el iPhone lanzada recientemente.

Hace un tiempo, @adrinavarro mostró a un pequeño grupo de conocidos un paper. En dicho texto se explicaba muy por encima el modo de funcionamiento (obtenido mediante pruebas) de la citada API privada, pero con el inconveniente de que no se conocía cómo se enviaba la contraseña del usuario a la hora del login. Por tanto, nada se podía hacer con la API.

Por aburrimiento, recordé el texto y me puse con ello (al igual que más gente) hasta conseguir poder usar la API. En cuanto al inconveniente del login, no fue un gran problema, ya que me dio por probar un método que conocía de antes (es lo que tiene haber trasteado anteriormente con la web :D). Lo que sí me supuso un problema fue el tener que jugar a adivinar (literalmente) los nombre de los métodos al no disponer de un iPhone con el que realizar pruebas.

De todo esto ha salido una class en PHP (para variar) que programé para realizar pruebas. Dicha class permite loguearse en Tuenti a través de la API y hacer uso de todos los métodos conocidos de la misma. Con dichos métodos se puede cambiar el mensaje de estado, obtener los perfiles de amigos, obtener fotos de los álbumes, etc.

Por comodidad he subido la class a GitHub junto con una lista de los métodos disponibles. En dicha lista sólo están los nombres de los métodos, más que descriptivos. Tampoco es plan de documentar la API haciendo el trabajo de una empresa con la que no guardo ninguna relacion, como es Tuenti.

Actualizado el viernes 12 de marzo: Ya ha pasado una semana, pero quería comentar algunas cosas:

Para empezar, no esperaba la repercusión que todo esto ha tenido, llegando incluso a las portadas de menéame y Barrapunto. Además, ha aparecido en multitud de tweets y en un puñado más de sitios de Internet. Parece que el tema de la API interesa, pero Tuenti no dice nada al respecto.

He acabado documentando por encima los métodos, y aún tengo pendiente ampliar la lista de métodos/parámetros gracias a unos datos enviados por @YouWoTMA. Podéis echarle un ojo al wiki de GitHub.

También recordar que hice la class (o clase :P) simplemente para realizar pruebas, no pensada para un uso real. Si alguien desea realizar alguna aplicación utilizándola es libre para hacerlo, pero que recuerde las posibles consecuencias (por parte de Tuenti, evidentemente).

Un último apunte: en los comentarios de esta entrada hay una conversación empezada por zenitraM de cómo conectar al chat de Tuenti por medio de Jabber.

Creo que no olvido nada, sólo decir que muchas gracias a los que habéis leido, comentado, votado o promocionado esto. :)

tOAuth: la API de Twitter con OAuth y PHP

19 Febrero 2010 15 Comentario(s) Comentar

La API de Twitter dispone de soporte para OAuth, un protocolo que permite que los usuarios puedan hacer uso de aplicaciones sin tener que introducir su usuario y contraseña, evitando el riesgo que esto conlleva. Para los usuarios, este protocolo es una ventaja, además de por la seguridad que ofrece, por la comodidad a la hora de autentificarse en las aplicaciones (para lo que bastan unos simples clics del ratón), pero para los desarrolladores no lo es tanto. Desde mi (humilde) punto de vista, al OAuth le pueden dar por saco.

En la documentación oficial de la API hay un código de ejemplo alojado en GitHub de cómo usar OAuth con PHP. Este ejemplo no me gustaba y me parecía lioso, por eso me puse a ver cómo funcionaba hasta conseguir crear un clon más sencillo. El resultado, tOAuth, una class en PHP que permite usar de manera simple la API de Twitter con OAuth.

Podéis encontrar el código de la class junto con un ejemplo de uso en el repositorio tOAuth de mi cuenta de GitHub. El ejemplo creo que es bastante explícito por sí solo, pero de todas formas a continuación procedo a explicarlo.

Continuar leyendo...
- Que necesidad tiene un tipo como ese de contarme historias de ese calibre
- La que tenga él es lo de menos, que necesidad tienes tú de escucharlo en todo caso :P

Mini entrada patrocinada por el juego "Hotel Dusk: Room 215" y por @Juendy_
Comentarios (0)

Spotify: Error 110

6 Septiembre 2009 14 Comentario(s) Comentar

Desde hace un tiempo Spotify, el programa para oír música gratuitamente, dejó de funcionarme. Este programa sólo cuenta con versiones para Windows y Mac OS X, como yo uso Ubuntu, para poder usarlo utilizo Wine.

Al principio de dejar de funcionar, el programa se quedaba en la pantalla de "Iniciando sesión..." y parecía como si no tuviera conexión con Internet, por lo que pensé que sería algo de Wine.

Hace unos días, me dio por volver a probarlo y ya al menos el programa mostraba un mensaje de error como el de la imagen siguiente, aunque no fui capaz de solucionar nada.



Hoy necesitaba música desesperadamente, por lo que me dio por volver a intentarlo y me fijé que el mensaje daba un código de error (110). Hice una búsqueda por Google y encontré un mensaje en la comunidad de soporte de Spotify. El mensaje es de alguien que tuvo el mismo problema y explica la solución, tan sencilla como desmarcar la casilla "Recuérdame" y volver a introducir la contraseña.

La gracia del asunto es que yo ya había probado con otra cuenta de usuario e incluso reinstalé el programa, aunque todo eso fue cuando sólo salía lo de "Iniciando sesión..." (antes de que saliera el mensaje de error).

Fuente | Community-powered support for Spotify