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.

