Communauté francophone sur les Eggdrops
ChanRelay 3 (version 3.14.2) - Printable Version

+- Communauté francophone sur les Eggdrops (https://forum.eggdrop.fr)
+-- Forum: Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum: Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+---- Forum: Releases et support (https://forum.eggdrop.fr/forumdisplay.php?fid=20)
+---- Thread: ChanRelay 3 (version 3.14.2) (/showthread.php?tid=703)

Pages: 1 2 3


RE: [Script] ChanRelay 3 - CrazyCat - 28/12/2011

Nouvelle version 3.6-3 qui corrige un bug trouvé par Plop:
la commande trans mode on/off ne fonctionnait pas à cause du changement intervenu en version 3.6 (utilisation du raw plutôt que du mode).


RE: [Script] ChanRelay 3 - CrazyCat - 02/09/2013

Dernière 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)



RE: ChanRelay 3 (version 3.81) - Evirny - 18/02/2017

Coucou,

Je me permets de vous laisser un petit post car j'aimerais savoir comment fonctionne votre script ? J'ai essayé de le connecter, il se connecte mais j'ai rien qui se passe au niveau du script ? Est ce qu'il y a une commande particulière pour le lancer ? Un manip ? Doit-il être oper ou fonctionner ?

Merci pour vos réponses.


RE: ChanRelay 3 (version 3.81) - CrazyCat - 18/02/2017

Si ta configuration est bonne sur les deux eggdrops et que le botnet fonctionne, il n'y a normalement rien à activer.
Au cas où, poste ta configuration de chanrelay sur le pasteme pour qu'on la vérifie.
Si tes eggdrops utilisent ne se partagent pas le même script, poste les 2 configurations.


RE: ChanRelay 3 (version 3.81) - Evirny - 21/02/2017

(18/02/2017, 19:12)CrazyCat Wrote: Si ta configuration est bonne sur les deux eggdrops et que le botnet fonctionne, il n'y a normalement rien à activer.
Au cas où, poste ta configuration de chanrelay sur le pasteme pour qu'on la vérifie.
Si tes eggdrops utilisent ne se partagent pas le même script, poste les 2 configurations.

Merci pour ta réponse.

J'ai oublie la moitié. Je n'ai qu'un seul eggdrop sa risque pas de fonctionner. Par contre, le lien http://blog.eggdrop.fr/2013/08/30/configuration-de-chanrelay/ ne fonctionne plus :(

J'aurais bien aimé avoir le tuto complet


RE: ChanRelay 3 (version 3.81) - KeeViiNou - 25/02/2017

(18/02/2017, 19:12)CrazyCat Wrote: Si ta configuration est bonne sur les deux eggdrops et que le botnet fonctionne, il n'y a normalement rien à activer.
Au cas où, poste ta configuration de chanrelay sur le pasteme pour qu'on la vérifie.
Si tes eggdrops utilisent ne se partagent pas le même script, poste les 2 configurations.

Coucou ! C'est evirny j'ai pu recup mon ancien pseudo !

Voici ma config : https://tools.eggdrop.fr/pasteme/view/f8dca8b1

J'ai pas bien compris il faut avoir deux fois le script sur deux eggdrop différent ?


RE: ChanRelay 3 (version 3.81) - CrazyCat - 26/02/2017

Il faut avoir le script activé sur l'ensemble des eggdrops qui participent au(x) relais, dans ton cas il semblerait qu'il y ait 3 eggdrops qui doivent être en botnet et avec la même configuration de chanrelay, voire le même script partagé.

Je referai mon tuto d'installation/configuration de chanrelay, mais tu as une version assez ancienne (3.6) alors que la 3.10 est sortie il y a peu de temps et que la 3.9 a tout de même plus d'un an.


RE: ChanRelay 3 (version 3.14) - CrazyCat - 05/06/2020

Version 3.14 en ligne, elle apporte (ainsi que ses précédentes) surtout des options de configuration: couleurs des messages "système" et configuration de l'affichage du user@network.

Intégration du système de MenzAgitat pour couper les textes trop longs et les afficher sur plusieurs lignes


RE: ChanRelay 3 (version 3.14.2) - CrazyCat - 23/06/2020

La version 3.14.2 corrige un bug sur l'initialisation du script: le fichier n'était pas lu et se reconstruisait à chaque rehash/restart


RE: ChanRelay 3 (version 3.14.2) - KeeViiNou - 12/09/2020

PLop,

Je viens de DL la dernière version de ton chanrelay mais au moment de la lancer j'ai cette erreur qui apparait
Code:
can't read "::crelay::regg(Bot Servic)": no such element in array
    while executing
"array set me $::crelay::regg($::username)"
    (procedure "::crelay::init"



RE: ChanRelay 3 (version 3.14.2) - CrazyCat - 12/09/2020

J'ai de forts doutes concernant le fait que tu aies un eggdrop dont le username est "Bot Servic".
Tu devrais vérifier ta configuration de chanrelay.


RE: ChanRelay 3 (version 3.14.2) - LTEF - 05/11/2020

bonjour bonsoir moi le script se charge correctement mais pas de communication entre les 2 serveurs faut il l activer si oui comment

merci a tous de m'aider et ke remercie la personne qui pourra m'aider


RE: ChanRelay 3 (version 3.14.2) - CrazyCat - 05/11/2020

Pas besoin d'activation particulière.
Tes eggdrops sont bien reliés par botnet ? Comment as-tu configuré chanrelay ?


RE: ChanRelay 3 (version 3.14.2) - LTEF - 05/11/2020

Modération: merci de penser aux balises TCL et /TCL
(05/11/2020, 08:50)CrazyCat Wrote: Pas besoin d'activation particulière.
Tes eggdrops sont bien reliés par botnet ? Comment as-tu configuré chanrelay ?
bonjour

je sais pas  si on peux poster la config ici

bon je la poste

tcl
# chanrelay.tcl 2.0
#
# A way to link your channels
# 
# Author: CrazyCat <crazycat@c-p-f.org>
# http://www.eggdrop.fr
# irc.zeolia.net #eggdrop
 
## DESCRIPTION ##
#
# This TCL is a complete relay script wich works with botnet.
# All you have to do is to include this tcl in all the eggdrop who
# are concerned by it.
#
# You can use it as a spy or a full duplex communication tool.
#
# It don't mind if the eggdrops are on the same server or not,
# it just mind about the channels and the handle of each eggdrop.
 
## EVOLUTION ##
#
# Based on chanrelay 1.2 (from myself),
# this new version doesn't know any limitation
# whith number of eggdrops or channels.
#
# BUT, because there's a BUT, the system is now a de/multiplexer:
# Each bot transmit to all others, and each receive (so send to his chan)
# from all others.
 
## CONFIGURATION ##
 
# Fill the values as you want but don't forget to keep the same order between each array.
set eggdrops {"Gordon" "eggdrop"}
set chans {"#!Accueil!" "#!accueil!"}
set networks {"irc.tChattons.cOm:6667" "192.168.1.14:6667"}
# Remember that all is case sensitive, so don't write DuMmY if your eggdrop is named dummy :)
 
# Do you want to use bold (1), underline (2) or nothing (0) to higtlight nicknames ?
set high "1"
 
# Do yo want to indicate from wich network comes the message (y/n)?
set snet "y"
 
# Do you want the bot transmit actions from the channel (y/n)?
set transmit "y"; # default value is yes
 
# Do you want the bot recept actions (y/n)?
set receive "y"; # default value is yes
 
# transmission configuration
set trans_pub "y"; # transmit the pub
set trans_act "y"; # transmit the actions (/me)
set trans_nick "y"; # transmit the nick changement
set trans_join "y"; # transmit the join
set trans_part "y"; # transmit the part
set trans_quit "y"; # transmit the quit
set trans_topic "y"; # transmit the topic changements
set trans_kick "y"; # transmit the kicks
set trans_mode "y"; #transmit the mode changements
 
# reception configuration
set recv_pub "y"; # recept the pub
set recv_act "y"; # recept the actions (/me)
set recv_nick "y"; # recept the nick changement
set recv_join "y"; # recept the join
set recv_part "y"; # recept the part
set recv_quit "y"; # recept the quit
set recv_topic "y"; # recept the topic changements
set recv_kick "y"; # recept the kicks
set recv_mode "y"; #recept the mode changements
 
############################################################
#
# The TCL begins here, if you don't know what to do, don't do anything :)
#
############################################################
 
bind msg o|o "rc.status" help:status
bind msg - "rc.help" help:cmds
 
if { $high == "1" } {
    set hlnick "\002"
} elseif { $high == "2" } {
    set hlnick "\037"
} else {
    set hlnick ""
}
 
bind msg o|o "rc.light" set:light
bind msg o|o "rc.net" set:snet
 
if { $transmit == "y" } {
    bind msg o|o "trans" set:trans
    if { $trans_pub == "y" } { bind pubm - * trans_pub }
    if { $trans_act == "y" } { bind ctcp - "ACTION" trans_act }
    if { $trans_nick == "y" } { bind nick - * trans_nick }
    if { $trans_join == "y" } { bind join - * trans_join }
    if { $trans_part == "y" } { bind part - * trans_part }
    if { $trans_quit == "y" } { bind sign - * trans_quit }
    if { $trans_topic == "y" } { bind topc - * trans_topic }
    if { $trans_kick == "y" } { bind kick - * trans_kick }
    if { $trans_mode == "y" } { bind mode - * trans_mode }
}
 
if { $receive =="y" } {
    bind msg o|o "recv" set:recv
    if { $recv_pub == "y" } { bind bot - ">pub" recv_pub }
    if { $recv_act == "y" } { bind bot - ">act" recv_act }
    if { $recv_nick == "y" } { bind bot - ">nick" recv_nick }
    if { $recv_join == "y" } { bind bot - ">join" recv_join }
    if { $recv_part == "y" } { bind bot - ">part" recv_part }
    if { $recv_quit == "y" } { bind bot - ">quit" recv_quit }
    if { $recv_topic == "y" } { bind bot - ">topic" recv_topic }
    if { $recv_kick == "y" } { bind bot - ">kick" recv_kick }
    if { $recv_mode == "y" } { bind bot - ">mode" recv_mode }
}    
 
# proc setting the type of highlight
proc set:light {nick host handle arg } {
    global hlnick
    if { $arg == "bo" } {
        set hlnick "\002"
    } elseif { $arg == "un" } {
        set hlnick "\037"
    } elseif { $arg == "off" } {
        set hlnick ""
    } else { putquick "NOTICE $nick :you must chose \002(bo)\002ld , \037(un)\037derline or (off)" }
}
 
proc set:snet {nick host handle arg } {
    global snet
    if { $arg == "yes" } {
        set snet "y"
    } elseif { $arg == "no" } {
        set snet "n"
    } else { putquick "NOTICE $nick :you must chose yes or no" }
}
# proc setting of transmission by msg
proc set:trans { nick host handle arg } {
    global botnick transmit
    if { $transmit == "y" } {
        if { $arg == "" } {
            putquick "NOTICE $nick :you'd better try /msg $botnick trans help"
        }
        if { [lindex [split $arg] 0] == "help" } {
            putquick "NOTICE $nick :usage is /msg $botnick trans <value> on|off"
            putquick "NOTICE $nick :with <value> = pub, act, nick, join, part, quit, topic, kick, mode"
            return 0
        } else {
            set proc_change "trans_[lindex [split $arg] 0]"
            switch [lindex [split $arg] 0] {
                "pub" { set type pubm }
                "act" { set type ctcp }
                "nick" { set type nick }
                "join" { set type join }
                "part" { set type part }
                "quit" { set type sign }
                "topic" { set type topc }
                "kick" { set type kick }
                "mode" { set type mode }
            }
            if { [lindex [split $arg] 1] == "on" } {
                bind $type - * $proc_change
            } elseif { [lindex [split $arg] 1] == "off" } {
                unbind $type - * $proc_change
            } else {
                putquick "NOTICE $nick :[lindex [split $arg] 1] is not a correct value, choose \002on\002 or \002off\002"
            }
        }
    } else {
        putquick "NOTICE $nick :transmission is not activated, you can't change anything"
    }
}
 
# proc setting of reception by msg
proc set:recv { nick host handle arg } {
    global botnick receive
    if { $receive == "y" } {
        if { $arg == "" } {
            putquick "NOTICE $nick :you'd better try /msg $botnick recv help"
        }
        if { [lindex [split $arg] 0] == "help" } {
            putquick "NOTICE $nick :usage is /msg $botnick recv <value> on|off"
            putquick "NOTICE $nick :with <value> = pubm, act, nick, join, part, quit, topic, kick, mode"
            return 0
        } else {
            set change ">[lindex [split $arg] 0]"
            set proc_change "recv_[lindex [split $arg] 0]"
            if { [lindex [split $arg] 1] == "on" } {
                bind  bot - $change $proc_change
            } elseif { [lindex [split $arg] 1] == "off" } {
                unbind bot - $change $proc_change
            } else {
                putquick "NOTICE $nick :[lindex [split $arg] 1] is not a correct value, choose \002on\002 or \002off\002"
            }
        }
    } else {
        putquick "NOTICE $nick :reception is not activated, you can't change anything"
    }
}
 
####################################################
#
# Transmission
#
 
# proc used by all others for transmission
proc trans_bot { usercmd chan usernick text } {
    global eggdrops chans botnick
    set transmsg [concat $usercmd $usernick $text]
    set me [lsearch $eggdrops $botnick]
    if {$chan == [lindex $chans $me]} {
        putallbots $transmsg
    } else {
        return 0
    }
}
 
# proc transmission of pub (trans_pubm = y)
proc trans_pub {nick uhost hand chan text} {
    trans_bot ">pub" $chan $nick $text
}
 
# proc transmission of action (trans_act = y)
proc trans_act {nick uhost hand chan key text} {
    set arg [concat $key $text]
    trans_bot ">act" $chan $nick $arg
}
 
# proc transmission of nick changement
proc trans_nick {nick uhost hand chan newnick} {
    trans_bot ">nick" $chan $nick $newnick
}
 
# proc transmission of join
proc trans_join {nick uhost hand chan} {
    trans_bot ">join" $chan $chan $nick\($uhost\)
}
 
# proc transmission of part
proc trans_part {nick uhost hand chan text} {
    set arg [concat $chan $text]
    trans_bot ">part" $chan $nick $arg
}
 
# proc transmission of quit
proc trans_quit {nick host hand chan text} {
    trans_bot ">quit" $chan $nick $text
}
 
# proc transmission of topic changement
proc trans_topic {nick uhost hand chan topic} {
    set arg [concat $chan $topic]
    trans_bot ">topic" $chan $nick $arg
}
 
# proc transmission of kick
proc trans_kick {nick uhost hand chan victim reason} {
    set arg [concat $victim $chan $reason]
    trans_bot ">kick" $chan $nick $arg
}
 
# proc transmission of mode changement
proc trans_mode {nick uhost hand chan mc {victim ""}} {
    if {$victim != ""} {append mc " $victim" }
    set text [concat $nick $chan $mc]
    trans_bot ">mode" $chan $nick $text
}
 
####################################################
#
# Reception
#
 
# proc reception of pub
proc recv_pub {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :$speaker> [lrange $arg 1 end]"
    } else {
        return 0
    }
}
 
# proc reception of action
proc recv_act {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :* $speaker [lrange $arg 2 end]"
    } else {
        return 0
    }
}
 
# proc reception of nick changement
proc recv_nick {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :*** $speaker is now known as [lrange $arg 1 end]"
    } else {
        return 0
    }
}
 
# proc reception of join
proc recv_join {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 1] $him]
        putquick "PRIVMSG $recvchan :--> $speaker has joined channel [lindex [split $arg] 0]"
    } else {
        return 0
    }
}
 
# proc reception of part
proc recv_part {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :<-- $speaker has left channel [lindex [split $arg] 1] ([lrange $arg 2 end])"
    } else {
        return 0
    }
}
 
# proc reception of quit
proc recv_quit {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :-//- $speaker has quit ([lrange $arg 1 end])"
    } else {
        return 0
    }
}
 
# proc reception of topic changement
proc recv_topic {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :*** $speaker changes topic of [lindex [split $arg] 1] to '[lrange $arg 2 end]'"
    } else {
        return 0
    }
}
# proc reception of kick
proc recv_kick {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 1] $him]
        putquick "PRIVMSG $recvchan :*** $speaker has been kicked from [lindex [split $arg] 2] by [lindex [split $arg] 0]: [lrange $arg 3 end]"
    } else {
        return 0
    }
}
 
# proc reception of mode changement
proc recv_mode {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 1] $him]
        putquick "PRIVMSG $recvchan :*** $speaker set mode [lrange $arg 2 end]"
    } else {
        return 0
    }
}
 
