jueves, 3 de mayo de 2007

¿Cómo registrar nuestra plataforma de agentes en la red Agentcities?





Para conectar una nueva plataforma de agentes a la red Agentcities hay que cumplir una serie de requisitos previos:


  1. Una computadora con acceso permanente a Internet.
  2. Una dirección de IP, preferiblemente fija para evitar problemas técnicos, y un nombre de dominio DNS para la máquina en la que va a ejecutarse la plataforma.
  3. Permiso del propietario o administrador de la red en la que se desarrollará la plataforma.

Cumplidos los requisitos mínimos de partida, tendremos que adoptar una serie de medidas insoslayables para hacernos un hueco en esta gran comunidad de plataformas de agentes, a saber:

  • Escoger la ciudad real o virtual que vamos a representar

Cada plataforma de agentes representa una región geográfica real, como París o San Francisco, o una ciudad imaginaria, como Ciudad_Divertida. Como es obvio, no podrán adoptarse nombres ya registrados.

  • Elegir una implementación para la plataforma de agentes

Los criterios de implementación se refieren al lenguaje de programación, las herramientas empleadas, el tipo de licencia de software adoptado, la gestión del mantenimiento, etc., siempre bajo el marco de las especificaciones FIPA.

  • Desarrollar, instalar y configurar la plataforma de agentes

En esto sólo nos va a limitar nuestra imaginación y conocimientos.

  • Instalar el servicio PingAgent

Se trata de un servicio exigido por la red Agentcities para verificar si la plataforma está en línea y disponible o no. Consiste, simplemente, en que el servicio responde con un “alive” cuando se le envía un mensaje “ping”. Casi todas las plataformas disponen de un agente de este tipo aunque la propia comunidad pone a nuestra disposición ejemplos de cómo implementar uno. El servidor de agentCities dispone de su propio agente de ping (PingStat) para verificar periódicamente el estado de todas las plataformas registradas y mostrar un resumen de estado en la web.

  • Registrarse formalmente en la red Agentcities

Agentcities dispone de un servicio GPD (Global Platform Directory) desde el que se tiene acceso a las distintas plataformas que lo componen. Para identificar a cada una de ellas se requiere información relativa al usuario, al grupo y a la plataforma. Un grupo puede estar formado por varios usuarios pero un usuario solamente puede pertenecer a un grupo. A su vez, un grupo puede desarrollar varias plataformas de agentes pero una plataforma de agentes sólo puede pertenecer a un grupo.
Registrarse supone proporcionar toda su información, concretamente, los detalles administrativos del usuario (nombre, dirección de correo, nº de teléfono, nombre de usuario y contraseña) y grupo (nombre corto y largo, país, actividad, URL de la web, logo) que abandera la nueva plataforma y los detalles técnicos referentes a interoperabilidad (descripción de la infraestructura, URLs que apunten a logs de seguimiento de la actividad, …) y visibilidad (nombre del servicio de ping, tiempo mínimo y máximo entre pings, punto de acceso a listados automáticos de páginas blancas y amarillas para hacerlos accesibles desde la web de Agentcities,…)

  • Comprobar que la plataforma se ha activado
Una vez que se ha rellenado y enviado el formulario de registro, la web del GPD incluirá a los pocos minutos, después de haber sido enviado un ping de verificación, una entrada relativa a la nueva plataforma. Si todo ha ido bien, en el campo status debe aparecer la indicación up. En caso contrario, aparecerá un indicación down. Los problemas de conexión más habituales son derivados de fallos en el agente del servicio ping, diferencia entre el nombre real de la plataforma y el registrado en el GPD o problemas del protocolo de transporte. En caso de fallo, es recomendable revisar los logs de GPD y los de la propia plataforma para determinar la causa exacta del mismo. También se pueden efectuar test prediseñados implementados en forma de Java Servlets por Motorola para poner a prueba distintos aspectos de los estándares FIPA.

No hay comentarios: