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


erreur tcl eggdrop
#1
Bonjour,
depuis quelque jour j'ai une erreur sur un tcl que je n'arrive pas a résoudre.

J'ai se message en ctcp bot chat :

Quote:[Debug] Snip74 PRIVMSG #accueil :!badn serge <--(pseudo de teste)

Erreur:
Tcl error [pub:badn]: invalid channel: {#salon-staff}

cette commande a pour but de changer le pseudo en badnick.
que veut dire cette erreur et comment la réglé car je comprend pas trot en tcl ?

Cordialement Stéphane
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
#2
Ca vient de ton tcl (je ne sais pas lequel) et tu essayes d'effectuer une commande sur un canal qui n'est plus dans la liste des canaux de ton eggdrop.

Sans avoir ton tcl, on ne peut pas t'en dire plus.
irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
#3
Bonsoir CrazyCat,
peut importe ou je tape la commande !badn pseudo en party line sa me donne l'erreur.
Quote:Tcl error [pub:badn]: invalid channel: {#salon-staff}

pourtant l'eggdrop et bien sur tout les salon officiel et le salon staff
puis le code je pense que sa devrait être sa mais je connais que dalle en tcl :p


Code:
proc pub:badn { nick uhost handle chan arg } {
set host(axx_nick) [lindex [split [getchanhost $nick $chan] "@"] 1]
if {[lsearch $::host(axx_level) "($host(axx_nick))"] > -1 || [isop $nick $chan] || [ishalfop $nick $chan]} {    
    set control_presence ""
    foreach verif_chan [split [channels]] {
    set verif(nick,liste) [chanlist $verif_chan]
    if {[lsearch $verif(nick,liste) "[lindex [split $arg] 0]"] > -1} {
        set control_presence ok
        break
        }
    }
    if {$control_presence eq "ok"} {
        set num_babnick [rand "100000"]
        set BadPseudo "BadPseudo$num_babnick"
        putquick "PRIVMSG operserv : set superadmin on"
        putserv "PRIVMSG operserv : svsnick $arg $BadPseudo"
        puthelp "PRIVMSG $::salon_op : $nick a badnick $arg sur $chan"
        }
    }
}
et il possible que sa viens du changement de anope car j'ai fait la mise a jour de anope ?

Cordialement Stéphane


CrazyCat Wrote:Ca vient de ton tcl (je ne sais pas lequel) et tu essayes d'effectuer une commande sur un canal qui n'est plus dans la liste des canaux de ton eggdrop.

Sans avoir ton tcl, on ne peut pas t'en dire plus.
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
#4
Tu n'as pas une erreur sur $::salon_op ? Ou plutot sur ton set salon_op "salon-staff"
Ton eggdrop n'est peut-être pas dessus.
irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
#5
Re CrazyCat
L'eggdrop et biens sur le salon-staff

et mes excuse mais tu veut dire quoi par :

Quote:Tu n'as pas une erreur sur $::salon_op ? Ou plutot sur ton set salon_op "salon-staff"


car je viens de matter sur les salons service, salon-staff et salon du eggdrop aucune erreur apparait sur le ou les salons :)

Cordialement Stphane

CrazyCat Wrote:Tu n'as pas une erreur sur $::salon_op ? Ou plutot sur ton set salon_op "salon-staff"
Ton eggdrop n'est peut-être pas dessus.
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
#6
salut,

en party line de l egg tape

Code:
.tcl set ::errorInfo
ca te donneras plus d information sur l erreur et copi le resultat ici
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#7
Bonsoir djkenny,
merci aussi de ton aide et merci pour cette commande que je ne connais pas :)

Voila se que tu ma demandé.