proc make_user { unick thenb } {
    global snet networks hlnick
    if { $snet == "y" } {
            set speaker [concat "$hlnick$unick (from [lindex $networks $thenb])$hlnick"]
        } else {
            set speaker $hlnick$unick$hlnick
        }
    return $speaker
}
 
######################################
# proc for helping
#
 
# proc status
proc help:status { nick host handle arg } {
    global trans_pub trans_act trans_nick trans_join trans_part trans_quit trans_topic trans_kick trans_mode recv_pub recv_act recv_nick recv_join recv_part recv_quit recv_topic recv_kick recv_mode hlnick transmit receive chan1 chan2
    putquick "PRIVMSG $nick :\002 Global status\002"
    putquick "PRIVMSG $nick :\037type\037   -- | trans -|- recept |"
    putquick "PRIVMSG $nick :global -- | -- $transmit -- | -- $receive -- |"
    putquick "PRIVMSG $nick :pub    -- | -- $trans_pub -- | -- $recv_pub -- |"
    putquick "PRIVMSG $nick :act    -- | -- $trans_act -- | -- $recv_act -- |"
    putquick "PRIVMSG $nick :nick   -- | -- $trans_nick -- | -- $recv_nick -- |"
    putquick "PRIVMSG $nick :join   -- | -- $trans_join -- | -- $recv_join -- |"
    putquick "PRIVMSG $nick :part   -- | -- $trans_part -- | -- $recv_part -- |"
    putquick "PRIVMSG $nick :quit   -- | -- $trans_quit -- | -- $recv_quit -- |"
    putquick "PRIVMSG $nick :topic  -- | -- $trans_topic -- | -- $recv_topic -- |"
    putquick "PRIVMSG $nick :kick   -- | -- $trans_kick -- | -- $recv_kick -- |"
    putquick "PRIVMSG $nick :mode   -- | -- $trans_mode -- | -- $recv_mode -- |"
    putquick "PRIVMSG $nick :nicks appears as $hlnick$nick$hlnick"
    putquick "PRIVMSG $nick :[lindex $chan1 0] is on [lindex $chan1 1] and transmit to [lindex $chan1 2]"
    putquick "PRIVMSG $nick :[lindex $chan2 0] is on [lindex $chan2 1] and transmit to [lindex $chan2 2]"
    putquick "PRIVMSG $nick :\002 END of STATUS"
}
 
# proc help
proc help:cmds { nick host handle arg } {
    global botnick
    putquick "NOTICE $nick :/msg $botnick trans <type> on|off to change the transmissions"
    putquick "NOTICE $nick :/msg $botnick recv <type> on|off ti change the receptions"
    putquick "NOTICE $nick :/msg $botnick rc.status to see my actual status"
    putquick "NOTICE $nick :/msg $botnick rc.help for this help"
    putquick "NOTICE $nick :/msg $botnick rc.light <bo|un|off> to bold, underline or no higlight"
    putquick "NOTICE $nick :/msg $botnick rc.net <yes|no> to show the network"
}
 
# End !
putlog "CHANRELAY 2.0 by \002CrazyCat\002 loaded - http://www.eggdrop.fr"
 
 
et voila sur le 2 ieme
 
# chanrelay.tcl 2.0
#
# A way to link your channels
# 
# Author: CrazyCat <crazycat@c-p-f.org>
# http://www.eggdrop.fr
# irc.zeolia.net #eggdrop
 
## DESCRIPTION ##
#
# This TCL is a complete relay script wich works with botnet.
# All you have to do is to include this tcl in all the eggdrop who
# are concerned by it.
#
# You can use it as a spy or a full duplex communication tool.
#
# It don't mind if the eggdrops are on the same server or not,
# it just mind about the channels and the handle of each eggdrop.
 
