El problema del API de Remember The Milk

Que puedo decir respecto a RTM?
Pues que es una herramienta genial!

Me gusta bastante pues es un entorno sencillo que me ayuda a ordenar mis tareas pendientes, agruparlas por etiquetas, agregarle notas, fechas limite o incluso una url de referencia!

image

Hace mucho tiempo que la estoy usando (gracias a una recomendación de Gustavo) y debo repetirlo, su simplicidad es excelente.
El problema es que necesitas siempre estar conectado a la página.

A menos claro que via Google Gears permitas que trabaje offline, pero debo confesar que a pesar que el concepto Gears es bueno, no soy muy fanático, mas aun cuando siento que ese tipo de herramientas se amarran a un navegador en particular (es decir, que funcionan completamiente bien con un navegador, y con el resto…)

El asunto es el siguiente:
Hoy llegando del trabajo me pregunté que tan complicado sería hacer un cliente RTM que se integre a mi querido Windows 7.
Asunto complicado? pues les comento que RTM brinda una API la cual pueden consultar en la siguiente dirección.

La documentación es sencilla, presentando la lista de métodos disponibles, los cuales son un claro reflejo de lo que hace un usuario normal frente a RTM (ver tareas, eliminar tareas, etc.)

Lo utilizado para el consumo de servicios (pues estamos hablando de servicios!) inicialmente es vía REST, concepto que personalmente les recomiendo si es que estan interesados en los aspectos generales de arquitecturas y servicios (notan que no digo SOA? en realidad es por algo)

Para poder consumir los métodos, es necesario tener un key, sea personal o comercial, en ambos casos se hace un pedido de la key, inicialmente hice un pedido para uso “no comercial”, la respuesta fue inmediata, me dieron una clave de acceso y otra de verificación de respuestas (es que todas las respuestas que envian los servicios contienen como parte del mensaje, la llave de retorno)

image

El asunto es que TODOS los métodos disponibles, requieren esta llave.
De por si, si pruebas el test method, pues este se comunica rápidamente y entrega respuesta.

image  

El problema que veo es que el resto de métodos (a excepcion del time) requieren previa autenticación.
Pues claro!

Si quieres que el método te envie tus tareas pendientes, pues tienes que autenticarte!
Ahi viene la duda

Donde pongo el usuario y pwd?
No, no acepta estos parámetros, la autenticación que maneja es vía la key que te envian por correo.

Me puse a revisar los API Kits que recomiendan para C#, específicamente IronCow, aqui un bloque de ejemplo:

   1:  RestClient client = new RestClient("your api key", "your shared secret");
   2:  client.AuthToken = GetAuthenticationToken(); //TODO: get authentication token
   3:   
   4:  // Have fun!
   5:  foreach (RawList list in client.GetLists())
   6:  {
   7:      Console.WriteLine(list.Name);
   8:      foreach (RawList tmp in client.GetTasks(list.Id))
   9:      {
  10:          foreach (RawTaskSeries series in tmp.TaskSeries)
  11:          {
  12:              foreach (RawTask task in series.Tasks)
  13:              {
  14:                  Console.WriteLine("   - {0}", task.Name);
  15:              }
  16:          }
  17:      }
  18:  }

Como ven, en la primera línea dice claramente “api key”, es decir, no hay forma de hacer el trabajo via usuario y password. Y segun veo, en la lista de correos de la API, encontré dudas similares, aqui una de ellas.

Mi problema es ese, creo que la API de RTM debería ser mas abierta, en todo caso, puedo continuar construyendo mi cliente de la vaca, lo cual tengo planeado, pero mi idea era tener mi interfaz de inicio de sesión, mínimo no?

Si alguno de ustedes está haciendo algo similar, porfa, me avisa, a ver si lo colgamos en codeplex!!

Saludos, que en unas horas tengo una reunión de planeamiento (no pregunten)

@jersson

6 comentarios sobre “El problema del API de Remember The Milk”

  1. Hola:

    en si no son los primeros -segun recuerdo- en usar ese tipo de validacion y mas que bug, es una parte de sus reglas de negocios… o como dirian unos «por diseño» si mal no recuerdo flickr , mappoint y creo google apps trabajan del mismo modo, su logica… o reglas de negocio, son «forzarte a que uses la web, a menos que explicitamente den permiso a x usuario», asi que el permiso es explicito por usuario… y si dan un user y pass, son esos 2 keys que medio mostraste – pq no me dejaste ver tu private key!! xD!!- esas 2 fungen de usuario y contraseña…, y puedes hacer una donde introduscan esos datos, y puedan verlos…, logicamente puedes ir mas alla y guardar esos datos, para autenticacion automatica – pensando en una app de escritorio o movil-, para que solo los introduzcan una vez y ya…

    logico como dices, no hay user y pass, por que ellos te quieren forzar a que visites la web – por los hits, orgullo, etc- pero lo mismo pasa en flickr, no? – o me equivoco…-

    igual es una regla algo «extraña»… pero ps no es la primera que lo implementa…, sus motivos tendran 🙂

    ahora si me entendiste? xD

    Salu2

    Ddaz

  2. Hola, la verdad es que me aburri de esperar respuesta de los chicos de RTM, posiblemente hayan conseguido el key comercial pues hasta la vez que revise las APIs nada habia cambiado.

    Revisaré la aplicación y trataré de comentar al respecto.
    Saludos!

  3. Hola!, acabo de probar la app, que triste!!! levanta la una ventana que contiene el login directo de RTM, bacan por un lado, nada de user friendly por el otro…
    Lo siento pero no me convence =S No es como lo tengo conceptualizado!

    Saludos

Responder a anonymous Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *