can anyone help me make a egg script that when a person parts a channel it runs a whois on them like 2 or 3 times with intervals of like 30seconds to 1 minute, to check what channels they enter, and if the channel is on a list then a ban is added for that user.
I dont know any tcl, and have tried many many times to figure it out, i am not an elite scripter, so if anyone would help me, i would greatly appreciate it.
but what's the rationale in assuming someone (or something - drone, spambot, whatever) is much more likely to join a sh*tlisted channel after having joined that guy's channel than before joining it? I don't quite get that logic, maybe I'm missing something here, but it sounds pointless to me
From what he told me on DALnet, the idea is to get a list of channels after they (cyclers?) leave his and ban their hosts if found in any sex/warez channels.
The idea (apparently) is to stop them returning and getting another list of channel users. It's a kids channel and the average age of their users is 14. I also believe a banned channel script is already in use (that scans all on joining).
Personally, I reckon just using a channel key would be more appropriate.
Add [SOLVED] to the thread title if your issue has been. Search | FAQ | RTM
then i think that the conception is to save a list of parting users and not sing out users.and with a delay to make whois to each one for time of 3 minites.after 3 minites remove user from list.
if we talking about a big channel i thing that one bot must do only that.If the channel is flooded with join/part the bot still make whois.If the bot take the answer "no such user" cannot understant it and still whois.
not so easy i think and i dont know how helpfull can be.
Also the drones make quit and reconnect with other address or proxy or zombie.More details and some examples would be helpfully to understand the problem.
I doubt such script would be too useful, simply because most spambots/drones usually change their nicks on each cycle, therefore you can't really track those once they've parted your channel
some details?
how long time stay drone on chan?
most of them join/part in intrerval of 10 sec or quit after 1 sec.That is solved with fly detect.
some whois of drones? have something common like 5 char ident/5 char fullname? randomly something? finger reply(what mail giving)?
ctcp ping/version/time exist and if yes what? something special or normal user reply?
what message give drones?(site after 2 lines? or something else?)
also....most of drones finding channels and joining after /list and nr of users in it.
think the +s(secret) solution.If the drones keep joining meaning that someone from "inside" pushing to join 90%.
solutions like key is last solution.
another one solution if the drone stay inside ask him to identify himself
example:join drone.bot mark the join and send a prvmsg to drone after 5 sec:"say i am not drone on channel in the next 30 sec".if say something on channel then is user and voice else ban.After channel sync (bot on split/quit).The bot check out only the unvoices users.
It is not a matter of flybys or drones. Certain individuals come on the channel, just to get the nicklist, sometimes stay on the channel for 1 whole minute of not talking, then exit, and a minute later you find them in a bad channel. This is just an example, they are users, not drones, hence the reason a whois after they part.
hmm you said you need help with making that script, and you also said you don't know any Tcl... are you going to learn Tcl if someone is willing to help you with the script? Anyway, here's a snippet that you may wish to complete:
set sc {#xxx #sex}
bind raw - 319 foo
bind part - * bar
proc foo {f k t} {
set n [lindex [split $t] 1]
set ch [lrange [split $t] 2 e]
foreach c [string tol $::sc] {
if {[lsearch [string tol $ch] *$c] != -1} {
# ban $n with uhost $::uh($n)
}
}
}
proc bar {n u h c m} {
set ::uh($n) $u
timer 1 [list puthelp "whois $n"]
}