## EVOLUTION ##
#
# Based on chanrelay 1.2 (from myself),
# this new version doesn't know any limitation
# whith number of eggdrops or channels.
#
# BUT, because there's a BUT, the system is now a de/multiplexer:
# Each bot transmit to all others, and each receive (so send to his chan)
# from all others.
 
## CONFIGURATION ##
 
# Fill the values as you want but don't forget to keep the same order between each array.
set eggdrops {"Gordon" "eggdrop"}
set chans {"#!Accueil!" "#!accueil!"}
set networks {"irc.tChattons.cOm:6667" "192.168.1.14:6667"}
# Remember that all is case sensitive, so don't write DuMmY if your eggdrop is named dummy :)
 
# Do you want to use bold (1), underline (2) or nothing (0) to higtlight nicknames ?
set high "1"
 
# Do yo want to indicate from wich network comes the message (y/n)?
set snet "y"
 
# Do you want the bot transmit actions from the channel (y/n)?
set transmit "y"; # default value is yes
 
# Do you want the bot recept actions (y/n)?
set receive "y"; # default value is yes
 
# transmission configuration
set trans_pub "y"; # transmit the pub
set trans_act "y"; # transmit the actions (/me)
set trans_nick "y"; # transmit the nick changement
set trans_join "y"; # transmit the join
set trans_part "y"; # transmit the part
set trans_quit "y"; # transmit the quit
set trans_topic "y"; # transmit the topic changements
set trans_kick "y"; # transmit the kicks
set trans_mode "y"; #transmit the mode changements
 
