Hoy es día de trastear con APIs, y he pensado que podía retomar una vieja idea de furilo(tm) y jugar un poco con la de bloglines.
Se trata de mostrar tu nivel de desconexión con la realidad en base a los posts que te quedan por leer en bloglines y aplicar un baremo. Ya que hemos empezado con el post de furilo, pues tomaremos la proporción que él planteaba: 787 items pendientes = 65% de desconexión, por lo que 1210 serían el 100%.
Podríamos hacerlo sin instalar absolutamente nada, simplemente deberíamos de tratar lo que devuelve el rpc, pero para facilitar el trabajo usaremos la gema Bloglines4R 0.1.0, que tiene poquitos métodos pero los suficientes para hacer lo que queremos. De hecho es una de las cosas más básicas que se pueden hacer.
- Conseguimos los posts pendientes de leer
- Operamos para obtener el porcentaje de desconexión
- Et voilà
class BloglinesController < ApplicationControllerrequire 'bloglines'def desconectormaximo = 1210beginbloglines = Bloglines::WebServices.new(:user => params[:id])post_pendientes = bloglines.updatedesconexion = (post_pendientes*100)/maximo@resultado = "Estoy al #{desconexion.to_s}% de desconexion"rescue Exception => e@resultado = eendendend
El manejo de excepciones en este caso no es más que recoger si el usuario existe o no (ni lo traduzco en este caso)
Podéis probarlo aquí mismo entrando a http://mamuso.net/bloglines/desconector/tuemail@debloglines.com. Si funciona a la velocidad de la tortuga coja es porque dreamhost es lento hasta decir basta (pero barato, eso sí).
Un host en condiciones, unos test (que el personal se me echa encima si no), un formateo en javascript para poder incrustarlo en cualquier blog de forma fácil, y servicio hecho :)
Yo estoy varios días desatendiendo mi bloglines así que según el script Estoy al 218% de desconexion. Así que voy a ponerme al día ya!
- Tags: rubyonrails, bloglines, api, tiprails, codigo compártelo favorito


sergio
13 ene 2007 | 01:16
Estoy al 220%, ¡te gano!
Será que desde que probé el de Google no he vuelto a entrar. Oye, ¿por qué el máximo es 1210? Para la siguiente iteración, debería ser *200, ¿no?
A todo esto, ¿significa eso que tengo más de 2000 items sin leer? (y tú también). Lo digo porque entonces significa que *he* leído casi 2000 items a través de Google desde que no entro (y no hace tanto). Si no aprendo algo así, es que soy idiota...
mamuso
13 ene 2007 | 06:12
Pues, si, significa ni más ni menos que teníamos cachito por leer. Lo de los 1210 lo he sacado con la ultrasimple regla de 3:
787 items pendientes = 65% de desconexión
1210 (casi 11) = 100%
Pero si se te ocurre algún otro baremo absurdo estoy abierto a sugerencias :)
Yo es que el martes fue el último día que abrí bloglines (semana tonta, qué vamos a hacer), y tenía una burrada por leer.
sergio
13 ene 2007 | 07:46
Veo que para evitar inventarte un dato, tomas uno que se ha inventado furilo =;-)
Pues sí, déjame que te haga unas sugerencias para el baremo.
Tal como yo lo veo, una escala que midas en % debería dar un valor entre 0 y 100. Aunque hay excepciones a esta regla, pero creo que es de aplicación.
¿Qué hay que hacer para estar 0% desconectado? Esta claro, tener 0 items por leer.
¿Y para estar 100% desconectado? Tener sin leer absolutamente todo lo posible.
Bloglines te guarda un máximo de 200 items sin leer por feed, si no me equivoco. Creo que un buen máximo para el baremo sería 200 x número de feeds (que supongo que también se puede obtener con la API).
Es cierto que algunos feeds nunca llegarán a 200 items, o tardarán mucho. Es una noticia esperanzadora: es difícil estar 100% desconectado de la realidad.
mamuso
13 ene 2007 | 07:56
Digamos que sólo quería probar la gema, después lo podemos elaborar todo lo que nos de la gana, pero vamos, me hago esa revisión en un segundo.
Además no sólo he tomado un dato de furilo, sino que por mi hubiese hecho sólo un badget que dijese "tienes 2453 items sin leer en tu bloglines", y si pasas de... no se... 3000? poner ABANDONAO!!!! :)
mamuso.net
15 ene 2007 | 12:24
Mi buen amigo Sergio me sugiere una revisión del post anterior complicando un poquito más el baremo.
El nivel de desconexión en este caso se mediría tomando como base no el número de posts...