Code:
.tcl set ::errorInfo
Tcl: invalid channel: {#salon-staff}
Tcl:     while executing
Tcl: "chanlist $verif_chan"
Tcl:     (procedure "pub:badn" line 6)
Tcl:     invoked from within
Tcl: "pub:badn $_pub1 $_pub2 $_pub3 $_pub4 $_pub5"
Cordialement Stephane

djkenny Wrote:salut,

en party line de l egg tape

Code:
.tcl set ::errorInfo
ca te donneras plus d information sur l erreur et copi le resultat ici
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
#8
le probleme vien du fait que tu split la liste des salons au foreach, ce qui a pour effet d entourer les nom de salon par des { }
donc il faut remplacer ca

tcl
foreach verif_chan [split [channels]] {

par

tcl
foreach verif_chan [channels] {

C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#9
Re djkenny

Merci infiniment je lutté depuis 3 jours dessus avec ta méthode ça marche mais sa ne marche plus pour les anim en halflop :/ pis sa me donne d'autre erreur dans d'autre tcl

Cordialement Stéphane
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
#10
AFff encore moi lol

Bon bah en faite sa marche mais un animateur (en halflop) sa marche plus et en prime avec la commande que tu ma donner djkenny j'ai refait un teste et sa me donne des erreurs supplémentaire


Code:
.tcl set ::errorInfo
Tcl: can't read "flood(taillemot)": no such element in array
Tcl:     while executing
Tcl: "if {[lsearch $::chan_game "($verif_flood(chan))"] eq -1 && [info exists verif_flood(nick)] && $flood(taillemot) > $::longmot_notice} {
Tcl: putserv "NOTI..."
Tcl:     (procedure "verification_flood" line 83)
Tcl:     invoked from within
Tcl: "verification_flood"
Tcl:     (procedure "flood_msg" line 7)
Tcl:     invoked from within
Tcl: "flood_msg $_pubm1 $_pubm2 $_pubm3 $_pubm4 $_pubm5"
et si je re mais comme c'était y a l'erreur

Code:
.tcl set ::errorInfo
Tcl: invalid channel: {#salon-staff}
Tcl:     while executing
Tcl: "chanlist $verif_chan"
Tcl:     (procedure "pub:badn" line 6)
Tcl:     invoked from within
Tcl: "pub:badn $_pub1 $_pub2 $_pub3 $_pub4 $_pub5"
et du coup sa marche plus lol

tiens je viens de remarquer dans les commandes anim on a le choix entre deux commandes:
Badn - PSEUDO-- [!badn] [/badn]

Quote:avec !badn pseudo bon y a l'erreur mais avec la commande /badn pseudo cela fonctionne
Par contre quand j'ai consulté la liste des commande j'ai bien évidament un autre erreur :/ décidément c'est vraiment pas mon jour de chance.


Code:
[23:23] Tcl error [pub:commandelist]: can't read "cmd(flag)": no such element in array

Cordialement Stéphane
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
#11
t es sur qu il a marché un jour le tcl la? parce que la tu me fait voir 3 erreurs totalement différentes qui se produisent dans 3 procedures différentes.

pour le
Code:
can't read "flood(taillemot)": no such element in array
ca veut dir que la var n'éxiste pas, regarde du coté de la configuration du tcl si t as pas supprimé une var .
pour le
Code:
invalid channel: {#salon-staff}
j t ai déjà donné la solution.
pour le
Code:
[23:23] Tcl error [pub:commandelist]: can't read "cmd(flag)": no such element in array
c est comme la 1ere regarde du coté de la configuration du tcl
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#12
Bonjour,
Oui les tcl fonctionné et fonctionne encore lol même avec les erreurs y a juste !badn pseudo qui lui ne fonctionné pas mais avec ton aide il fonctionne sauf avec un seule anim se qui et bizar car avec les autre et moi même tout et ok.
djkenny Wrote:t es sur qu il a marché un jour le tcl la? parce que la tu me fait voir 3 erreurs totalement différentes qui se produisent dans 3 procedures différentes.

Par contre je teste de réparer les erreurs du (pub:commandelist) sa ne veut pas, et encore plus bizarre j'ai supprimer commande-list.tcl quand je tape !list y a l'erreur + la list d'aide qui diffuse alors que les supprimer du eggdrop :

Code:
Tcl error [pub:commandelist]: can't read "cmd(flag)": no such element in array
Je me suis dit qu'il y avais 2 fois le même Tcl donc pour vérifier j'ai supprimer tout les tcl mais la commande !list envoie toujours les notices d'aide


Code:
#source scripts/alltools.tcl
#source scripts/action.fix.tcl
#source scripts/BanLog.tcl
#source scripts/identify.tcl
#source scripts/sendftp.tcl
#source scripts/sendftpwin.tcl
#source scripts/listnews.tcl
#source scripts/commande-access.tcl
#source scripts/essai.tcl
#source scripts/flood.tcl
#source scripts/commande-list.tcl
#source scripts/plainte.tcl

Cordialement Stéphane
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
#13
re,

essai de mettre
tcl
set cmd(flag) "o|o"

au début de la proc "pub:commandelist", biensur la je met o|o mais c est a toi de voir le flag que tu veux mettre
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away
#14
snip74 Wrote:Je me suis dit qu'il y avais 2 fois le même Tcl donc pour vérifier j'ai supprimer tout les tcl mais la commande !list envoie toujours les notices d'aide
par contre ca c est normale si tu n'as pas restart le bot
C'est en reconnaissant ses erreurs que l'on progresse ;)
Away


Forum Jump:


Users browsing this thread: 1 Guest(s)