# reception configuration
set recv_pub "y"; # recept the pub
set recv_act "y"; # recept the actions (/me)
set recv_nick "y"; # recept the nick changement
set recv_join "y"; # recept the join
set recv_part "y"; # recept the part
set recv_quit "y"; # recept the quit
set recv_topic "y"; # recept the topic changements
set recv_kick "y"; # recept the kicks
set recv_mode "y"; #recept the mode changements
 
############################################################
#
# The TCL begins here, if you don't know what to do, don't do anything :)
#
############################################################
 
bind msg o|o "rc.status" help:status
bind msg - "rc.help" help:cmds
 
if { $high == "1" } {
    set hlnick "\002"
} elseif { $high == "2" } {
    set hlnick "\037"
} else {
    set hlnick ""
}
 
bind msg o|o "rc.light" set:light
bind msg o|o "rc.net" set:snet
 
if { $transmit == "y" } {
    bind msg o|o "trans" set:trans
    if { $trans_pub == "y" } { bind pubm - * trans_pub }
    if { $trans_act == "y" } { bind ctcp - "ACTION" trans_act }
    if { $trans_nick == "y" } { bind nick - * trans_nick }
    if { $trans_join == "y" } { bind join - * trans_join }
    if { $trans_part == "y" } { bind part - * trans_part }
    if { $trans_quit == "y" } { bind sign - * trans_quit }
    if { $trans_topic == "y" } { bind topc - * trans_topic }
    if { $trans_kick == "y" } { bind kick - * trans_kick }
    if { $trans_mode == "y" } { bind mode - * trans_mode }
}
 
if { $receive =="y" } {
    bind msg o|o "recv" set:recv
    if { $recv_pub == "y" } { bind bot - ">pub" recv_pub }
    if { $recv_act == "y" } { bind bot - ">act" recv_act }
    if { $recv_nick == "y" } { bind bot - ">nick" recv_nick }
    if { $recv_join == "y" } { bind bot - ">join" recv_join }
    if { $recv_part == "y" } { bind bot - ">part" recv_part }
    if { $recv_quit == "y" } { bind bot - ">quit" recv_quit }
    if { $recv_topic == "y" } { bind bot - ">topic" recv_topic }
    if { $recv_kick == "y" } { bind bot - ">kick" recv_kick }
    if { $recv_mode == "y" } { bind bot - ">mode" recv_mode }
}    
 
# proc setting the type of highlight
proc set:light {nick host handle arg } {
    global hlnick
    if { $arg == "bo" } {
        set hlnick "\002"
    } elseif { $arg == "un" } {
        set hlnick "\037"
    } elseif { $arg == "off" } {
        set hlnick ""
    } else { putquick "NOTICE $nick :you must chose \002(bo)\002ld , \037(un)\037derline or (off)" }
}
 
proc set:snet {nick host handle arg } {
    global snet
    if { $arg == "yes" } {
        set snet "y"
    } elseif { $arg == "no" } {
        set snet "n"
    } else { putquick "NOTICE $nick :you must chose yes or no" }
}
# proc setting of transmission by msg
proc set:trans { nick host handle arg } {
    global botnick transmit
    if { $transmit == "y" } {
        if { $arg == "" } {
            putquick "NOTICE $nick :you'd better try /msg $botnick trans help"
        }
        if { [lindex [split $arg] 0] == "help" } {
            putquick "NOTICE $nick :usage is /msg $botnick trans <value> on|off"
            putquick "NOTICE $nick :with <value> = pub, act, nick, join, part, quit, topic, kick, mode"
            return 0
        } else {
            set proc_change "trans_[lindex [split $arg] 0]"
            switch [lindex [split $arg] 0] {
                "pub" { set type pubm }
                "act" { set type ctcp }
                "nick" { set type nick }
                "join" { set type join }
                "part" { set type part }
                "quit" { set type sign }
                "topic" { set type topc }
                "kick" { set type kick }
                "mode" { set type mode }
            }
            if { [lindex [split $arg] 1] == "on" } {
                bind $type - * $proc_change
            } elseif { [lindex [split $arg] 1] == "off" } {
                unbind $type - * $proc_change
            } else {
                putquick "NOTICE $nick :[lindex [split $arg] 1] is not a correct value, choose \002on\002 or \002off\002"
            }
        }
    } else {
        putquick "NOTICE $nick :transmission is not activated, you can't change anything"
    }
}
 
