From 16e5f47ff43100ec6d08ebac88028725b848d85e Mon Sep 17 00:00:00 2001 From: Doug Freed Date: Tue, 13 Sep 2016 03:32:53 -0400 Subject: CAP printing script Prints CAP lines sent from the server. Code stolen from cap_sasl.pl--- scripts/cap.pl | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 scripts/cap.pl (limited to 'scripts') diff --git a/scripts/cap.pl b/scripts/cap.pl new file mode 100644 index 0000000..794b4dc --- /dev/null +++ b/scripts/cap.pl @@ -0,0 +1,33 @@ +use strict; +use Irssi; +use vars qw($VERSION %IRSSI); + +$VERSION = "1.0"; +%IRSSI = ( + authors => 'dwfreed', + contact => 'dwfreed@mtu.edu', + name => 'cap', + description => 'Prints caps; derived from cap_sasl.pl by Michael Tharp (gxti), Jilles Tjoelker (jilles), and Mantas Mikulėnas (grawity)', + license => 'GPLv2', + url => 'none yet', +); + +sub event_cap { + my ($server, $args, $nick, $address) = @_; + my ($subcmd, $caps); + + if ($args =~ /^\S+ (\S+) :(.*)$/) { + $subcmd = uc $1; + $caps = ' '.$2.' '; + if ($subcmd eq 'LS') { + $server->print('', "CLICAP: supported by server:$caps"); + } elsif ($subcmd eq 'ACK') { + $server->print('', "CLICAP: now enabled:$caps"); + } elsif ($subcmd eq 'NAK') { + $server->print('', "CLICAP: refused:$caps"); + } elsif ($subcmd eq 'LIST') { + $server->print('', "CLICAP: currently enabled:$caps"); + } + } +} +Irssi::signal_add('event cap', \&event_cap); -- cgit v1.2.3