Code jeu ni oui ni non
#16
Re fedora,
encore merci de ton aide Smile
Une protection pour mon bot comment sa ?

après si une personne dit ouiiiiiii sa ne devrai plus fonctionné me semble mais je ni connais pas assez

Cordialement Stéphane,

fedora a écrit :dans ce cas là faut faire une exception pour proteger ton bot
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir
#17
Tiens pour se que sa intéresse je mais mon code en mirc, le ttemps de trouvé comment le codé en TCL ou si sa peut m'aidé a le créer en TCL

Copier coller le code dans une nouvelle remote ALT+ R File Load
Code :
on @$*:text:/(^| )(o[-_.,; ]*u[-_.,; ]*i|n[-_.,; ]*o[-_.,; ]*n|o[-_.,; ]*u[-_.,; ]*e|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i[-_.,; ]*s|u[-_.,; ]*é|n[-_.,; ]*a[-_.,; ]*n|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i|v[-_.,; ]*i[-_.,; ]*i[-_.,; ]*i|y[-_.,; ]*e[-_.,; ]*s|v[-_.,; ]*i[-_.,; ]*i|u[-_.,; ]*e|o[-_.,; ]*u[-_.,; ]*é)( |$)/iS:#nioui-ninon: {
/kick # $nick 7INTERDIS 12de dire les mots 7OUI 12ou 7NON 12sur peine de kick XD 
}
on @$*:NOTICE:/(^| )(o[-_.,; ]*u[-_.,; ]*i|n[-_.,; ]*o[-_.,; ]*n|o[-_.,; ]*u[-_.,; ]*e|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i[-_.,; ]*s|u[-_.,; ]*é|n[-_.,; ]*a[-_.,; ]*n|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i|v[-_.,; ]*i[-_.,; ]*i[-_.,; ]*i|y[-_.,; ]*e[-_.,; ]*s|v[-_.,; ]*i[-_.,; ]*i|u[-_.,; ]*e|o[-_.,; ]*u[-_.,; ]*é)( |$)/iS:#nioui-ninon: {
/kick # $nick 7INTERDIS 12de dire les mots 7OUI 12ou 7NON 12sur peine de kick XD 
}
on @$*:action:/(^| )(o[-_.,; ]*u[-_.,; ]*i|n[-_.,; ]*o[-_.,; ]*n|o[-_.,; ]*u[-_.,; ]*e|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i[-_.,; ]*s|u[-_.,; ]*é|n[-_.,; ]*a[-_.,; ]*n|o[-_.,; ]*u[-_.,; ]*a[-_.,; ]*i|v[-_.,; ]*i[-_.,; ]*i[-_.,; ]*i|y[-_.,; ]*e[-_.,; ]*s|v[-_.,; ]*i[-_.,; ]*i|u[-_.,; ]*e|o[-_.,; ]*u[-_.,; ]*é)( |$)/iS:#nioui-ninon: {
/kick # $nick 7INTERDIS 12de dire les mots 7OUI 12ou 7NON 12sur peine de kick XD 
}


Cordialement Stéphane
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir
#18
essaye comme sa

tcl
# Badword Kick by KuNgFo0
 
set badwords {
"oui"
"non"
}
# Kick MSG
set badword_msg "Bad Words"
 
# Channels
set badword_chans "#concept"
 
bind pubm - * pubm_badword
 
putlog "Badword loaded"
 
proc pubm_badword {nick uhost hand chan arg} {
        global badwords badword_msg badword_chans botnick
      set arg [stripcodes uacgbr $arg]
        if {(([lsearch -exact [string tolower $badword_chans] [string tolower $chan]] != -1) || ($badword_chans == "*")) && (![matchattr $hand b]) && ($nick != $botnick)} {
                foreach badword [string tolower $badwords] {
                        if {[string match -nocase $badword [string tolower $arg]]} {
                                putserv "KICK $chan $nick :$badword_msg"
                                return
                        }
                }
        }
}


[font=Times New Roman]La différence entre Linux et Windows ,c'est que Linux c'est comme une belle fille , il faut l'apprivoiser , la comprendre , la séduire tandis que Windows , c'est comme une prostitué , il faut payer et surtout bien se protéger.[/font]
Répondre Avertir
#19
Bonsoir fedora,
Merci infiniment pour ton code mais avec se code sa ne fonctionne plus.

Cordialement Stéphane

fedora a écrit :essaye comme sa

tcl
# Badword Kick by KuNgFo0
 
set badwords {
"oui"
"non"
}
# Kick MSG
set badword_msg "Bad Words"
 
# Channels
set badword_chans "#concept"
 
bind pubm - * pubm_badword
 
putlog "Badword loaded"
 
proc pubm_badword {nick uhost hand chan arg} {
        global badwords badword_msg badword_chans botnick
      set arg [stripcodes uacgbr $arg]
        if {(([lsearch -exact [string tolower $badword_chans] [string tolower $chan]] != -1) || ($badword_chans == "*")) && (![matchattr $hand b]) && ($nick != $botnick)} {
                foreach badword [string tolower $badwords] {
                        if {[string match -nocase $badword [string tolower $arg]]} {
                                putserv "KICK $chan $nick :$badword_msg"
                                return
                        }
                }
        }
}

hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir
#20
Bonsoir,
un truc dans se code que je ne trouve pas après plusieurs kick il banni
Comment viré le code qui banni ? svp merci Smile
J'ai supprimer cette ligne && (![matchattr $hand b]) mais sa na rien changer je suis vraiment nul en tcl lol

Code :
# Badword Kick by KuNgFo0

set badwords {
"*oui*"
"*non*"
"*o u i*"
"*n o n*"
}
# Kick MSG
set badword_msg "8,1Attention tu viens d'être kické pour avoir dit le mot interdit oui ou Non :bete:"

# Channels
set badword_chans "#nioui-ninon"

bind pubm - * pubm_badword

putlog "Badword loaded"

proc pubm_badword {nick uhost hand chan arg} {
        global badwords badword_msg badword_chans botnick
      set arg [stripcodes uacgbr $arg]
        if {(([lsearch -exact [string tolower $badword_chans] [string tolower $chan]] != -1) || ($badword_chans == "*")) && (![matchattr $hand b]) && ($nick != $botnick)} {
                foreach badword [string tolower $badwords] {
                        if {[string match -nocase $badword $arg]} {
                                putserv "KICK $chan $nick :$badword_msg"
                                return
                        }
                }
        }
}

Ps : en attendent de trouvé mieux ou de savoir coder le tcl je ferrais avec se code sa dépanne bien Smile

Cordialement Stéphane
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir
#21
faut que ton bot détecte le mot "oui" ou "non" dans une phrase ? ou juste si une personne marque "oui" ou "non"
[font=Times New Roman]La différence entre Linux et Windows ,c'est que Linux c'est comme une belle fille , il faut l'apprivoiser , la comprendre , la séduire tandis que Windows , c'est comme une prostitué , il faut payer et surtout bien se protéger.[/font]
Répondre Avertir
#22
en recherchant un peut sur le site,je suis tomber sur le code de Dj_KennY qui fait un peut ce que tu recherche.j'ai ajouter un foreach.

tcl
namespace eval speak {
   # variable contenant les mots à reconnaitre
   # on pourras utiliser des wildchar * ?
   variable bonjour {oui non}
  setudef flag OuiNon
}
 
bind pubm - * speak::bonjour
proc speak::bonjour {nick host hand chan text} {
   # on déclare les variable bonjour
   variable bonjour
   if {[channel get $chan OuiNon]} {
   # on debug le texte et on met tout en minuscules
   set text [stripcodes abcru $text]
   set text [string tolower $text]
   # on test si on trouve le texte dans la variable bonjour
    foreach mot $text {
   if {[lsearch -exact $bonjour $mot] != -1} {
       putserv "KICK $chan $nick :Attention tu viens d'être kické pour avoir dit le mot interdit oui ou Non :bete:"
 
   # on ferme les \} qu on a ouvert plus haut
   }
}
}
}



pour l'activer tape en pl .chanset #salon +OuiNon
essaye de tester comme sa voir. perso j'ai tester est sa fonctionne ...
[font=Times New Roman]La différence entre Linux et Windows ,c'est que Linux c'est comme une belle fille , il faut l'apprivoiser , la comprendre , la séduire tandis que Windows , c'est comme une prostitué , il faut payer et surtout bien se protéger.[/font]
Répondre Avertir
#23
Bonjour fedora,
Merci beaucoup de ton aide et de cette réponse Wink

Oui j'avais aussi trouvé cette source :p elle marche très bien Smile

Mais je l'utilisé pas car je trouvé pas comment on pouvez ajouter les variable oui en O U I j'avais testé avec des étoiles O*U*I sa ne fonctionné pas Smile donc la je viens de re faire le testé avec ton code il fonctionne tres bien mais il ne prend pas les variables "o*u*i" / "n*o*n" / "o u i" et "n o n"

Cordialement Stéphane

fedora a écrit :en recherchant un peut sur le site,je suis tomber sur le code de Dj_KennY qui fait un peut ce que tu recherche.j'ai ajouter un foreach.

tcl
namespace eval speak {
   # variable contenant les mots à reconnaitre
   # on pourras utiliser des wildchar * ?
   variable bonjour {oui non}
  setudef flag OuiNon
}
 
bind pubm - * speak::bonjour
proc speak::bonjour {nick host hand chan text} {
   # on déclare les variable bonjour
   variable bonjour
   if {[channel get $chan OuiNon]} {
   # on debug le texte et on met tout en minuscules
   set text [stripcodes abcru $text]
   set text [string tolower $text]
   # on test si on trouve le texte dans la variable bonjour
    foreach mot $text {
   if {[lsearch -exact $bonjour $mot] != -1} {
       putserv "KICK $chan $nick :Attention tu viens d'être kické pour avoir dit le mot interdit oui ou Non :bete:"
 
   # on ferme les \} qu on a ouvert plus haut
   }
}
}
}



