The problem is that when someone says "Visit my website --> www.testsomething.net", the bot sends double message, 'cos it binds the *www.* and *.net* -.-"
However I want to bind all these wildcards because sometimes they just say "site.net", etc... and I also have to mantain my exceptions.
It is a sort of byproduct of your method of dealing with spam. Specifically, seperate PUBM binds.
The norm would be to create a list of *spam* masks and, using a single PUBM bind, test each in a foreach loop. You could then output and break from the loop upon finding the first incidence of spam.
Remember also that the bot must test each PUBM bind against each IRC channel chat line. In a fast moving channel with many PUBM binds, that puts a significant strain on the bots resources.
Check out the scripts on offer on this site's Tcl achive. It's a good way to learn.
To be fair I suppose testing each chat line against many spam masks is perhaps also something of a strain too.
arfer wrote:It is a sort of byproduct of your method of dealing with spam. Specifically, seperate PUBM binds.
The norm would be to create a list of *spam* masks and, using a single PUBM bind, test each in a foreach loop. You could then output and break from the loop upon finding the first incidence of spam.
Remember also that the bot must test each PUBM bind against each IRC channel chat line. In a fast moving channel with many PUBM binds, that puts a significant strain on the bots resources.
Check out the scripts on offer on this site's Tcl achive. It's a good way to learn.
To be fair I suppose testing each chat line against many spam masks is perhaps also something of a strain too.
yeah I see. someone told me to use regular expressions for URL matching. But maybe your method is better, I'll try and download some sample script @ the TCL archive. anyway, how would I stop a loop upon the first matching?
After executing whatever kick/ban/warning code simply use the Tcl command break to exit the foreach loop.
I have to say, I have a particular loathing of these scripts. They lack inbuilt intelligence (masks are generally too vague). For example, all it takes is for one user to say to another user on the channel "Are you on myspace?" and they get an immediate sticky ban.
arfer wrote:After executing whatever kick/ban/warning code simply use the Tcl command break to exit the foreach loop.
I have to say, I have a particular loathing of these scripts. They lack inbuilt intelligence (masks are generally too vague). For example, all it takes is for one user to say to another user on the channel "Are you on myspace?" and they get an immediate sticky ban.
Well I didn't decide the binds, someone asked me to do it with these wildcards ^^