Bonsoir.
Alors voilà j'ai pris le système de auth en SQL du wiki, tout fonctionne sauf un détail.
Lorsque tu es auth le bot principal va dire à bot log un message qui lui va dire sur un salon que intel c'est auth.
Il reçois bien le message en privé de la part du bot principal
Mais ce dernier ne lance pas la proc.
Je vous transmet la totalité des proc.
Shini.tcl (bot principal ou ont se auth).
Shini-log.tcl (Bot qui doit dire les log tel que auth c'est identifié auprès de bot principal).
Je pense que je fait un oublis, ou je fait mal les appels de procédures.
Si vous avez des pistes je suis preneur merci !
Alors voilà j'ai pris le système de auth en SQL du wiki, tout fonctionne sauf un détail.
Lorsque tu es auth le bot principal va dire à bot log un message qui lui va dire sur un salon que intel c'est auth.
Il reçois bien le message en privé de la part du bot principal
Quote:.[19:08:07] <Shini-Log> [19:08:07] [Shini!Shini@C478B8B.4AA6E26.A3B0E959.IP] authlog alias_angelius
Mais ce dernier ne lance pas la proc.
Je vous transmet la totalité des proc.
Shini.tcl (bot principal ou ont se auth).
tcl
#--------------------------------------------------#
# Shini.tcl #
# #
# Toutes les procs/binds relatif au bot Principal. #
#--------------------------------------------------#
source [file join Shini shini-conf.tcl]
source [file join Shini Shini-log.tcl]
# Bot Log.
set ::logv "Shini-log"
# Binds.
bind msg - "auth" auth
# Système d'authentification.
proc auth {nick host hand arg} {
#set arg [filtr $arg]
#set args [split $arg]
set pseudo [lindex $arg 0]
set pass [lindex $arg 1]
if { $pseudo == "" || $pass == "" } {
puthelp "notice $nick :\0034Erreur ! \037\0031Veuillez tapez /msg $::botnick auth <votre-pseudo> <votre-pass>\037\0031"
return 0
}
if { ![isvaliduser $pseudo] } {
puthelp "notice $nick :0034Erreur ! \037\0031Vous n'avez aucun accèss $nick.\037\0031"
return 0
}
if { [isvalidpassword $pseudo $pass] } {
if { [issuspend $pseudo] } {
puthelp "notice $nick : \0034Erreur ! \037\0031Votre accès et actuellement suspendu $nick.\037\0031"
return 0
}
if { [isauth $pseudo] } {
puthelp "notice $nick :\0034Erreur ! \037\0031Vous êtes déjà identifié.\037\0031"
return 0
}
puthelp "privmsg $::logv :authlog $pseudo"
puthelp "notice $nick :\0033Félicitations ! \037\0031Vous êtes maintenant identifié $nick.\037\0031"
xauth $pseudo
} else {
puthelp "notice $nick :\0034Erreur ! \037\0031Mot de pas incorrect veuillez tapez le bon mot de pass merci.\037\0031"
return 0
}
}
Shini-log.tcl (Bot qui doit dire les log tel que auth c'est identifié auprès de bot principal).
tcl
#---------------#
# Shini-log.tcl #
#---------------#
# Bot Shini.
set ::Shi "Shini"
# Salon Log.
set ::logsal "#central-log"
# Proc auth-Log.
bind msg - authlog proc:xauth
proc proc:xauth { nick uhost hand text } {
if [string match -nocase $nick $::Shi] {
putserv "privmsg $::logsal :\0031\[\0034Chan-Log\0031\]\0031 \[\0033Auth\0031\] \037\0031Effectué par\037 \0034[join [lrange $text 1 end]]\0034"
}
}
putlog "Shini-log.tcl"
Je pense que je fait un oublis, ou je fait mal les appels de procédures.
Si vous avez des pistes je suis preneur merci !