html/autolimit.pl


   1 use Irssi 20010920.0000 ();
   2 $VERSION = "1.00";
   3 %IRSSI = (
   4     authors     => 'David Leadbeater',
   5     contact     => 'dgl@dgl.cx',
   6     name        => 'autolimit',
   7     description => 'does an autolimit for a channel, set variables in the script',
   8     license     => 'GNU GPLv2 or later',
   9     url         => 'http://irssi.dgl.yi.org/',
  10 );
  11 
  12 # Change these!
  13 my $channel = "#channel";
  14 my $offset = 5;
  15 my $tolerence = 2;
  16 my $time = 60;
  17 
  18 sub checklimit {
  19    my $c = Irssi::channel_find($channel);
  20    return unless ref $c;
  21    return unless $c->{chanop};
  22    my $users = scalar @{[$c->nicks]};
  23    
  24    if(($c->{limit} <= ($users+$offset-$tolerence)) || 
  25 		 ($c->{limit} > ($users+$offset+$tolerence))) {
  26 	  $c->{server}->send_raw("MODE $channel +l " . ($users+$offset));
  27    }
  28 }
  29 
  30 Irssi::timeout_add($time * 1000, 'checklimit','');
  31