pour l'activer tape en pl .chanset #salon +OuiNon
essaye de tester comme sa voir. perso j'ai tester est sa fonctionne ...
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir
#24
perso je pense que si tu met *oui* ou *non* le bot fera plus la différence entre ouistitit et oui vue que oui sera détecter dedans...
la ton bot détecte bien si un user écris "oui" ou "non" dans une phrase.
[font=Times New Roman]La différence entre Linux et Windows ,c'est que Linux c'est comme une belle fille , il faut l'apprivoiser , la comprendre , la séduire tandis que Windows , c'est comme une prostitué , il faut payer et surtout bien se protéger.[/font]
Répondre Avertir
#25
Re fedora
Sa je suis d'accord avec toi Smile mais la c'est avec des espaces dans le mot oui ou non ----> o u i / n o n et pas *oui*

Cordialement Stéphane

fedora a écrit :perso je pense que si tu met *oui* ou *non* le bot fera plus la différence entre ouistitit et oui vue que oui sera détecter dedans...
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir
#26
Essaye de mettre dans la variable "n o n" et 'o u i '
[font=Times New Roman]La différence entre Linux et Windows ,c'est que Linux c'est comme une belle fille , il faut l'apprivoiser , la comprendre , la séduire tandis que Windows , c'est comme une prostitué , il faut payer et surtout bien se protéger.[/font]
Répondre Avertir
#27
Rheuuu Fedora,
Je pensé pas que c'était possible Smile j'ai mis comme sa :
Citation :variable bonjour {oui non 'n o n' 'o u i' }
C'est impeccable cela fonctionne Wink

Par contre un truc que je pige pas peut tu m'éclairai ?
avec cette variable :
Citation :variable bonjour {oui 'o u i' non 'n o n' nan 'n a n' oué 'o u é' ouais 'o u a i s' ouai 'o u a i' yes 'y e s'}

tout fonctionne sauf les lettre avec accent éàèê
et après si je tape o u ii ou o u iiiiiii sa me kick mais pas comme sa --> ouiiiiii

Cordialement Stéphane

Citation :[13:39] <snip74> o u ii
[13:39] * You were kicked by Nioui-Ninon (Attention tu viens d'être kické pour avoir dit le mot interdit oui ou Non :beteSmile

Et ici sa ne kick plus --->
[13:40] <snip74> ouiii

J'ai aussi testé pour les actions de type /me ma phrase comporte le mot oui ou non en action cela devrait me kick

mais sa me foire mon code voici le code que j'ai ajouter :
Code :
bind ctcp - "ACTION" maproc
proc maproc {nick uhost hand chan key text} {

fedora a écrit :Essaye de mettre dans la variable "n o n" et 'o u i '
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir
#28
salut,

Citation :et après si je tape o u ii ou o u iiiiiii sa me kick mais pas comme sa --> ouiiiiii
il faudrait peut être voir du coté de regexp Wink
d'ailleurs se serait même plus simple pour tout le reste du code
C'est en reconnaissant ses erreurs que l'on progresse Wink
Répondre Avertir
#29
Bonjour djkenny,
Merci de cette réponse Smile
Oui en regexp sa ne serrait pas mal c'est un peut se que j'ai fait en Mirc plus haut sauf que je connais pas comment le coder si j'ai le code après pas de souci pour créer les regexp avec un 1 ou 2 model vue qu'il suffi de copier coller lol

encore un exemple j'ai mis la variable {oui 'o u i' 'o ui' 'ou i'}
Quand je tape oui / o u i / o ui / o uiiiii cela me kick sans souci Smile

mais quand je tape ou iiiii / ou ii / ou iii bah la plus rien :/ tout de même bizarre vue que y a la variable les autre fonctionne mais pas celle la lol

Cordialement Stéphane

djkenny a écrit :salut,

Citation :et après si je tape o u ii ou o u iiiiiii sa me kick mais pas comme sa --> ouiiiiii
il faudrait peut être voir du coté de regexp Wink
d'ailleurs se serait même plus simple pour tout le reste du code
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir
#30
Re all,
Tiens je viens de m'apercevoir qu'il y avait un truc qui va pas :/
avec la variable :
{oui 'o u i' non 'n o n' nan 'n a n' oué 'o u é' oue 'o u e' ouais 'o u a i s' ouai 'o u a i' yes 'y e s' ouep 'o u e p'}

quand une personne tape a f par exemple sa le kick voila l'exemple :
[13:11] <Franck> toute a fais
[13:11] * Franck was kicked by Nioui-Ninon (Attention tu viens d'être kické pour avoir dit le mot interdit oui ou Non :beteSmile

après avoir fait des testes voila se que sa donne :

[13:35] <snip74> af
[13:35] <snip74> a f
[13:35] * You were kicked by Nioui-Ninon (Attention tu viens d'être kické pour avoir dit le mot interdit oui ou Non :beteSmile

Cordialement Stéphane
hésitez pas de visité http://www.tchat-fusion.org/
ou part irc /server -m irc.tchat-fusion.org
Répondre Avertir


Atteindre :


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