Nótame es la última novedad de menéame. Consiste en una sección en la que los usuarios podemos poner notas con lo que nos de la gana, esas notas son públicas para todos. Muy al estilo de twritter.
Ya he hablado de él, anteriormente e incluso he estado jugando con la interfaz Jabber del Nótame para hacer algún que otro bot que enviaba notitas.
La interfaz XMPP está muy bien para integrar el Nótame en un cliente de mensajería pero poco más, es demasiado pesada para integrarla en una web o en un programa de escritorio, iniciar sesión en Jabber requiere su tiempo (no es precisamente instantáneo) y necesitas asociar tu cuenta de meneame a una de Jabber.
Para ello Ricardo Galli (creador de Menéame) ha creado una sencilla API (seguro que lo ha hecho para que dejemos de calentarle la cabeza xD ) para enviar notas al Nótame.
El funcionamiento es muy simple, simplemente hay que enviar un mensaje a una URL (hacer una petición HTTP), en dicha URL un script php se encarga de procesarlo y almacenar la nota en la base de datos de menéame.
Obviamente cada nota pertenece a un usuario, para evitar tener que enviar la clave de usuario por Internet se ha creado el concepto de clave API.
Una clave API no es más que una cadena de números y letras que se asocia a un usuario de menéame. Cada puede consultar su clave API en su perfil. Esta clave es única y personal (cada usuario tiene una distinta), debes conservarla en privado igual que haces con la clave de inicio de sesión o la de tu correo electrónico.
La clave API solo sirve para operaciones de la API de menéame que requieran asociación de usuario (de momento solo sirve para enviar notas al Nótame) y no puede usarse para iniciar sesión en menéame.
Una vez que tenemos todo lo necesario, vamos a ver como se envía una nota a Nótame. Como he comentado antes necesitas hacer una petición HTTP, puedes hacerlo mediante dos métodos GET y POST.
Mediante GET los parámetros se envían en la propia url, algo así:
http://meneame.net/api/newpost.php?user=xxx&key=nnnnnn&text=texto
Donde xxx es el nombre de usuario, nnnnnn es la clave API del usuario y texto es el mensaje a enviar.
Mediante POST los parámetros no se envían en la url, sino que se envían a un recurso en Internet que es el encargado de procesarlo. Podéis probar el envío por POST al Nótame en http://meneame.damianvila.com/notameapi.htm
La gracia de POST es que es bastante fácil hacer un envío POST desde una aplicación de escritorio.
Me he puesto a ello y he hecho un sencillo cliente de escritorio para Windows que te permite enviar notas cómodamente. Está escrito en C# y requiere .NET Framework para funcionar :( Prometo hacer una versión en python + GTK que sea multiplataforma.

Entre sus virtudes destacan:
- Muy simple y fácil de usar.
- Muy liviano.
- Recuerda la API key y el nombre de usuario (los almacena en el archivo user.key en el mismo directorio).
- … (si vale ya se que es algo muy simple ;) )
Para hacerlo funcionar solo tienes que descargarlo, descomprimirlo en un directorio y ejecutarlo.
La primera vez aparecerán los campos de usuario y clave API vacíos, los rellenas con tus datos (OJO, si copias directamente la clave API del navegador al programa puedes llevarte un tabulador al inicio de regalo, mejor pegarla antes en un editor de textos para asegurar que es la correcta) y listo.
Aviso tela de gordo, es la primera versión del programa, puede dar errores por cualquier sitio, por favor recuerda que mis antepasados no tienen la culpa de mis fallos de programación. Mejor vienes aquí y dejas un comentario con lo que te ocurre.
Igualmente si tienes una sugerencia para la próxima versión también puedes dejarla en un comentario.
Pronto liberaré el código (como suelo hacer siempre) bao una licencia GNU/GPL.
Ah se me olvidaba muchísimas gracias damianvila por el icono, te ha quedado genial. El resto de imágenes usadas han sido cogidas del tema gráfico Gion por Silvestre Herrera licenciados bajo GNU/GPL.
Ahora unas capturillas del programa:



Descargar Nótame.NET 0.1b 0.2b | http://mi-blog.com/migue/wp-content/uploads/notamenetv02b.zip
Technorati Tags: notame, meneame, programacion, c#, .NET, api