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"); } 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"); Irssi::signal_add("message join", "iemandjoint");