demande aide script tcl
#1
Bonjour a tous je me suis permit de prendre un script sur ce forum

http://www.eggdrop-fr.org/phpBB2/viewtop...sc&start=0

je sais que il est completement différent de votre foprum mais on ma dit de venir poster ici mon problème ( CrazyCat )

donc oui j'ai essayer pas mal de chose cette après-midi pour résoudre cela

en fait je voudrai que ce script de retour depub ne "modère " que sur un seul channel

j'ai tester pas mal de choses mais sans résultat ou erreur

Merci bien a vous
Répondre Avertir
#2
Donc, pour résumer, tu pars de:
TCL
bind pubm - "* # *" pub:retourpub
proc retourpub {nick host handle channel arg} {
   if {[string match *#* $text]} {
      global spamchan spamnick
      set spamchan "[lindex $arg 0]"
      set spamnick "[lindex $arg 1]"
      channel add $spamchan
      utimer 5 msg
   }
}
 
proc msg {} {
   global spamchan spamnick
   putserv "PRIVMSG $spamchan :Spam détecté de la part de $spamnick . Retour de spam : Venez sur pied-davoine2"
   utimer 5 quittt
}
 
proc quittt {} {
   global spamchan spamnick
   channel remove $spamchan
}


Et tu voudrais que ça n'agisse que sur un seul canal ?

Donc, ça pourrait donner:
TCL
set mychan "#canal"
bind pubm - "* #*" pub:retourpub
proc retourpub {nick host handle channel arg} {
   if {[string tolower $channel] != $::mychan} { return 0; }
   if {[string match *#* $text]} {
      global spamchan spamnick
      set spamchan "[lindex $arg 0]"
      set spamnick "[lindex $arg 1]"
      channel add $spamchan
      utimer 5 msg
   }
}
 
proc msg {} {
   global spamchan spamnick
   putserv "PRIVMSG $spamchan :Spam détecté de la part de $spamnick . Retour de spam : Venez sur pied-davoine2"
   utimer 5 quittt
}
 
proc quittt {} {
   global spamchan spamnick
   channel remove $spamchan
}


En ce qui concerne le msg et le quit, tu ne peux pas faire grand chose vu que c'est plus ou moins indépendant du canal.

Mais je crois qu'il y a sur ce forum un tcl d'anti-pub.

Nota Bene: eggdrop-fr.org et eggdrop.fr ne sont pas différents, ils ne feraient qu'un si certains (je ne balancerait pas) n'avaient pas paumé les clés d'eggdrop-fr Very Happy
Mais nous ne sommes pas concurrents, bien au contraire je souhaite profondément qu'une équipe reprenne les choses en main.
Répondre
#3
alors je part de ce script ici qui est fonctionnel

TCL
#Durée du Ban
set spam(bantime) "10"
#Phrase du Ban
set spam(banmsg) "Le Spam, Les Invites, Les Publicités et autres sont INTERDIT"

#Procédure de détection des spams publics
bind pubm - * pubm:respam
proc pubm:respam {nick uhost hand chan arg} {
global spamchan spamnick spam botnick
#on cherche un éventuel salon dans la phrase...
  set args [split $arg]
    if {[lsearch $args *#*] != -1} {
       set spamchan [lsearch -all -inline $args #*]
       regsub -all \{ $spamchan "" spamchan
      regsub -all \} $spamchan "" spamchan
#si pas de salon trouver on stop la procédure...
    } else {
    return 0
    }
#si un salon est trouver, on vérifie que le salon fait partie des chans enregistrés du bot donc ou le retour de spam #est inutile...
    if {[validchan $spamchan]} {
    return 0
#si le salon n'en fait pas partie, on lance le retour de spam avec ou sans ban et +im
    }
#On vérifie que le bot est op et que le spammeur ne fait pas partie des utilisateurs enregistrés. Si ces 2 conditions sont remplies on #lance la procédure de +im et de ban. Sinon on applique la procédure de retour de spam normal...
    if {[botisop $chan] && (![validuser $hand])} {
#Mise en place du +im et annonce
        putserv "PRIVMSG $chan :Le Salon a été mis en Modéré \(+m\) Pour eviter le Flood et en Invit \(+i\) Pour eviter l'autojoin du Floodeur"
          putquick "MODE $chan +im"
#on set l'host et le nick du spammeur
              set hostban *!*@[lindex [split $uhost @] 1]
               set spamnick $nick
#on pose le ban
            newchanban $chan $hostban $botnick "Spammeur" $spam(bantime)
#on kick le spammeur
          putserv "KICK $chan $nick :$spam(banmsg)"   
#on lance le timer pour enlever le +im et on l'annonce sur le salon
        utimer 7 "putserv \"mode $chan -mi\""
         putserv "PRIVMSG $chan :Ok c'est bon le Salon Rouvre dans 20s (-mi)"
#on ajout le salon pour le retour de spam
            channel add $spamchan
#on lance le timer de réponse au spam
           utimer 10 "putquick \"PRIVMSG $spamchan :Spam détecté de la part de \002$spamnick\002. Retour de spam : Venez sur \002#pied-davoine2\002\""
#on lance le timer pour que l'egg parte du salon
          utimer 12 "channel remove \"$spamchan\""
        return 0
#Si l'egg n'est pas op et le pseudo ne fait pas partie des utilisateurs de l'eggdrop on ne fait que le retour de spam
     } else {                   
      set spamnick $nick
      channel add $spamchan
      utimer 6 "putquick \"PRIVMSG $spamchan :Spam détecté de la part de \002$spamnick\002. Retour de spam : Venez sur \002#pied-davoine2\002\""
      utimer 10 "channel remove \"$spamchan\""
 }
}



j'ai juste enlever la fonction kick et ban car ayant un autre bot qui annonce les partenaire çà le kickait lui aussi [/code]
Répondre Avertir
#4
Personne a une idée ?
Répondre Avertir


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté