NAME
POE::Component::IRC::Plugin::CoreList - A POE::Component::IRC plugin
that provides Module::CoreList goodness.
VERSION
version 1.06
SYNOPSIS
use strict;
use warnings;
use POE qw(Component::IRC Component::IRC::Plugin::CoreList);
my $nickname = 'Core' . $$;
my $ircname = 'CoreList Bot';
my $ircserver = 'irc.bleh.net';
my $port = 6667;
my $channel = '#IRC.pm';
my $irc = POE::Component::IRC->spawn(
nick => $nickname,
server => $ircserver,
port => $port,
ircname => $ircname,
debug => 0,
plugin_debug => 1,
options => { trace => 0 },
) or die "Oh noooo! $!";
POE::Session->create(
package_states => [
'main' => [ qw(_start irc_001) ],
],
);
$poe_kernel->run();
exit 0;
sub _start {
# Create and load our CoreList plugin
$irc->plugin_add( 'CoreList' =>
POE::Component::IRC::Plugin::CoreList->new( command => 'core' ) );
$irc->yield( register => 'all' );
$irc->yield( connect => { } );
undef;
}
sub irc_001 {
$irc->yield( join => $channel );
undef;
}
DESCRIPTION
POE::Component::IRC::Plugin::CoreList is a port of
Bot::BasicBot::Pluggable::Module::CoreList to the POE::Component::IRC
plugin framework. It is a frontend to the excellent Module::CoreList
module which will let you know what modules shipped with which versions
of perl, over IRC.
CONSTRUCTOR
new
Creates a new plugin object. Takes some optional parameter:
'command', define a command that will proceed subcommands;
'privmsg', set to a true value to specify that the bot should reply with PRIVMSG instead of
NOTICE to privmsgs that it receives.
IRC USAGE
The bot replies to requests in the following form:
<optional_command> <subcommand> [args]
Commands
The bot understand the following subcommands:
* release
* date
< you> bot: release Test::More
< bot> you: Test::More was first released with perl 5.7.3 (patchlevel perl/15039, released on 2002-03-05)
If no command is given, release is the default.
< you> bot: Test::More
< bot> you: Test::More was first released with perl 5.7.3 (patchlevel perl/15039, released on 2002-03-05)
* search
* find
< you> bot search Data
< bot> Found Data::Dumper, Module::Build::ConfigData
Perl version numbers can be passed as optional parameters to restrict
the search:
< you> bot: search Data 5.006
< bot> Found Data::Dumper in perl 5.006
The search never returns more than 9 replies, to avoid flooding the
channel:
< you> bot: find e
< bot> Found AnyDBM_File, AutoLoader, B::Assembler, B::Bytecode, B::Debug, B::Deparse, B::Disassembler, B::Showlex, B::Terse, ...
SEE ALSO
POE::Component::IRC
Bot::BasicBot::Pluggable::Module::CoreList
AUTHORS
* Chris Williams <chris@bingosnet.co.uk>
* Philippe "BooK" Bruhat <book@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by Chris Williams and Philippe
Bruhat.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.