Mise en forme de code: pensez à utiliser les balises [ tcl ] et [ /tcl ] (sans les espaces bien sûr) autour de vos codes tcl afin d'avoir un meilleur rendu et une coloration syntaxique.
x
21/06/2010, 16:53 (This post was last modified: 23/06/2020, 16:13 by CrazyCat.)
ChanRelay est un script permettant d'interconnecter des salons différents (sur le même réseau ou pas) afin de créer un canal virtuel. Il peut aussi être utilisé pour de la simple surveillance (mode écoute).
Changelog Wrote:Pi Edition (3.14)
Ajout de variable pour la gestion des couleurs des actions, des jpq (join, part, quit) et des changements de modes
Le join affiche le hostmask de l'utilisateur
Possibilité de modifier l'affichage du (nick@network)
24/06/2010, 09:30 (This post was last modified: 24/06/2010, 11:48 by CrazyCat.)
Bon, 2 critiques:
- le tcl ne se lance pas au démarrage, la procédure ::crelay::init échoue lorsqu'elle est appelée au chargement du tcl parce que $::botnick est vide. Quand est-elle initialisée ? - (corrigé) Petits soucis sur les transmissions de join
C'est tout de même une condition sine qua non. Je ne vois pas comment deux eggdrops sur des réseaux différents pourraient dialoguer s'ils ne sont pas reliés par botnet.
[Edit après vérification]
Et le tcl disponible (chanrelay 3.2) est correct. Forcément, si tu ne prends pas la dernière version, il y a des soucis. D'autant que dans le changelog, c'est clairement indiqué que la version 3.1 (pas diffusée) corrige les soucis sur les commandes en /msg. Et par conséquent, la version 3.2 a gardé ces corrections.
Je me demande parfois à quoi ça sert que je fasse de nouvelles versions.
La différence entre Linux et Windows ,c'est que Linux c'est comme une belle fille , il faut l'apprivoiser , la comprendre , la séduire tandis que Windows , c'est comme une prostitué , il faut payer et surtout bien se protéger.
Je poste car avec le script chanrelay3.4 il ya un souci.
Lorsque une personne se fait op/voice... tout fonctionne très bien.
Mais lorsque la personne se voit attribuer le mode +a il n'affiche pas le pseudo comme les autres modes effectués.
Exemple:
Quote:[08:43:23] (@Identifia) --> (CrazyCat@Zeolia) has joined channel #eggdrop
[08:43:25] (@Identifia) *** ([Guru]@Zeolia) set mode +a
[08:43:25] (@Identifia) *** ([Guru]@Zeolia) set mode +o CrazyCat
Donc au niveau de la procédure il ne détecte pas le mode +a je ne sais pas pourquoi quelqu'un peux me dire comment faire ?
Voici le code pour les changements de mode :
tcl
# proc reception of mode changementproc recv:mode{frm_bot command arg}{if{[set him [lsearch$::crelay::eggdrops$frm_bot]]>= 0}{set argl [split$arg]set speaker [[namespace current]::make:user [lindex$argl1]$frm_bot]putquick"PRIVMSG $::crelay::me(chan) :*** $speaker set mode [join [lrange $argl 2 end]]"}return0}
Ce bug est déjà connu et clairement identifié. Il vient du fonctionnement du bind MODE.
wiki Wrote:Les changements de mode sont découpés en parties uniques, donc <mode-change> sera toujours un mode simple, comme "+m" ou "-o"
Lorsque le serveur envoie +ao CrazyCat, l'eggdrop reçoit deux appels au bind: +a et +o CrazyCat
Il y aurait peut-être un moyen de biaiser pour attendre qu'une "victime" soit trouvée, mais cela peut induire des erreurs sur les changements de mode de canal.
Une correction a été effectuée sur la commande !who, plus particulièrement lorsqu'elle est spécifique à un serveur.
Maintenant, !who Zeolia ne donne que la liste des utilisateurs présents sur zeolia.