Member of The Internet Defense League Últimos cambios
Últimos Cambios
Blog personal: El hilo del laberinto Geocaching

Módulo DX-Cluster

Última Actualización: 28 de Abril de 2003 - Lunes

Este módulo es una pasarela entre la red DX-Cluster y el IRC.

La salida de este módulo se redirige al canal #radioaficionados.

Este módulo está inspirado en el proyecto dDX bot.

Información sobre DX-Cluster. Pasarela telnet -> web. Otro Bot, red irc.worldirc.org, canal #CQDX. Detalles del protocolo server<->server.


Historia

Los números de versión que se indican se refieren a "commit" en el CVS interno. El número de versión cargado en Olimpo en un momento dado es visible usando el comando "dllist".

  • 15/Ene/02 Versión 1.20

    Primera versión pública de este módulo.

  • 15/Ene/02 Versión 1.32

    • Responde a los comandos "HELP" o "CREDITS" con la identificación del bot y los datos de contacto de su autor (yo :-).

    • Cambio color de fondo (15, gris claro) por otro (14, gris oscuro), por coincidencia con el color de fondo del IRCap, un script IRC muy popular.

    • Se sigue sin ver con claridad... pongo el color 12 (azul marino).

    • Reescribo buena parte del módulo para que no se utilice ninguna variable global. Manejo una estructura global, pero guardo referencias donde lo necesito, sin hacer referencia al "global scope".

      Esto es importante para que el módulo no falle si lo descargamos sin esperar a que las diferentes threads que lo componen se sincronicen y terminen.

      Para evitar bucles entre las estructuras de datos, utilizo "weakref" donde sea necesario.

    • Pongo un par de servidores DX-Cluster que podemos utilizar: ea7urc.alcavia.net:41112 y eadx.net:23.

  • 31/Ene/02 Versión 1.76

    • Amplío el módulo para que pueda enviar las notificaciones de cluster a cualquier canal, enviando a #radioaficionados avisos de la existencia del otro canal.

      Elegir una configuración u otra es cuestión de 10 segundos.

    • Puedo enviar notificaciones del canal de publicación de cluster de forma periódica, como publicidad.

    • Añado la posibilidad de manejar un número ilimitado de canales, tanto para las notificaciones del cluster como para los anuncios "publicitarios".

    • Preparándome para añadir más comandos a dxcluster, especialmente en lo relativo al envío de mensajes a la red de cluster, defino dos niveles: usuarios registrados y administradores.

      Los administradores pueden dar de baja a otro administrador, y dar de alta y baja usuarios registrados.

      El alta de nuevos administradores sólo la puedo hacer yo.

    • Añado los comandos ADMINLIST, ADMINADD, ADMINDEL, USERLIST, USERADD y USERDEL.

    • Elimino el comando CREDITS, ya que es redundante con la ayuda (HELP).

  • 14/Feb/02 Versión 1.140

    • Hago las primeras pruebas de conexión como nodo Packet Cluster. Voy implementando los comandos a medida que los voy descubriendo. El protocolo Cluster está muy mal documentado, a juzgar por lo que he podido encontrar por Internet.

    • Añado un comando SENDNOTICE, que envía un mensaje global a toda la red.

    • Añado un comando SENDDX, para comunicar un DX a la red.

  • 20/May/02 Versión 1.145

    • Solucionado un bug en la verificación de nicks registrados en el sistema. Se supone que debía comprobar si el nick en cuestion tiene "+r", pero siempre decía que sí.

    • Cuando añadimos usuarios o admins, exige que estén online y que tengan +r. Así no dependemos de que el administador que realiza la operación lo tenga que comprobar.

  • 15/Ene/03 Versión 1.155

    • Cuando Olimpo se une a su HUB directo, este bot entra automáticamente en todos sus canales asignados.

      Previamente sólo entraba en los canales al cargar el módulo. Ello ocasionaba problemas en dos casos: a) cuando se carga el módulo y Olimpo no está conectado (por ejemplo, cuando se lanza), y b) cuando Olimpo se desconecta de su HUB directo y luego vuelve a conectar.

      Yo solucionaba el problema descargando el módulo y volviéndolo a cargar, manualmente, pero con esta mejora ya me puedo olvidar del problema.

    • Cuando hay algún tipo de problema con el DNS y el bot no puede resolver el nombre de su pasarela, se queda fuera de servicio permanentemente, aunque el servicio DNS se restaure. La solución era, nuevamente, descargar y volver a cargar el módulo. Problema resuelto.

  • 29/Abr/03 Versión 1.158

    • La solución anterior del DNS funciona correctamente, pero tiene un problema: la resolución del DNS se realiza en el "thread" principal, y mientras no ocurre el timeout Olimpo se bloquea.

      Modifico el bot para que resuelva la petición de DNS en otro "thread". De esta forma Olimpo se sigue ejecutando perfectamente aunque haya problemas de DNS y la "thread" en cuestión esté bloqueada intentando resolver la IP de la pasarela DX-Cluster.



Python Zope ©2002-2003 jcea@jcea.es

Más información sobre los OpenBadges

Donación BitCoin: 19niBN42ac2pqDQFx6GJZxry2JQSFvwAfS