aboutsummaryrefslogtreecommitdiff
path: root/Plugin/Autojoin.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Plugin/Autojoin.pm')
-rw-r--r--Plugin/Autojoin.pm16
1 files changed, 16 insertions, 0 deletions
diff --git a/Plugin/Autojoin.pm b/Plugin/Autojoin.pm
index 4288c42..01c4a87 100644
--- a/Plugin/Autojoin.pm
+++ b/Plugin/Autojoin.pm
@@ -20,4 +20,20 @@ sub on_001_welcome {
$irc->yield(join => $_) for @{$config->{channels}};
return;
}
+
+sub on_kick {
+ my ($self, $logger, $kicker, $where, $kickee, $why, $irc) = @_;
+ if ($kickee eq $irc->nick_name) {
+ $logger->("I was kicked from $where. Rejoining now...");
+ $irc->yield(join => $where);
+ }
+ return;
+}
+
+sub on_invite {
+ my ($self, $logger, $who, $where, $irc) = @_;
+
+ $irc->yield(join => $where) if (grep {$_ eq $where} @{$config->{channels}});
+ return;
+}
1;