# proc setting of reception by msg
proc set:recv { nick host handle arg } {
    global botnick receive
    if { $receive == "y" } {
        if { $arg == "" } {
            putquick "NOTICE $nick :you'd better try /msg $botnick recv help"
        }
        if { [lindex [split $arg] 0] == "help" } {
            putquick "NOTICE $nick :usage is /msg $botnick recv <value> on|off"
            putquick "NOTICE $nick :with <value> = pubm, act, nick, join, part, quit, topic, kick, mode"
            return 0
        } else {
            set change ">[lindex [split $arg] 0]"
            set proc_change "recv_[lindex [split $arg] 0]"
            if { [lindex [split $arg] 1] == "on" } {
                bind  bot - $change $proc_change
            } elseif { [lindex [split $arg] 1] == "off" } {
                unbind bot - $change $proc_change
            } else {
                putquick "NOTICE $nick :[lindex [split $arg] 1] is not a correct value, choose \002on\002 or \002off\002"
            }
        }
    } else {
        putquick "NOTICE $nick :reception is not activated, you can't change anything"
    }
}
 
####################################################
#
# Transmission
#
 
# proc used by all others for transmission
proc trans_bot { usercmd chan usernick text } {
    global eggdrops chans botnick
    set transmsg [concat $usercmd $usernick $text]
    set me [lsearch $eggdrops $botnick]
    if {$chan == [lindex $chans $me]} {
        putallbots $transmsg
    } else {
        return 0
    }
}
 
# proc transmission of pub (trans_pubm = y)
proc trans_pub {nick uhost hand chan text} {
    trans_bot ">pub" $chan $nick $text
}
 
# proc transmission of action (trans_act = y)
proc trans_act {nick uhost hand chan key text} {
    set arg [concat $key $text]
    trans_bot ">act" $chan $nick $arg
}
 
# proc transmission of nick changement
proc trans_nick {nick uhost hand chan newnick} {
    trans_bot ">nick" $chan $nick $newnick
}
 
# proc transmission of join
proc trans_join {nick uhost hand chan} {
    trans_bot ">join" $chan $chan $nick\($uhost\)
}
 
# proc transmission of part
proc trans_part {nick uhost hand chan text} {
    set arg [concat $chan $text]
    trans_bot ">part" $chan $nick $arg
}
 
# proc transmission of quit
proc trans_quit {nick host hand chan text} {
    trans_bot ">quit" $chan $nick $text
}
 
# proc transmission of topic changement
proc trans_topic {nick uhost hand chan topic} {
    set arg [concat $chan $topic]
    trans_bot ">topic" $chan $nick $arg
}
 
# proc transmission of kick
proc trans_kick {nick uhost hand chan victim reason} {
    set arg [concat $victim $chan $reason]
    trans_bot ">kick" $chan $nick $arg
}
 
# proc transmission of mode changement
proc trans_mode {nick uhost hand chan mc {victim ""}} {
    if {$victim != ""} {append mc " $victim" }
    set text [concat $nick $chan $mc]
    trans_bot ">mode" $chan $nick $text
}
 
####################################################
#
# Reception
#
 
# proc reception of pub
proc recv_pub {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :$speaker> [lrange $arg 1 end]"
    } else {
        return 0
    }
}
 
# proc reception of action
proc recv_act {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :* $speaker [lrange $arg 2 end]"
    } else {
        return 0
    }
}
 
# proc reception of nick changement
proc recv_nick {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :*** $speaker is now known as [lrange $arg 1 end]"
    } else {
        return 0
    }
}
 
# proc reception of join
proc recv_join {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 1] $him]
        putquick "PRIVMSG $recvchan :--> $speaker has joined channel [lindex [split $arg] 0]"
    } else {
        return 0
    }
}
 
# proc reception of part
proc recv_part {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :<-- $speaker has left channel [lindex [split $arg] 1] ([lrange $arg 2 end])"
    } else {
        return 0
    }
}
 
# proc reception of quit
proc recv_quit {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :-//- $speaker has quit ([lrange $arg 1 end])"
    } else {
        return 0
    }
}
 
