Este es el primer desarrollo oficial del Pulsar Project, el Pulsar Status.Net HUD v0.1, este objeto permite actualizar el estado en un servidor basado en la plataforma de microblogging Status.Net, utilza el API compatible con Twitter para actualizar el mensaje de estado del sitio directamente desde el mundo virtual.
Instalación :
Configuración :
Uso :
Para la actualización de los sitios de microblogging basados en status.net desde los mundos virtuales basados en OpenSimulator y Second Life, se creara un HUD (Heads-Up Display), objeto que puede ser pegado directamente colocado dentro de la pantalla y no dentro del mundo como un objeto o un accesorio del avatar, de esta forma solo es visible dentro de la interface del usuario que lo esta utilizando.
El objeto contiene un script desarrollado en LSL (Linden Script Language) que escucha los mensajes enviados por el avatar dueño del objeto a traves del canal 5, de esta forma si el usuario quiere enviar un mensaje debe colocar en la ventana de chat /5 seguido por el mensaje a enviar.
// Listen all the messages and post to the microblogging site
listen(integer channel, string name, key id, string message) {
// Update the status using the message give by the user
PSNH_updateStatus(message);
}
El script toma el mensaje y lo envia a traves de una peticion HTTP al servidor, adicionando informacion de autenticacion y el nuevo estado.
// Update the estatus of the user in the microblogging site // @param message The message to use like status PSNH_updateStatus(string message) { // Construct the url to send the message // Something like this // http://username:password@server.com/api/statuses/update.xml string url = "http://" + psnh_username + ":" + psnh_password + "@" + psnh_serverName + psnh_serverPath + psnh_restPath; // Prepare request values, using post and send the message encoded string body = "status=" + message; list parameters = [ HTTP_METHOD, "POST", HTTP_MIMETYPE, "application/x-www-form-urlencoded; charset=UTF-8" ]; // Sen the request psnh_requestID = llHTTPRequest(url, parameters, body); }
La respuesta del servidor es capturada por el script y se visualiza un mensaje de error si el código retornado por el servidor es 200 (OK), si es otro código se escribe en la pantalla de chat simplemente el error y el contenido de la respuesta devuelta por el servidor.
// Check the reponse send by the server // @param request_id The identifier of the request // @param status The http reponse code send by the server // @param metadata Metadata associated with the request // @param body The response information send by the server PSNH_checkResponse(key request_id, integer status, list metadata, string body) { // If any problem with the server, show the page that send // The server response 200 if not problem if(status != 200) llOwnerSay(body); // Show a info message else llOwnerSay("Status Update!!!"); }
El script completo es colocado dentro del objeto, acompañado de otros archivos de documentación.
Enlaces :
Antes de comenzar el desarrollo de una herramienta a utilizar dentro del mundo virtual, que permita actualizar el estado del usuario en un servidor basado en status.net, debemos entender el uso del API de acceso a la plataforma.
Actualmente status.net es compatible con el API de twitter lo cual permite construir clientes que sean compatibles con las dos plataformas, debemos entonces primero consultar el API para identificar el metodo que nos permite actualizar el estado de un usuario.
Twitter API :
http://apiwiki.twitter.com/Twitter-API-Documentation
Se identifico statuses/update como el método a utilizar para la actualización del estado del usuario ya autenticado, se opto por usar una respuesta en el formato xml frente a json, por tal motivo la url de acceso a este servicio en twitter es http://api.twitter.com/1/statuses/update.xml, en el caso de status.net debemos suministrar una url de la siguiente forma http://<servidor>/<dir>/index.php/api/statuses/update.xml
Para realizar pruebas iniciales se creo una cuenta en el sitio de status,net con la siguiente direccion http://pulsarproject.status.net en la cual el api puede ser accedida a traves de la url http://pulsarproject.status.net/api/statuses/update.xml
Para actualizar el estado debemos autenticar el usuario antes de enviar el mensaje, actualmente status.net soporta autenticacion básica, lo que permite enviar el nombre de usuario y clave dentro de la url, mientras que twitter tiene planeado para el mes de Agosto quitar el soporte para este tipo de autenticacion y utilizar OAuth en su reemplazo.
Para simplificar el desarrollo se utilizara la autenticacion básica que aunque simple es insegura, adicionalmente se codificara el mensaje en formato application/x-www-form-urlencoded adicionando status=estado al mensaje enviado a través del método POST
Actualizacion del Estado :
http://usuario@clave:pulsarproject.status.net/api/statuses/update.xml
Status.Net es una plataforma de microblogging que permite a las empresas, organizaciones, grupos o personas crear su propio sitio de micro mensajería a través de una plataforma opensource basada en php y con soporte para bases de datos de MySQL o PostgreSQL que permite su instalación en gran cantidad de sitios web o los servidores de las empresas.
Inicialmente status.net era conocido como identi.ca la aplicación web que le daba soporte a identi.ca sitio web de microblogging que se convirtió en una alternativa para aquellos que no gustan de usar plataformas propietarias como Twitter y otros sitios de microblogging, pronto el servicio muto en una compañía dedicada a brindar el servicio de microblogging que permiten a los usuarios crear de forma rápida sus propios sitios alojados en servidores de status.net, como tambien la posibilidad de descargar el software necesario para crear sitios en los servidores de los usuarios. Al igual que muchas aplicaciones opensource el modelo de negocio de status.net se basa en el soporte a la aplicacion.
Caracteristicas :
Esta plataforma ha sido seleccionada como la plataforma principal para la integración de herramientas dentro de los mundos virtuales con sitios de microblogging.
Microblogging es una tecnología que surgió producto de la llegada de la web 2.0 que permite a los usuarios publicar actualizaciones cortas de máximo 140 caracteres, en los cuales se pueden expresar gran cantidad de información a pesar de su corta longitud, algunos usuarios lo utilizan para publicar la respuesta al Que estas haciendo ? Que pasa por tu mente ? o simplemente compartir enlaces a paginas web, vídeos, música, imágenes y fotografías. Su uso no solamente es personal, existiendo muchas compañías que publican mensajes como lanzamiento de productos, estado de servidores y publicación de noticias. Esta tecnología también incluye la posibilidad de publicar etiquetas para facilitar la búsqueda de información, como también la posibilidad de enviar mensajes dirigidos a otro usuario permitiendo una comunicación entre ellos. Los mensajes pueden ser enviados desde paginas web, aplicaciones móviles y de escritorio, mensajes de texto y correo electrónico.
Existen gran cantidad de servicios de microblogging en Internet entre los que se cuentan Twitter, Tumblr, Identi.ca, Jaiku, Status.Net siendo Twitter el de mayor popularidad con 100.000.000 de usuarios, mientras Status.Net es un plataforma de microblogging opensourc que permite la creacion de sitios de microblogging siendo el mas popular identi.ca.
Las plataformas de microblogging están siendo usadas activamente en el salón de clase de muchos centros educativos al rededor del mundo, algunos usos que se le dan son :
Adicionalmente pueden ser utilizadas dentro de los mundos virtuales de igual forma utilizando herramientas que permitan actualizar estos microblogs desde el mismo mundo virtual incluyendo información adicional como la localización del avatar del usuario dentro de la región virtual, como también enviar invitaciones y publicar la ubicación de recursos.
Referencias :