Messages : 111
Sujets : 20
Inscription : Nov 2007
09/04/2008, 04:40
(Modification du message : 09/04/2008, 09:02 par CrazyCat .)
Salut regardé j'ai codé un script ^^ mais malheuresement il ne fonctionne pas avec Lea il me monte une erreur :
-21:53:45- <Nemesis> [03:53] Erreur tcl [lea:link]: wrong # args: should be "join nick uhost handle channel arg"
-21:53:46- -irc.zetland.fr- *** Notice -- (link) Link irc.zetland.fr -> Protection.zetland.fr[@64.18.153.2.35816] established
-21:53:46- -irc.zetland.fr- *** Global -- Closing link: Write error: Broken pipe - Protection.zetland.fr[64.18.153.2]
-21:53:46- <Nemesis> [03:53] -NOTICE- *** Notice -- (link) Link irc.zetland.fr -> Protection.zetland.fr[@64.18.153.2.35816]
Et voici le code que j'ai fait :
tclcopier
bind join - "**" join
proc join { nick uhost handle channel arg } {
if {
[ string match -nocase * @AnimPlus.zetland.fr $uhost ] ||
[ string match -nocase * @ChanAdmin.zetland.fr $uhost ] ||
[ string match -nocase * @NetAdmin.zetland.fr $uhost ] ||
[ string match -nocase * @TechAdmin.zetland.fr $uhost ] ||
[ string match -nocase * @ChanOp.zetland.fr $uhost ]
} {
putquick "SAJOIN $nick #Staff+"
} }
J'aimerais savoir ce qui cloche s.v.p
Messages : 2,381
Sujets : 208
Inscription : Apr 2004
Bon, plusieurs erreurs à mon avis:
"**" dans le masque du join? Tu met ou bien "*" ou bien "#canal *" mais pas "*" qui ne veut rien dire
L'argument "arg" est en trop dans ta procédure (voir http://www.eggdrop.fr/Binds#JOIN )
Pourquoi mettre "-nocase" comme option à match alors que tu mets des masques avec des majuscules?
Messages : 111
Sujets : 20
Inscription : Nov 2007
Sa ne fonctionne toujour pas pour ce que tu ma dit ^^ Regarde l'erreur :
-10:22:39- <Nemesis> [16:22] Erreur tcl [lea:link]: wrong # args: should be "join nick uhost handle channel"
-10:22:39- <Nemesis> [16:22] -NOTICE- *** Notice -- (link) Link irc.zetland.fr -> Protection.zetland.fr[@64.18.153.2.41391] established
-10:22:39- <Nemesis> [16:22] -NOTICE- *** Global -- Closing link: Write error: Broken pipe - Protection.zetland.fr[64.18.153.2]
Et voici le TCL que j'ai modifié avec ce que tu ma dit :
bind join - "*" join
proc join { nick uhost handle channel } {
if {
[string match *@AnimPlus.zetland.fr $uhost] ||
[string match *@ChanAdmin.zetland.fr $uhost] ||
[string match *@NetAdmin.zetland.fr $uhost] ||
[string match *@TechAdmin.zetland.fr $uhost] ||
[string match *@ChanOp.zetland.fr $uhost]
} {
putquick "SAJOIN $nick #Staff+"
} }
Messages : 37
Sujets : 1
Inscription : Jan 2008
Salut,
tclcopier
proc join { nick uhost hand chan } {
;)
Messages : 111
Sujets : 20
Inscription : Nov 2007
NuNuX Sa Ne fonctionne pas regarde encore l'erreur :
-11:48:00- <Nemesis> [17:48] Erreur tcl [lea:link]: wrong # args: should be "join nick uhost hand chan"
-11:48:00- <Nemesis> [17:48] -NOTICE- *** LocOps -- Server Protection.zetland.fr[64.18.153.2] closed the connection
Et la sa me soule :/
Messages : 37
Sujets : 1
Inscription : Jan 2008
Perso j'ai regarder vite fait je vois pas... desoler j'ai du taff :/
Messages : 61
Sujets : 6
Inscription : May 2007
Babytigrou16 a écrit : NuNuX Sa Ne fonctionne pas regarde encore l'erreur :
-11:48:00- <Nemesis> [17:48] Erreur tcl [lea:link]: wrong # args: should be "join nick uhost hand chan"
-11:48:00- <Nemesis> [17:48] -NOTICE- *** LocOps -- Server Protection.zetland.fr[64.18.153.2] closed the connection
Et la sa me soule :/
Je dirais plutôt a coup sur que tu as trafiquais la ou il fallait pas.
Lea, comme Eva ou autre application codé par TiSmA, qui utilisent les "sockets", sont indépendant des événements d'un eggdrop.
Autrement dis, si tu veux détecter un join via Lea, c'est pas par "bind join" qu'il faudra passer.
Pourrais-je voir par tout hasard ta procédure lea:link ?
Messages : 111
Sujets : 20
Inscription : Nov 2007
Messages : 61
Sujets : 6
Inscription : May 2007
DaV34 a écrit : Pourrais-je voir par tout hasard ta procédure lea:link ?
Messages : 2,381
Sujets : 208
Inscription : Apr 2004
Message supprimé: on apprend la balise TCL et on ne poste pas 200 lignes de script!
Messages : 45
Sujets : 8
Inscription : Apr 2009
25/06/2009, 17:41
(Modification du message : 25/06/2009, 17:43 par BlackNight .)
Alors, pour ceux qui se posent encore la question. le système sur ce principe est, avec un code qui fonctionne:
tclcopier
bind join - "*" myjoin
proc myjoin { nick uhost handle channel } {
if {
[ string match -nocase "*@helper.eggdrop.fr" $uhost ] ||
[ string match -nocase "*@anim.eggdrop" $uhost ] ||
[ string match -nocase "*@anim.eggdrop.fr" $uhost ] ||
[ string match -nocase "*@op.eggdrop" $uhost ] ||
[ string match -nocase "*@op.eggdrop.fr" $uhost ] ||
[ string match -nocase "*@admin.eggdrop" $uhost ] ||
[ string match -nocase "*@Admin.eggdrop.fr" $uhost ] ||
[ string match -nocase "*@global.eggdrop.fr" $uhost ] ||
[ string match -nocase "*@techadmin.eggdrop.fr" $uhost ] ||
[ string match -nocase "*@netadmin.eggdrop.fr" $uhost ] ||
[ string match -nocase "*NetAdmin@netadmin.eggdrop.fr" $uhost ]
} {
putquick "SAJOIN $nick #Staff"
}
}
si non, un autre système possible, basé sur clam.tcl codé par mon ami Heretoc:
tclcopier
proc putfast { arg} {
append arg "\n "
putdccraw 0 [ string length $arg ] $arg
}
set vhostsaj {
* @netadmin.eggdrop.fr
* @techadmin.eggdrop.fr
* @admin.eggdrop.fr
* @global .eggdrop.fr
* @chanop.eggdrop.fr
* @anim.eggdrop.fr
* @helper.eggdrop.fr
}
bind join - "*" mesajoin
proc mesajoin { nick host hand arg} {
global vhostsaj
foreach vhost1 $vhostsaj {
if [ string match -nocase $vhost1 $host ] {
putfast "SAJOIN $nick #Staff"
}
}
}
voilà, en espérant que ça peux aider les futurs chercheurs.