Communauté sur les Eggdrops - Community about Eggdrops
Tcl qui reconnaitrait et annoncerait les ircops entrant sur un salon précis - Printable Version

+- Communauté sur les Eggdrops - Community about 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)
+--- Thread: Tcl qui reconnaitrait et annoncerait les ircops entrant sur un salon précis (/showthread.php?tid=1413)

Pages: 1 2


RE: Tcl qui reconnaitrait et annoncerait les ircops entrant sur un salon précis - Ab0miFreuX - 26/09/2013

Bonsoir! Me basant sur ton exemple, j'en suis arrivé (avec un ami qui m'a un peu aider à adapter ton exemple) à cette conclusion

Code:
bind raw - "JOIN" cs:scan
proc cs:scan {f k t} {
set user [lindex [split $f !] 0]
set salon [string trim [lindex $t 0] :]
if {$salon != "#Staff"} {return}
if {$user == $::botnick} {return}
lappend nick "$user"
putquick "WHOIS $user"
}

bind raw - "313" scan:ircop
proc scan:ircop {f k t} {
global nick
set infos [split $t ":"]
set user [split $infos 0]
if {[onchan $nick "#Staff"]} { putserv "PRIVMSG #Staff:[IRCop] un IRCop vient vous aider : $nick" }
}
J'ai essayé, rien n'a fonctionner... j'ai donc reregarder & ça a donner ça:

Code:
bind raw - "JOIN" cs:scan
proc cs:scan {f k t} {
set user [lindex [split $f !] 0]
set salon [string trim [lindex $t 0] :]
if {$salon != "#Staff"} {return}
if {$user == $::botnick} {return}
lappend nick "$user"
putquick "WHOIS $user"
}

bind raw - 313 scan:ircop
proc scan:ircop {f k t} {
global nick
set infos [split $t ":"]
set user [split $infos 0]
if {[onchan $nick "#Staff"]} { putserv "PRIVMSG #Staff:[IRCop] un IRCop vient vous aider : $nick" }
}
le problème est que ça m'affiche ceci avec le dernier:

Code:
Tcl error [scan:ircop]: invalid command name "IRCop"
Est-ce le "[IRCop]" qui gènerait le fonctionnement?


RE: Tcl qui reconnaitrait et annoncerait les ircops entrant sur un salon précis - CrazyCat - 26/09/2013

Bon, deux choses:
- transformer le "bind join" en "bind raw", c'est pas forcément la meilleure idée,
- en tcl, ce qui est entre [ et ] est un appel de procédure. Si tu veux afficher ces caractères dans un message, tu dois les protéger (on dit échapper) avec un \

=>

tcl
if {[onchan $nick "#Staff"]} { putserv "PRIVMSG #Staff:\[IRCop\] un IRCop vient vous aider : $nick" }