aboutsummaryrefslogtreecommitdiff
path: root/examples/08-numeric-bot.p6
diff options
context:
space:
mode:
Diffstat (limited to 'examples/08-numeric-bot.p6')
-rw-r--r--examples/08-numeric-bot.p632
1 files changed, 0 insertions, 32 deletions
diff --git a/examples/08-numeric-bot.p6 b/examples/08-numeric-bot.p6
deleted file mode 100644
index c8edac9..0000000
--- a/examples/08-numeric-bot.p6
+++ /dev/null
@@ -1,32 +0,0 @@
-use lib <lib>;
-use IRC::Client;
-
-.run with IRC::Client.new:
- :nick<MahBot>
- :host(%*ENV<IRC_CLIENT_HOST> // 'irc.freenode.net')
- :channels<#zofbot>
- :2debug
- :plugins(class :: does IRC::Client::Plugin {
- my class NameLookup { has $.channel; has @.users; has $.e; }
- has %.lookups of NameLookup;
-
- method irc-to-me ($e where /^ 'users in ' $<channel>=\S+/) {
- my $channel = ~$<channel>;
- return 'Look up of this channel is already in progress'
- if %!lookups{$channel};
-
- %!lookups{$channel} = NameLookup.new: :$channel :$e;
- $.irc.send-cmd: 'NAMES', $channel;
- Nil;
- }
- method irc-n353 ($e where so %!lookups{ $e.args[2] }) {
- %!lookups{ $e.args[2] }.users.append: $e.args[3].words;
- Nil;
- }
- method irc-n366 ($e where so %!lookups{ $e.args[1] }) {
- my $lookup = %!lookups{ $e.args[1] }:delete;
- $lookup.e.reply: "Users in $lookup.channel(): $lookup.users()[]";
- Nil;
- }
-
- }.new)