TCL Idle kick

Idle kick

## Set this to the maximum time of idle (in minutes).
set maxidle 30

## Reason of the boot message.
#set reason "Temporaly Klined for $maxidle minutes of idle"
			  
bind time - "05 * * * *" checked
bind time - "10 * * * *" checked
bind time - "15 * * * *" checked
bind time - "20 * * * *" checked
bind time - "25 * * * *" checked
bind time - "30 * * * *" checked
bind time - "35 * * * *" checked
bind time - "40 * * * *" checked
bind time - "45 * * * *" checked
bind time - "50 * * * *" checked
bind time - "55 * * * *" checked
bind time - "00 * * * *" checked

proc checked {min hour day month year} {
  global maxidle botnet-nick reason
  foreach stuff [whom *] {
	set user [lindex $stuff 0]
	set bot [lindex $stuff 1]            
    putlog "$user || $bot || ${botnet-nick}"
    if {$bot == ${botnet-nick}} {
	  if {[matchattr $user n]} {
		return
	  }
      set idx [hand2idx $user]
	  set idletime [expr [getdccidle $idx].0 / 60]
	  if {$idletime > $maxidle} {
    	putdcc $idx "(Temporaly Klined for $maxidle minutes of idle)"
	    dccbroadcast "Quit $user (Temporaly Klined for $maxidle Minutes Of Idle)"
		killdcc $idx
		return
	  }
    }
  }
}
putlog "BotNet Anti-Idle by IRCHelp.UniBG.Net+LHG Crew Loaded !!!"