
    Rebot: Interfaz (API) para mdulos de protocolo

Esta es la documentacin de inters para los que quieran desarrollar
nuevos mdulos de protocolo para Rebot.


      Funciones que debe proporcionar un mdulo de protocolo:

texto_inicial()

Debe devolver una cadena de texto con un mensaje inicial que se mostrar
del mdulo.
Ej.: 'Mdulo de protocolo IRC versin 0.6 (beta) para rebot'

texto_ayuda()

Debe devolver una cadena de texto con la ayuda de los comandos o
instrucciones propias del mdulo que ser mostrada justo despus de la
ayuda de rebot en su comando 'ayuda'.

configurar()

Funcin llamada desde rebot antes de conectar, ahi deben colocarse las
inicializaciones y captura de configuracin del mdulo.

conectar()

Funcin llamada justo despus de configurar(), debe iniciar la conexin
de red y debe contener el bucle principal.

enviar_mensaje(modulo,texto,donde)

Enva una lnea de texto por red. Parmetros: "modulo" es el nombre del
propio modulo, "texto" es la lnea de texto (sin saltos de linea) para
enviar, "donde" es el lugar donde debe enviarse el texto (depende de
cada protocolo, p. ej. canal o nick en el irc) este parmetro nunca ser
generado por rebot, proviene de la llamada a tratar_texto() (explicada
ms abajo) que hace el propio mdulo.

comando(modulo,donde,comando)

Se llama desde el parser de rebot cuando un comando no es reconocido,
asi se da opcin al mdulo de protocolo de implementar sus propios
comandos especficos para ese protocolo (p. ej. en irc se implementa el
comando canal). Parmetros: "modulo" es el nombre del propio modulo,
"donde" es el lugar donde debe enviarse el texto (depende de cada
protocolo, p. ej. canal o nick en el irc) este parmetro nunca ser
generado por rebot, proviene normalmente de la llamada a tratar_texto()
(explicada ms abajo) que hace el propio modulo, "comando" es un vector
que contiene las palabras del comando no reconocido. La funcin debe
devolver 1 (verdadero) si el comando es correcto o 0 (falso) si no puede
reconocer el comando.


      Funciones que proporciona rebot y que pueden o deben ser usadas
      por el mdulo de protocolo:

main::tratar_texto(texto,donde)

Cuando se ha obtenido el texto del usuario, este debe ser pasado a rebot
con esta funcin para ser parseado. Parmetros: "texto" es la cadena de
texto, "donde" es el lugar desde donde se est enviando el texto
(depende de cada protocolo, p. ej. canal o nick en el irc).

main::decir(texto,donde)

Esta funcin parte el texto en lneas si tiene ms de una y las enva
una a una por red usando la funcin enviar_mensaje que proporciona el
mdulo de protocolo. Parmetros: "texto" es el texto a enviar, "donde"
es el lugar desde donde se est enviando el texto (depende de cada
protocolo, p. ej. canal o nick en el irc).

main::modo(modo,donde)

Cambia el modo de funcionamiento de Rebot, que puede ser 'comando' o
'juego', si no se especifica el modo simplemente lo consulta y lo
enva por red, "donde" es el lugar desde donde se est enviando el texto
(depende de cada protocolo, p. ej. canal o nick en el irc).

Para la implementacin de referencia ver los fuentes del mdulo IRC
(fichero irc.pm).
