Communauté Eggdrop

Version complète : ChanRelay 3 (version 3.81)
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Pages : 1 2
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 a écrit :Version 3.81
  • Les actions du serveur ne sont plus précédées de *@
  • Les actions "oper" ont une protection: l'eggdrop émetteur doit être déclaré "oper" dans la configuration des récepteurs
  • Correction d'un bug sur un quit du réseau par l'eggdrop, désormais relayé
  • La perte du botnet (et donc du relais) est désormais signalée
  • Revue du système de déchargement du script (merci MenzAgitat)
Version 3.8
  • Correction d'un bug qui faisait écraser la configuration lorsque le même script était appelé sur 2 eggdrops.
Version 3.7
  • Ajout des commandes opérateur inter-réseaux
Version 3.6
  • Revision 3 : Correction du réglage transmission on/off
  • Revision 2 : Correction du !who avec canaux vides, correction du log des /me
  • Revision 1 : correction du !who avec un réseau spécifique
  • Correction de la gestion des modes et de leur envoi sur le relais

Téléchargement de ChanRelay
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
La bonne réponse a été donnée par MenzAgitat, ainsi que par nml375 (sur egghelp.org).

Voici la dernière version sans trop de bugs, actuellement utilisée sur le canal virtuel du site.
Téléchargement
Bonjour, je trouve que c'est genial comme script, mais j'arrive pas à l'executer.

Code :
(•- 17:03 -•) <(AtHeNa> [17:02] Tcl error in file 'athena.conf':
(•- 17:03 -•) <(AtHeNa> [17:02] can't read "::crelay::regg(Egg)": no such element in array
(•- 17:03 -•) <(AtHeNa>     while executing
(•- 17:03 -•) <(AtHeNa> "array set me $::crelay::regg($::username)"
(•- 17:03 -•) <(AtHeNa>     (procedure "::crelay::init" line 5)
(•- 17:03 -•) <(AtHeNa>     invoked from within
(•- 17:03 -•) <(AtHeNa> "::crelay::init"
(•- 17:03 -•) <(AtHeNa>     (file "TCL/relay.tcl" line 607)
(•- 17:03 -•) <(AtHeNa>     invoked from within
(•- 17:03 -•) <(AtHeNa> "source TCL/relay.tcl"
(•- 17:03 -•) <(AtHeNa>     (file "athena.conf" line 183)
(•- 17:03 -•) <(AtHeNa> [17:02] * FICHIER DE CONFIGURATION NON CHARGE (INTROUVABLE OU ERREUR)
(•- 17:03 -•) <(AtHeNa> [10] Dcc Chat fermée

Si je comprend bien, il faut que ça soit 2 eggdrops different, un sur le serveur X, l'autre sur le serveur Z... ?


Sur une config, dans :

Code PHP :
set regg(AtHeNa) {
        
"chan"        "#test"
        "network"    "gizmodo"
        "highlight"    
0
        
"log"        "y"
    


L'autre

Code PHP :
set regg(Emma) {
        
"chan"        "#test"
        "network"    "tavernaute"
        "highlight"    
0
        
"log"        "y"
    


Je dois bien indiquer le nom de l'egg qui sera sur l'autre serveur relay?


Que dois je mettre à "network" ?
Problème réglé pour le lancement, now :

Code :
(•- 17:38 -•) <Emma> [17:38] Tcl error [::crelay::trans:pub]: bot is not on the botnet

Je dois link les deux bots botnet ?!
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.
Post résolu, merci CrazyCat@Zeolia.
Ah, un bug dans la version livrée sur le site.
Ce n'est pas crelay::help::cmds mais crelay::help:cmds (il n'y a pas de namespace help dans crelay).

Dans ma version, j'ai:
tcl
bind msg o|o "rc.status" crelay::help:status
bind msg - "rc.help" crelay::help:cmds
bind msg o|o "rc.light" crelay::set:light
bind msg o|o "rc.net" crelay::set:snet


(et idem pour les unbinds)

[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.
Bonjour,

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:

Citation :[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 changement
    proc 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 $argl 1] $frm_bot]
            putquick "PRIVMSG $::crelay::me(chan) :*** $speaker set mode [join [lrange $argl 2 end]]"
        }
        return 0
    }



Merci d'avance.
Ce bug est déjà connu et clairement identifié. Il vient du fonctionnement du bind MODE.
wiki a écrit :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 version modifiée est en test sur Excalibur (Zeolia), si elle donne satisfaction elle sera mise en téléchargement.
Nouvelle version 3.6
Cette version intègre le correctif du bug sur les modes, ainsi que l'interfaçage avec Message Delivery Service de MenzAgitat.
Parfait sa fonctionne très bien maintenant, Merci CrazyCat Smile
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.
Pages : 1 2