Communauté sur les Eggdrops - Community about Eggdrops
petit anti pub simple sur chan - Printable Version

+- Communauté sur les Eggdrops - Community about Eggdrops (https://forum.eggdrop.fr)
+-- Forum: Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum: Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+--- Thread: petit anti pub simple sur chan (/showthread.php?tid=118)

Pages: 1 2


petit anti pub simple sur chan - caline012 - 05/12/2007


tcl
set why "Pas de pub/flood/query/annonce"
bind pubm - "*http*" pub:banonpub
bind pubm - "#*#*" pub:banonpub
bind pubm - "*www*" pub:banonpub
 
proc pub:banonpub { nick uhost handle chan args } {
global why
if {![isop $nick $chan]} {
putmsg $chan "$why sur $chan $nick pliz."
putserv "MODE $chan +b $nick"
putserv "KICK $chan $nick (tu est banni pendant 30 sec pour cause de pub abusive)"
utimer 30 "deban $chan $uhost"
}
}
 
proc deban { chan uhost } {
global botnick
if {[isop $botnick $chan]} {
foreach nick [chanlist $chan] {
if {[getchanhost $nick $chan] == $uhost} {
if {![isop $nick $chan] && ![isvoice $nick $chan]} {
pushmode $chan -b $nick
}
}
}
}
}




RE: petit anti pub simple sur chan - CrazyCat - 05/12/2007

Sympa, mais tu pourrais optimiser ton script en utilisant la banlist de l'eggdrop qui à l'avantage de gérer la durée du ban (en minutes).
tcl-command.doc Wrote:newchanban <channel> <ban> <creator> <comment> [lifetime] [options]
Description: adds a ban to the ban list of a channel; creator is given credit for the ban in the ban list. lifetime is specified in minutes. If lifetime is not specified, ban-time (usually 60) is used. Setting the lifetime to 0 makes it a permanent ban.
Options:
* sticky: forces the ban to be always active on a channel, even with dynamicbans on
* none: no effect



RE: petit anti pub simple sur chan - caline012 - 05/12/2007

oui ca peut le faire mais deja me pose pas de ban ni de kick.mais je trouve ca sympas et leger.bon javoue avoir coder ca en 5 minutes lol faut que je m y attarde un peu plus


RE: petit anti pub simple sur chan - caline012 - 05/12/2007

bah jarrive tjr po a faire kick la personne qui pub.serais ce a cause des * dans les bind


RE: petit anti pub simple sur chan - CrazyCat - 05/12/2007

Je pense plutot que tu as une erreur avec putmsg qui n'est pas une commande valide.


RE: petit anti pub simple sur chan - caline012 - 06/12/2007

jai refait comme ceci
putserv "privmsg $chan $why sur $chan $nick pliz."
mais ca ne mache pas :(


RE: petit anti pub simple sur chan - BdS - 06/12/2007

essaye avec ça:

putquick "PRIVMSG $chan :$why sur $chan $nick pliz."


RE: petit anti pub simple sur chan - caline012 - 06/12/2007

erf tjr pareil la y a un hic quelqu part


RE: petit anti pub simple sur chan - BdS - 06/12/2007

je viens de tester ton code (avec la correction que je t'ai donné) sur un de mes eggs et il fonctionne bien:

[16:31] (BdS) www
[16:31] (@Robot) Pas de pub/flood/query/annonce sur #salon BdS pliz.
[16:31] [Mode] Robot met +b BdS!*@*
[16:31] [Kick] par Robot ((tu est banni pendant 30 sec pour cause de pub abusive))


Parcontre, le ban sur pseudo c'est pas top.


RE: petit anti pub simple sur chan - caline012 - 10/12/2007

si lol ca marche bien mais meme le bot oper et owner il kick ban pas les owner la est le soucis en fait


RE: petit anti pub simple sur chan - BdS - 17/12/2007

c'est pas tres clair, j'ai pas compris ce que tu veux en fait


RE: petit anti pub simple sur chan - caline012 - 17/12/2007

en fait tu a pu voir quand tu est passer.jai ecris le lien d ici et le bot ne ma pas kicker.ni meme banni.
ps desoler du kick c sur le bye (saleter de bot des fois)


RE: petit anti pub simple sur chan - BdS - 18/12/2007

C'est normal qu'il te kick pas ... grace ou a cause de ça:


tcl
if {![isop $nick $chan]} {




RE: petit anti pub simple sur chan - CrazyCat - 23/01/2008

Ce qui n'est pas très étonnant.
Pour ma part, j'aurais fait:

tcl
utimer 30 [list deban $chan $uhost]




RE: petit anti pub simple sur chan - CrazyCat - 23/01/2008

Effectivement, je n'ai pas regardé la procédure deban qui ne peut vraiment pas fonctionner. Quand le vois:

tcl
if {[getchanhost $nick $chan] == $uhost} {

pour débannir, je me dis qu'il y a un gros soucis :D