From 9b397609f10d7b61282442ee081e3c1e23430a29 Mon Sep 17 00:00:00 2001 From: David Phillips Date: Tue, 10 Apr 2018 21:18:53 +1200 Subject: Add puppet mode setting Implements feature #2 on GitHub --- README.md | 11 +++++++++++ idalius.pl | 9 +++++++++ 2 files changed, 20 insertions(+) diff --git a/README.md b/README.md index 1dd7017..19c220b 100644 --- a/README.md +++ b/README.md @@ -121,6 +121,17 @@ idalius to contact services like nickserv, memoserv, chanserv etc. Not really useful apart from having a laugh in a channel. Really not sure why I added this except for a lame gag or two. Worth it. +### Set channel/user modes + + mode #channel +v someone + mode #channel +vo someone opguy + mode #channel +n + mode #channel +l 5 + +So on and so forth. What comes after "mode" is sent verbatim to the IRC client +idalius wraps, which (as far as I know) sends it verbatim to the server. So +you're really down to whatever the IRC server you're on will understand. + ### Kick someone from a channel kick #channel badPerson diff --git a/idalius.pl b/idalius.pl index 37073d4..ea276dd 100755 --- a/idalius.pl +++ b/idalius.pl @@ -284,6 +284,15 @@ sub irc_msg { $irc->yield(privmsg => $nick => "Syntax: action "); } } + if ($what =~ /^mode\s/) { + my ($rest) = $what =~ /^mode\s+(.*)?$/; + if ($rest) { + $irc->yield(mode => $rest); + $irc->yield(privmsg => $nick => "Requested."); + } else { + $irc->yield(privmsg => $nick => "Syntax: mode [everything]"); + } + } if ($what =~ /^kick\s/) { my ($channel, $kickee, undef, $reason) = $what =~ /^kick\s+(\S+)\s(\S+)((?:\s)(.*))?$/; if ($channel and $kickee) { -- cgit v1.1