use strict;
use vars ('$VERSION','%IRSSI');
use Irssi;
$VERSION = '0.1';
%IRSSI = ( authors => 'Nikolas Garofil', contact => 'nikolas@garofil.be',
name => 'tell', description => 'stuurt boodschappen naar users die er niet zijn',
license => 'GPL v3',
);
'my %boodschappen;'
sub iemandspreekt {
my ($server,$boodschap,$nick,$adres,$kanaal)=@_;
#onthoud een boodschap
if($boodschap=~/^\s*[\\!]tell\s+(\S+)\s+(.*)$/i){
push(@{$boodschappen{$1}},"$nick told you \"$2\" but you were offline");
$server->command("msg $kanaal $nick: I'll tell it to $1");
}
#als iemand iets zegt is hij aanwezig dus stuurt de bot alle boodschappen, maar als die iemand '!tell zichzelf' deed, zeg het dan nog niet
my $laatste;
if($boodschap=~/^\s*[\\!]tell\s+($nick)\s+(.*)$/i){ $laatste=pop @{$boodschappen{$nick}}; }
foreach(@{$boodschappen{$nick}}){
$server->command("msg $kanaal $nick: $_");
}
@{$boodschappen{$nick}}=();
if($boodschap=~/^\s*[\\!]tell\s+($nick)\s+(.*)$/i){ @{$boodschappen{$nick}}=($laatste); }
sub iemandjoint {
my ($server, $kanaal, $nick, $host) = @_;
foreach(@{$boodschappen{$nick}}){
$server->command("msg $kanaal $nick: $_");
}
@{$boodschappen{$nick}}=();
}
Irssi::signal_add("message public", "iemandspreekt");