08/09/2012, 19:28
Bonsoir Bonsoir
Je viens à vous car je crois que mon petit Eggdrop ne veut laisser personnes d'autre que moi voter pour une quote ( enfin je suis le seul user sur le bot ) pourtant j'ai bien configuré le script ( il me semble l'erreur est humaine :p ) mais voici un c/c de la configuration que j'ai :
il me semble que cela est correcte non ? sinon voici le bou de code des votes :
Voir si y'a moyen de rendre la possibilité de voter pour tout les utilisateurs
Merci d'avance de vos réponse et script vraiment sympa
Je viens à vous car je crois que mon petit Eggdrop ne veut laisser personnes d'autre que moi voter pour une quote ( enfin je suis le seul user sur le bot ) pourtant j'ai bien configuré le script ( il me semble l'erreur est humaine :p ) mais voici un c/c de la configuration que j'ai :
Code :
# Commande et autorisations pour voter "j'aime" ou "j'aime pas" pour une
# citation.
# Veuillez noter que si vous définissez des autorisations différentes de
# "-|-", l'utilisateur devra forcément avoir un handle enregistré dans la
# userlist de l'Eggdrop même si le paramètre votequote_nickserv_restriction
# est réglé sur 1 (voir plus bas).
variable votequote_cmd "!votequote"
variable votequote_auth "-|-"
# Réglage par défaut : activer la possibilité de voter "j'aime" ou "j'aime
# pas" pour les citations ? (0 = non, 1 = oui)
# Il est possible de modifier ce réglage indépendamment sur chaque chan au
# moyen de la commande !quoteset votes_enabled <valeur>
variable votes_enabled 1
#
# Condition minimale requise pour pouvoir voter "j'aime" ou "j'aime pas" pour
# une citation :
# 0 = N'importe qui peut voter; le script s'assure qu'une même personne ne
# vote pas deux fois en enregistrant son host sous la forme *!ident@*.domain
# 1 = Seuls ceux qui ont un handle enregistré dans la userlist de l'Eggdrop
# peuvent voter; le script s'assure qu'une même personne ne vote pas deux fois
# en se fiant à son handle. Faites attention de bien gérer la userlist de
# votre Eggdrop en évitant de mettre des masques de hosts trop vagues, afin de
# limiter au maximum les risques de fraudes.
variable must_have_a_handle_to_vote 1
#
# Condition supplémentaire requise pour pouvoir voter "j'aime" ou "j'aime pas"
# pour une citation : l'utilisateur doit-il être enregistré et identifié sur
# NickServ ? (0 = non, 1 = oui)
variable votequote_nickserv_restriction 0
#
# Les utilisateurs peuvent-ils voter pour les citations d'un autre chan que le
# chan en cours ?
variable can_vote_for_external_quotes 1
#
# Les utilisateurs peuvent-ils revenir sur leur vote pour le modifier ou
# l'annuler ? (0 = non, 1 = oui)
variable can_change_vote 1
#
# Nom du service de nick sur votre serveur (normalement NickServ mais certains
# serveurs peuvent avoir personnalisé le nom, comme sur Epiknet où il se nomme
# Themis). Ce paramètre ne sera utilisé que si votequote_nickserv_restriction
# = 1.
variable nickserv "NickServ"
#
# Lag maximum qu'on autorise pour la réponse des services lors d'une demande
# de STATUS (en secondes). Ce paramètre ne sera utilisé que si
# votequote_nickserv_restriction = 1.
variable serviceslag 10
il me semble que cela est correcte non ? sinon voici le bou de code des votes :
Code :
###############################################################################
### !votequote <n° de citation> [#chan] [+/-]
###############################################################################
proc ::pubqsys::votequote {nick host hand chan arg} {
if { (![channel get $chan pubqsys]) || (![channel get $chan pubqsys-votes_enabled]) } { return }
if { !$::pubqsys::post_init_done } { ::pubqsys::post_init $chan }
if { ([channel get $chan pubqsys-antiflood] == 1) && (([::pubqsys::antiflood $chan "global"] eq "flood") || ([::pubqsys::antiflood $chan "votequote"] eq "flood")) } { return }
set arg [split [::tcl::string::trim [regsub -all {\s+} $arg " "] " "]]
# On détermine si l'utilisateur cherche juste à consulter une note ou s'il veut voter
if { ([set num_args [llength $arg]] > 1)
&& ((($num_args == 2) && ([lindex $arg 1] in {+ - 0}))
|| (( $num_args == 3) && ([lindex $arg 2] in {+ - 0})))
} then {
set just_asking_for_note 0
} else {
set just_asking_for_note 1
}
# si l'utilisateur doit être enregistré et identifié sur NickServ pour pouvoir
# voter et qu'il souhaite voter
if { ($::pubqsys::votequote_nickserv_restriction == 1) && (!$just_asking_for_note) } {
# on lance un timer qui limite la durée de vie de l'entrée qu'on va créer dans statusquerytimertable
set statusquerytimerID [utimer $::pubqsys::serviceslag [list if { [array exists ::pubqsys::statusquerytimertable] } { unset ::pubqsys::statusquerytimertable([lindex [array get ::pubqsys::statusquerytimertable] 0]) }]]
# on crée une entrée dans la table de timers de whois afin d'avoir à disposition les informations utiles lors de la réception de la réponse au NS STATUS
variable statusquerytimertable
set statusquerytimertable($statusquerytimerID) "$nick $host $hand $chan $just_asking_for_note $arg"
# on lance un autre timer qui servira à gérer le cas où les services n'ont pas répondu dans le temps imparti
variable stopwaitsrvtimertable
set stopwaitsrvtimertable($statusquerytimerID) [utimer [expr {$::pubqsys::serviceslag + 2}] [list ::pubqsys::stop_waiting_for_services $nick $chan]]
# on essaie de savoir si $nick est enregistré/identifié
putserv "PRIVMSG $::pubqsys::nickserv :STATUS $nick"
# Si l'utilisateur n'a pas besoin d'être enregistré/identifié sur NickServ, on enchaîne directement
} else {
::pubqsys::votequote_2nd_part $nick $host $hand $chan $just_asking_for_note $arg
}
}
Voir si y'a moyen de rendre la possibilité de voter pour tout les utilisateurs
Merci d'avance de vos réponse et script vraiment sympa