10/06/2014, 19:47 (Modification du message : 10/06/2014, 19:49 par cestlemien.)
Bonjour,
je viens vers vous car j'ai des eggdrop qui utilisent le principe de "spy.tcl", qui donc loguent tout ce qui est dit/ce passe sur divers salons, les kick,msg privés,notices, modes, changements de pseudos ect ... Bien évidement les egg etant sur pas mal de salons, ils mettent du temps à ce "poser" et commencent donc un flood énorme sur le salon #log . Hors j'aimerait que mon tcl ne demarre en fait qu'a son arrivée sur #log sans tenir compte de la file des msg/modes/topic qu'il a recu lors de sa connexion, à leur arrivée sur les divers salons.
principe:
"lancer l'egg/ charger les tcl et lib / connexion / arrivée sur les salons / et enfin démarrage du tcl de log "
10/06/2014, 23:33 (Modification du message : 10/06/2014, 23:34 par aliasangelius.)
Salut,
Simple, dans ton code TCL utilise la fonction timer, voir utimer, pour qu'il lance la procédure du démarage de ton tcl log, lorsque lui arrive sur le salon #log
Donc, lorsque ton eggdrop va rejoindre #log, il lancera le tout.
Mais faut se sois déclarable que sur $::botnick
Je pense que le plus simple, c'est de ne charger les binds qu'une fois que l'eggdrop est bien sur tous les canaux, par exemple en comparant lors des joins de l'eggdrop le nombre de canaux actuels avec le nombre de canaux dans [channels].
Ou encore mieux, ne charger le script qu'une fois cette condition remplie.
l'idée est bonne, mais j'ai pas vraiment envie d'alourdir le code avec des timer utimer partout sur chaque bind, je pensait à un truc du genre set "la tcl" avec timer éventuellement, mais je ne vois pas comment faire.
Le timer est très aléatoire, est-ce que tu es vraiment capable de dire au bout de combien de temps l'eggdrop a rejoint tous les canaux ?
Alors qu'un script du genre:
J'ai malheuresement des salons en +inactive, que j'aimerait eviter de supprimer. Autre soucis, j'utilise un tcl qui ce charge de charger les tcl ce trouvant dans le dossier scripts (loadall.tcl) ce qui m'evite de de devoir editer lefichier conf a chaque test.Neamoins, je pourrit toujours placer "log.tcl" dans un sous repertoire, et modifier la ligne source scripts/sousrep/tonscript.tcl. Reste donc le soucis des salons en +inactive.