# proc reception of topic changement
proc recv_topic {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 0] $him]
        putquick "PRIVMSG $recvchan :*** $speaker changes topic of [lindex [split $arg] 1] to '[lrange $arg 2 end]'"
    } else {
        return 0
    }
}
# proc reception of kick
proc recv_kick {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 1] $him]
        putquick "PRIVMSG $recvchan :*** $speaker has been kicked from [lindex [split $arg] 2] by [lindex [split $arg] 0]: [lrange $arg 3 end]"
    } else {
        return 0
    }
}
 
# proc reception of mode changement
proc recv_mode {frm_bot command arg} {
    global eggdrops chans hlnick botnick snet networks
    if {[set him [lsearch $eggdrops $frm_bot]] >= 0} {
        set me [lsearch $eggdrops $botnick]
        set recvchan [lindex $chans $me]
        set speaker [make_user [lindex [split $arg] 1] $him]
        putquick "PRIVMSG $recvchan :*** $speaker set mode [lrange $arg 2 end]"
    } else {
        return 0
    }
}
 
proc make_user { unick thenb } {
    global snet networks hlnick
    if { $snet == "y" } {
            set speaker [concat "$hlnick$unick (from [lindex $networks $thenb])$hlnick"]
        } else {
            set speaker $hlnick$unick$hlnick
        }
    return $speaker
}
 
######################################
# proc for helping
#
 
# proc status
proc help:status { nick host handle arg } {
    global trans_pub trans_act trans_nick trans_join trans_part trans_quit trans_topic trans_kick trans_mode recv_pub recv_act recv_nick recv_join recv_part recv_quit recv_topic recv_kick recv_mode hlnick transmit receive chan1 chan2
    putquick "PRIVMSG $nick :\002 Global status\002"
    putquick "PRIVMSG $nick :\037type\037   -- | trans -|- recept |"
    putquick "PRIVMSG $nick :global -- | -- $transmit -- | -- $receive -- |"
    putquick "PRIVMSG $nick :pub    -- | -- $trans_pub -- | -- $recv_pub -- |"
    putquick "PRIVMSG $nick :act    -- | -- $trans_act -- | -- $recv_act -- |"
    putquick "PRIVMSG $nick :nick   -- | -- $trans_nick -- | -- $recv_nick -- |"
    putquick "PRIVMSG $nick :join   -- | -- $trans_join -- | -- $recv_join -- |"
    putquick "PRIVMSG $nick :part   -- | -- $trans_part -- | -- $recv_part -- |"
    putquick "PRIVMSG $nick :quit   -- | -- $trans_quit -- | -- $recv_quit -- |"
    putquick "PRIVMSG $nick :topic  -- | -- $trans_topic -- | -- $recv_topic -- |"
    putquick "PRIVMSG $nick :kick   -- | -- $trans_kick -- | -- $recv_kick -- |"
    putquick "PRIVMSG $nick :mode   -- | -- $trans_mode -- | -- $recv_mode -- |"
    putquick "PRIVMSG $nick :nicks appears as $hlnick$nick$hlnick"
    putquick "PRIVMSG $nick :[lindex $chan1 0] is on [lindex $chan1 1] and transmit to [lindex $chan1 2]"
    putquick "PRIVMSG $nick :[lindex $chan2 0] is on [lindex $chan2 1] and transmit to [lindex $chan2 2]"
    putquick "PRIVMSG $nick :\002 END of STATUS"
}
 
# proc help
proc help:cmds { nick host handle arg } {
    global botnick
    putquick "NOTICE $nick :/msg $botnick trans <type> on|off to change the transmissions"
    putquick "NOTICE $nick :/msg $botnick recv <type> on|off ti change the receptions"
    putquick "NOTICE $nick :/msg $botnick rc.status to see my actual status"
    putquick "NOTICE $nick :/msg $botnick rc.help for this help"
    putquick "NOTICE $nick :/msg $botnick rc.light <bo|un|off> to bold, underline or no higlight"
    putquick "NOTICE $nick :/msg $botnick rc.net <yes|no> to show the network"
}
 
# End !
putlog "CHANRELAY 2.0 by \002CrazyCat\002 loaded - http://www.eggdrop.fr"





je sais pas si la congig est bonne

merci a tous  encore


RE: ChanRelay 3 (version 3.14.2) - CrazyCat - 05/11/2020

Tu utilises une version *légèrement* datée, à savoir la 2.0 sachant que la plus ancienne dans les scripts est la 3.6 de 2012... (et encore, postée en octobre 2011 sur tclarchive.org).
Donc, prends la dernière version, et réponds aussi à ma question précédente: tes eggdrops sont bien reliés par botnet ?