1# by Uwe 'duden' Dudenhoeffer 2# 3# chansync.pl 4 5 6use strict; 7 8use vars qw($VERSION %IRSSI); 9$VERSION = '0.1'; 10%IRSSI = ( 11 authors => 'Uwe \'duden\' Dudenhoeffer', 12 contact => 'script@duden.eu.org', 13 name => 'chanfull', 14 description => 'Notify if Channellimit is reached', 15 license => 'GPLv2', 16 url => '', 17 changed => 'Sat Feb 8 18:08:54 CET 2003', 18); 19 20# Changelog 21# 22# 0.1 23# - first working version 24 25use Irssi; 26 27sub event_message_join ($$$$) { 28 my ($server, $channel, $nick, $address) = @_; 29 my $c=Irssi::channel_find($channel); 30 my $users=scalar @{[$c->nicks]}; 31 return if($c->{limit} == 0); 32 my $left = $c->{limit} - $users; 33 if($left < 3) { 34 if($left<=0) { 35 Irssi::printformat(MSGLEVEL_CRAP, 'chanfull_full', $channel); 36 } else { 37 Irssi::printformat(MSGLEVEL_CRAP, 'chanfull_left', $left, $channel); 38 } 39 } 40} 41 42Irssi::signal_add('message join', 'event_message_join'); 43 44Irssi::theme_register([ 45 'chanfull_left' => 'Only $0 client(s) left in {channel $1} till limit is reached', 46 'chanfull_full' => '{channel $0} is full' 47]); 48