From a40a7a5a828ab4d4a8e3174f5470e5a44234ba93 Mon Sep 17 00:00:00 2001 From: Pragmatic Software Date: Sun, 26 Nov 2017 12:41:07 -0800 Subject: [PATCH] Support KICK in ActionTrigger --- PBot/Plugins/ActionTrigger.pm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/PBot/Plugins/ActionTrigger.pm b/PBot/Plugins/ActionTrigger.pm index 0ec44ef1..f8d4cc2b 100644 --- a/PBot/Plugins/ActionTrigger.pm +++ b/PBot/Plugins/ActionTrigger.pm @@ -34,6 +34,7 @@ sub initialize { $self->{pbot}->{event_dispatcher}->register_handler('irc.join', sub { $self->on_join(@_) }); $self->{pbot}->{event_dispatcher}->register_handler('irc.part', sub { $self->on_departure(@_) }); $self->{pbot}->{event_dispatcher}->register_handler('irc.quit', sub { $self->on_departure(@_) }); + $self->{pbot}->{event_dispatcher}->register_handler('irc.kick', sub { $self->on_kick(@_) }); $self->{filename} = $self->{pbot}->{registry}->get_value('general', 'data_dir') . '/triggers.sqlite3'; @@ -270,6 +271,16 @@ sub actiontrigger { return $result; } +sub on_kick { + my ($self, $event_type, $event) = @_; + my ($nick, $user, $host) = ($event->{event}->nick, $event->{event}->user, $event->{event}->host); + my ($victim, $reason) = ($event->{event}->to, $event->{event}->{args}[1]); + my $channel = $event->{event}->{args}[0]; + return 0 if $event->{interpreted}; + $self->check_trigger($nick, $user, $host, $channel, "KICK $victim $reason"); + return 0; +} + sub on_action { my ($self, $event_type, $event) = @_; my ($nick, $user, $host, $msg) = ($event->{event}->nick, $event->{event}->user, $event->{event}->host, $event->{event}->args);