
17/03/2011, 19:46
|
 | | | Fecha de Ingreso: enero-2008 Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 17 años Puntos: 260 | |
Respuesta: Bot IRC Hola,
No es indispensable, pero una de las características importantes de un BOT es que funcione en múltiples hilos o procesos, cosa que no es fácil en PHP (es casi como escribirlo en C).
Por ejemplo, el BOT recibe esta secuencia de comandos:
/msg BOT :Init
/msg BOT :Hello, how are you!
/msg BOT :Cancel
El BOT inicia su actividad con el primer mensaje ':Init', pero en el tercer mensaje se cancela, si el BOT funcionara secuencialmente no podría leer ':Cancel' hasta que termine de ejecutar la función que se le asignó con ':Init', y si recibe demasiados comandos que le consumen mucho tiempo el BOT podría dejar de funcionar.
Si no lo haces en múltiples hilos o procesos, tienes que lograr que cada intervalo de tiempo, el BOT lea del Socket el siguiente comando y cancele la actividad que de alguna forma tienes que lograr interceptar, es decir, si está leyendo archivos tiene que dejar de hacerlo mientras procesa el siguiente comando, y si el comando es cancelar o cualquier otra cosa tiene que responder adecuadamente.
Para hacer ese tipo de aplicaciones es mucho más fácil un lenguaje orientado a objetos y que permita tener múltiples hilos sincronizados, como C#, Java, Python, etc.
Saludos, |