cs_Benjamin37
Messages postés59Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention18 mars 2010 1 déc. 2006 à 14:53
Inutile pour mon avis . je rejoins l'idée que un modérateur est là pour modérer intelligemment ; et non pas appuyer betement sur une touche ou que ça se fasse automatiquement ! ( chacun son point de vue )
Panthouffle
Messages postés281Date d'inscriptionjeudi 21 juillet 2005StatutMembreDernière intervention14 avril 2008 30 nov. 2006 à 21:37
je suis d'accord avec tofu, les modérateurs ne sont pas là pour rien (:
cs_wims
Messages postés2466Date d'inscriptionvendredi 23 juillet 2004StatutMembreDernière intervention 1 août 20101 30 nov. 2006 à 20:21
+72
cs_PaDa
Messages postés1804Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention22 septembre 20095 30 nov. 2006 à 19:59
+1
cs_tofu
Messages postés1726Date d'inscriptionvendredi 12 septembre 2003StatutMembreDernière intervention13 juin 20091 30 nov. 2006 à 19:48
les automatismes: c'est le mal.
si on met des modérateurs c'est surement pas pour qu'ils utilisent des scripts automatiques mais pour qu'ils utilisent leur cerveau pour faire la distinction entre un spam et un mec qui discute et qui lache un # par inadvertance ou par exemple pour donner une info. "tien sur mon répondeur je tape #123" et tac ban, n'importe quoi...
en attendant d'arriver à faire un robot ayant un semblant d'IA, utilisez des semi-automatismes qui vous avertissent qu'il y a eu une action "suspecte" sur le salon et agissez en fonction.
cs_PaDa
Messages postés1804Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention22 septembre 20095 30 nov. 2006 à 08:22
En effet, je ne dois pas avoir compris le but du code.
C'est surement ca ;)
Pada[newb]
cs_TropNul
Messages postés340Date d'inscriptiondimanche 18 septembre 2005StatutMembreDernière intervention22 octobre 2009 30 nov. 2006 à 03:22
ce que j'ai donné n'est qu'à titre d'exemple :p .
je ne pourrais jamais prétendre de refaire ton code ;o)
bref !
Panthouffle
Messages postés281Date d'inscriptionjeudi 21 juillet 2005StatutMembreDernière intervention14 avril 2008 29 nov. 2006 à 23:32
Je crois que tu n'as pas compris ce que j'essai de te montrer, en fait tu peux remplacer tes trois on text par un seul, en te servant de quelques conditions de plus, ensuite tu fais la même chose avec les autre events
on *:text:*:#:{
if (# isin $1-) {
if ($chan == $wildtok($1-,#*,1,32) || $nick isop $chan) { halt }
mode $chan +b $nick
kick $chan $nick SPAM INTERDIT 1WorldDMT?
}
elseif (www. isin $1- || http isin $1-) {
if ($nick isop $chan) { halt }
mode $chan +b $nick
kick $chan $nick SPAM INTERDIT 1WorldDMT?
}
}
Ici j'ai mit le www. et le http dans la même condition parce qu'ils font exactement les même commandes!
En espérant t'avoir aidé...
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 29 nov. 2006 à 23:06
Panthouffle salut
"c'est vrai que pada n'a pas raison, tu n'utilises pas 15 on event mais bien 9 ;) hu²
mais je ne comprend pas pourquoi tu dit qu'il n'a pas comprit le but de ton code, tu t'appuie sur quoi ? "
bin je m'apuis sur un point que vous vous eloignez de ça!!
le nom du chan il ne faut pas avoir un kick en parlant du meme chan en question :/
et dans ça
tu a raison de reduire bro mais j'ai pas utilisé ça car je fuis le spam sans l'avoir faire "if (# isin $1-) { }" donc mon chan est inclu alors il reste une equoition je pense !!
et c'est ce que j'ai pus trouvé
on *:text:*#*:#:{
var %chan = $wildtok($1-,#*,1,32)
if ($chan == %chan) { halt }
tu vois le but bro?
Panthouffle
Messages postés281Date d'inscriptionjeudi 21 juillet 2005StatutMembreDernière intervention14 avril 2008 29 nov. 2006 à 22:37
Pour le on text, je te donnais un exemple, ensuite il te faut l'adapter à tes besoins:
"1. je repond a PaDa et WIMS
lol!! tu n'a rien conclus :/ bien sur j'ai lus les commentaires!!
et regarde bien il y a on text, on notice et on action..
mais toi esque t'a bien compris le but de ce code?? je ne pense pas :s"
c'est vrai que pada n'a pas raison, tu n'utilises pas 15 on event mais bien 9 ;) hu²
mais je ne comprend pas pourquoi tu dit qu'il n'a pas comprit le but de ton code, tu t'appuie sur quoi ?
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 29 nov. 2006 à 22:00
salut a tous
1. je repond a PaDa et WIMS
lol!! tu n'a rien conclus :/ bien sur j'ai lus les commentaires!!
et regarde bien il y a on text, on notice et on action..
mais toi esque t'a bien compris le but de ce code?? je ne pense pas :s
2.apropos du comments de TropNul
meme si je fais ça
on *:text:*:#:{
if ($1 == a) { }
if ($1 == b) { }
if { }
}
la valeur prise en compte c'est "$1"
donc si le # , www. , http viennent pas le premier mot ça ne va pas fonctionné :/
exp:
nick dit: #chan (ok là ça capture)
mais
nick dit: venez voir ce chan #chan (là c'est $5 pas $1 ) x)
mais pour ton 2eme code
on *:TEXT:*:#:{
if ($nick !isop #) {
if $regex($strip($1-),/(\#\w+\b|(www\.|http:\/\/)\w+([-_\.]?\w+)?\.\w{2,4})/i) {
spam détecté !
}
}
}
lol t'es inteligent mais ou es passé le chan présent??
si j'ai fais ce code c'est pas pour rien
on *:text:*#*:#:{
var %chan = $wildtok($1-,#*,1,32)
if ($chan == %chan) { halt }
c'est pour rien c'est pour ne pas etre kick en ecrivant le nom du chan là ou on se trouve!!exp: si on est dans #dalnetchat, je ne dois pas etre kick si j'ecrit #dalnetchat biensur
donc on est toujour sur le même prob quand j'ecrit le nom du chan présent je suis kick!! :/
la seule personne qui a bien parlé c'est Panthouffle en disant:
"petit bug : si on dit deux chans ou plus dans le même texte ça tiendra compte uniquement du premier chan qui a été dit donc on pourras tricher"
c'est vrai! il a raison et je l'avais repondu en disant:
"et pour ce que tu a dis ensuite qu'il ne prend compte que du premier ok t'as raison mais tu le dis parceque tu sais ce que j'ai mis mais si tu ne sais pas tu ne va pas faire une tel invitation
par exp: nick dis venez visitez #mon chan #son chan :s
il va directement dire visitez #son chan"
et ce n'ai que mon premier script :)
cs_wims
Messages postés2466Date d'inscriptionvendredi 23 juillet 2004StatutMembreDernière intervention 1 août 20101 29 nov. 2006 à 20:28
mdr, j'adore le commentaire de PaDa puisqu'il il a entierement raison
cs_PaDa
Messages postés1804Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention22 septembre 20095 29 nov. 2006 à 10:57
Hello,
Tu ne factorises rien, tu utilises 15 "on event", j'en conclus que tu n'as même pas lu les commentaires sur les sources d'ici ... on fait toujours les mêmes remarques, je te mets 3, ne le prends pas mal ;)
Pada
cs_TropNul
Messages postés340Date d'inscriptiondimanche 18 septembre 2005StatutMembreDernière intervention22 octobre 2009 28 nov. 2006 à 20:35
hello.
idem que panthouffle ^^
tu dis que si tu fais:
on *:text:*:#:{
if ($1 == a) { }
elseif ($1 == b) { }
else { }
}
cela ne prendra toujours pas en compte plusieurs choses dans une même phrase. c'est vrai !
pourquoi ne pas faire:
on *:text:*:#:{
if ($1 == a) { }
if ($1 == b) { }
if { }
}
cela te détectera ce que tu veux :)
AvisPerso:
Je ne suis pas d'accord sur tes "cibles". Si par exemple je dis le caractère #, je serais kickban. C'est un peu large non? . ou même si je donne le fameux #include du langage C :)
Même chose pour les 2 autres cibles : www. ou http sont trop larges .
Si cela est trop premier code, bravo pour l'effort mais il te reste à présent a mieux cibler et à optimiser ;o)
j'ai un outil de prédilection quand il s'agit d'analyse de chaîne de caractère et ce sont les expressions rationnelles ou expressions régulières, bref les REGEX :o)
à titre d'exemple pour un on TEXT , je commencerais par cela:
on *:TEXT:*:#:{
if ($nick !isop #) {
if $regex($strip($1-),/(\#\w+\b|(www\.|http:\/\/)\w+([-_\.]?\w+)?\.\w{2,4})/i) {
spam détecté !
}
}
}
tu vas me dire : " C'est quoi ce langage ? "
C'est une "Expression Rationnelle" ! Là, elle est très 'sommaire' mais, je peux t'assurer que sa puissance est inimaginable ;o)
pour plus d'infos aux sujet des regex, -> google ^^ ou encore /help $regex , mais surtout, cherches le tuto de Sax ! Il y a tout dans ce tutoriel pour débuter.
dans ce que j'ai donné , il détectera toujours le #include :|
pour éviter cela, faudra utiliser des conditions avec des if ou encore une expression conditionnelle. bref, c'est encore toute une histoire que je te laisse le plaisir (et l'arrachage de cheveux) de découvrir :p
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 28 nov. 2006 à 08:26
Panthouffle salut
tu dis qu'il falait ecrire plutot
on *:text:a:#:{ }
on *:text:b:#:{ }
on *:text:c:#:{ }
devient -->
on *:text:*:#:{
if ($1 == a) { }
elseif ($1 == b) { }
else { }
}
mais dans ce cas si le a , b ou c viennent dans une phrase??
et (1$ == a) ça prend le premier mot exp:
nick dit: #nom du chan le script marche
mais si par exp:
nick dit: visitez mon chan #nom du chan ou le web www.lesite.com ect..
ça ne va pas capturer je pense :/
et pour ce que tu a dis ensuite qu'il ne prend compte que du premier ok t'as raison mais tu le dis parceque tu sais ce que j'ai mis mais si tu ne sais pas tu ne va pas faire une tel invitation
par exp: nick dis venez visitez #mon chan #son chan :s
il va directement dire visitez #son chan
je ferai une mise a jour avant d'avoir d'autre comments ;)
merci Panthouffle pour ce commentaire :)
Panthouffle
Messages postés281Date d'inscriptionjeudi 21 juillet 2005StatutMembreDernière intervention14 avril 2008 28 nov. 2006 à 00:49
un peu truc pour ne pas avoir plusieurs évènements on text etc., regrouper ses events, voici un exemple avec on text (c'est valable pour les autres events)
on *:text:a:#:{ }
on *:text:b:#:{ }
on *:text:c:#:{ }
devient -->
on *:text:*:#:{
if ($1 == a) { }
elseif ($1 == b) { }
else { }
}
petit bug : si on dit deux chans ou plus dans le même texte ça tiendra compte uniquement du premier chan qui a été dit donc on pourras tricher
dans "if ((%chan) && ($chan == %chan)) { halt }" --> ici tu n'as pas besoin de vérifier si %chan existe puisque le but de ta condition est de savoir s'il est égal a $chan
"if ($nick = $me)" --> normalement ça n'arrievera jamais puisque on text/action et notice ne capterons pas tes propres textes
les . devant les kicks ne servent à rien et tu ne vérifie même pas si tu est op ou halfop avant de kick/ban
voila, en autant que ça fonctionne c'est bien, ensuite avec un peu d'optimisation c'est encore mieux ;)
1 déc. 2006 à 14:53
30 nov. 2006 à 21:37
30 nov. 2006 à 20:21
30 nov. 2006 à 19:59
30 nov. 2006 à 19:48
si on met des modérateurs c'est surement pas pour qu'ils utilisent des scripts automatiques mais pour qu'ils utilisent leur cerveau pour faire la distinction entre un spam et un mec qui discute et qui lache un # par inadvertance ou par exemple pour donner une info. "tien sur mon répondeur je tape #123" et tac ban, n'importe quoi...
en attendant d'arriver à faire un robot ayant un semblant d'IA, utilisez des semi-automatismes qui vous avertissent qu'il y a eu une action "suspecte" sur le salon et agissez en fonction.
30 nov. 2006 à 08:22
C'est surement ca ;)
Pada[newb]
30 nov. 2006 à 03:22
je ne pourrais jamais prétendre de refaire ton code ;o)
bref !
29 nov. 2006 à 23:32
on *:text:*:#:{
if (# isin $1-) {
if ($chan == $wildtok($1-,#*,1,32) || $nick isop $chan) { halt }
mode $chan +b $nick
kick $chan $nick SPAM INTERDIT 1WorldDMT?
}
elseif (www. isin $1- || http isin $1-) {
if ($nick isop $chan) { halt }
mode $chan +b $nick
kick $chan $nick SPAM INTERDIT 1WorldDMT?
}
}
Ici j'ai mit le www. et le http dans la même condition parce qu'ils font exactement les même commandes!
En espérant t'avoir aidé...
29 nov. 2006 à 23:06
"c'est vrai que pada n'a pas raison, tu n'utilises pas 15 on event mais bien 9 ;) hu²
mais je ne comprend pas pourquoi tu dit qu'il n'a pas comprit le but de ton code, tu t'appuie sur quoi ? "
bin je m'apuis sur un point que vous vous eloignez de ça!!
le nom du chan il ne faut pas avoir un kick en parlant du meme chan en question :/
et dans ça
on *:text:*:#:{
if (# isin $1-) { }
elseif (www. isin $1-) { }
elseif (http isin $1-) { }
}
tu a raison de reduire bro mais j'ai pas utilisé ça car je fuis le spam sans l'avoir faire "if (# isin $1-) { }" donc mon chan est inclu alors il reste une equoition je pense !!
et c'est ce que j'ai pus trouvé
on *:text:*#*:#:{
var %chan = $wildtok($1-,#*,1,32)
if ($chan == %chan) { halt }
tu vois le but bro?
29 nov. 2006 à 22:37
on *:text:*:#:{
if (# isin $1-) { }
elseif (www. isin $1-) { }
elseif (http isin $1-) { }
}
"1. je repond a PaDa et WIMS
lol!! tu n'a rien conclus :/ bien sur j'ai lus les commentaires!!
et regarde bien il y a on text, on notice et on action..
mais toi esque t'a bien compris le but de ce code?? je ne pense pas :s"
c'est vrai que pada n'a pas raison, tu n'utilises pas 15 on event mais bien 9 ;) hu²
mais je ne comprend pas pourquoi tu dit qu'il n'a pas comprit le but de ton code, tu t'appuie sur quoi ?
29 nov. 2006 à 22:00
1. je repond a PaDa et WIMS
lol!! tu n'a rien conclus :/ bien sur j'ai lus les commentaires!!
et regarde bien il y a on text, on notice et on action..
mais toi esque t'a bien compris le but de ce code?? je ne pense pas :s
2.apropos du comments de TropNul
meme si je fais ça
on *:text:*:#:{
if ($1 == a) { }
if ($1 == b) { }
if { }
}
la valeur prise en compte c'est "$1"
donc si le # , www. , http viennent pas le premier mot ça ne va pas fonctionné :/
exp:
nick dit: #chan (ok là ça capture)
mais
nick dit: venez voir ce chan #chan (là c'est $5 pas $1 ) x)
mais pour ton 2eme code
on *:TEXT:*:#:{
if ($nick !isop #) {
if $regex($strip($1-),/(\#\w+\b|(www\.|http:\/\/)\w+([-_\.]?\w+)?\.\w{2,4})/i) {
spam détecté !
}
}
}
lol t'es inteligent mais ou es passé le chan présent??
si j'ai fais ce code c'est pas pour rien
on *:text:*#*:#:{
var %chan = $wildtok($1-,#*,1,32)
if ($chan == %chan) { halt }
c'est pour rien c'est pour ne pas etre kick en ecrivant le nom du chan là ou on se trouve!!exp: si on est dans #dalnetchat, je ne dois pas etre kick si j'ecrit #dalnetchat biensur
donc on est toujour sur le même prob quand j'ecrit le nom du chan présent je suis kick!! :/
la seule personne qui a bien parlé c'est Panthouffle en disant:
"petit bug : si on dit deux chans ou plus dans le même texte ça tiendra compte uniquement du premier chan qui a été dit donc on pourras tricher"
c'est vrai! il a raison et je l'avais repondu en disant:
"et pour ce que tu a dis ensuite qu'il ne prend compte que du premier ok t'as raison mais tu le dis parceque tu sais ce que j'ai mis mais si tu ne sais pas tu ne va pas faire une tel invitation
par exp: nick dis venez visitez #mon chan #son chan :s
il va directement dire visitez #son chan"
et ce n'ai que mon premier script :)
29 nov. 2006 à 20:28
29 nov. 2006 à 10:57
Tu ne factorises rien, tu utilises 15 "on event", j'en conclus que tu n'as même pas lu les commentaires sur les sources d'ici ... on fait toujours les mêmes remarques, je te mets 3, ne le prends pas mal ;)
Pada
28 nov. 2006 à 20:35
idem que panthouffle ^^
tu dis que si tu fais:
on *:text:*:#:{
if ($1 == a) { }
elseif ($1 == b) { }
else { }
}
cela ne prendra toujours pas en compte plusieurs choses dans une même phrase. c'est vrai !
pourquoi ne pas faire:
on *:text:*:#:{
if ($1 == a) { }
if ($1 == b) { }
if { }
}
cela te détectera ce que tu veux :)
AvisPerso:
Je ne suis pas d'accord sur tes "cibles". Si par exemple je dis le caractère #, je serais kickban. C'est un peu large non? . ou même si je donne le fameux #include du langage C :)
Même chose pour les 2 autres cibles : www. ou http sont trop larges .
Si cela est trop premier code, bravo pour l'effort mais il te reste à présent a mieux cibler et à optimiser ;o)
j'ai un outil de prédilection quand il s'agit d'analyse de chaîne de caractère et ce sont les expressions rationnelles ou expressions régulières, bref les REGEX :o)
à titre d'exemple pour un on TEXT , je commencerais par cela:
on *:TEXT:*:#:{
if ($nick !isop #) {
if $regex($strip($1-),/(\#\w+\b|(www\.|http:\/\/)\w+([-_\.]?\w+)?\.\w{2,4})/i) {
spam détecté !
}
}
}
tu vas me dire : " C'est quoi ce langage ? "
C'est une "Expression Rationnelle" ! Là, elle est très 'sommaire' mais, je peux t'assurer que sa puissance est inimaginable ;o)
pour plus d'infos aux sujet des regex, -> google ^^ ou encore /help $regex , mais surtout, cherches le tuto de Sax ! Il y a tout dans ce tutoriel pour débuter.
dans ce que j'ai donné , il détectera toujours le #include :|
pour éviter cela, faudra utiliser des conditions avec des if ou encore une expression conditionnelle. bref, c'est encore toute une histoire que je te laisse le plaisir (et l'arrachage de cheveux) de découvrir :p
28 nov. 2006 à 08:26
tu dis qu'il falait ecrire plutot
on *:text:a:#:{ }
on *:text:b:#:{ }
on *:text:c:#:{ }
devient -->
on *:text:*:#:{
if ($1 == a) { }
elseif ($1 == b) { }
else { }
}
mais dans ce cas si le a , b ou c viennent dans une phrase??
et (1$ == a) ça prend le premier mot exp:
nick dit: #nom du chan le script marche
mais si par exp:
nick dit: visitez mon chan #nom du chan ou le web www.lesite.com ect..
ça ne va pas capturer je pense :/
et pour ce que tu a dis ensuite qu'il ne prend compte que du premier ok t'as raison mais tu le dis parceque tu sais ce que j'ai mis mais si tu ne sais pas tu ne va pas faire une tel invitation
par exp: nick dis venez visitez #mon chan #son chan :s
il va directement dire visitez #son chan
je ferai une mise a jour avant d'avoir d'autre comments ;)
merci Panthouffle pour ce commentaire :)
28 nov. 2006 à 00:49
on *:text:a:#:{ }
on *:text:b:#:{ }
on *:text:c:#:{ }
devient -->
on *:text:*:#:{
if ($1 == a) { }
elseif ($1 == b) { }
else { }
}
petit bug : si on dit deux chans ou plus dans le même texte ça tiendra compte uniquement du premier chan qui a été dit donc on pourras tricher
dans "if ((%chan) && ($chan == %chan)) { halt }" --> ici tu n'as pas besoin de vérifier si %chan existe puisque le but de ta condition est de savoir s'il est égal a $chan
"if ($nick = $me)" --> normalement ça n'arrievera jamais puisque on text/action et notice ne capterons pas tes propres textes
les . devant les kicks ne servent à rien et tu ne vérifie même pas si tu est op ou halfop avant de kick/ban
voila, en autant que ça fonctionne c'est bien, ensuite avec un peu d'optimisation c'est encore mieux ;)