AnyEvent-IRC-Server

 view release on metacpan or  search on metacpan

examples/proxy.pl  view on Meta::CPAN

use strict;
use warnings;
use utf8;

use Encode;
use AE;
use AnyEvent::IRC::Server;
use AnyEvent::IRC::Client;
use Lingua::JA::Gal;
use opts;
use Data::Dumper;

opts my $port => 'Int';
 
my $ircd = AnyEvent::IRC::Server->new(
    port       => $port,
    servername => 'localhost'
);
$ircd->run();

my $ic = AnyEvent::IRC::Client->new;

lib/AnyEvent/IRC/Server.pm  view on Meta::CPAN


BEGIN {
    no strict 'refs';
    while (my ($code, $name) = each %AnyEvent::IRC::Util::RFC_NUMCODE_MAP) {
        *{"${name}"} = sub () { $code };
    }
};

sub debugf {
    return unless $ENV{AEIS_DEBUG};
    require Data::Dumper;
    require Term::ANSIColor;
    local $Data::Dumper::Terse=1;
    local $Data::Dumper::Indent=0;
    my $fmt = shift;
    my $s = sprintf $fmt, (map {
        ref($_) ? (
            Data::Dumper::Dumper($_)
        ) : (defined($_) ? $_ : '<<UNDEF>>')
    } @_);
    my ($package, $filename, $line) = caller(0);
    $s .= " at $filename line $line\n";
    print Term::ANSIColor::colored(["cyan"], $s);
}

sub new {
    my $class = shift;
    my $self = $class->SUPER::new(

t/01-simple.t  view on Meta::CPAN

            registered => sub {
                ok 1, 'registered';
                $irc->send_srv(JOIN => '#foo');
                $irc->send_srv(PRIVMSG => '#foo', 'yo');
                $irc->send_srv(TOPIC => 'boo');
            },
            sent => sub {
                ok 1, 'sentsrv';
            },
            'irc_privmsg' => sub {
                # use Data::Dumper; warn Dumper($_[1]);
            },
            'publicmsg' => sub {
                my ($irc, $channel, $raw) = @_;
                my $cb = shift @callbacks;
                $cb->($channel, $raw);
                if (scalar(@callbacks) == 0) {
                    $cv->send();
                }
            },
            'join' => sub {



( run in 0.506 second using v1.01-cache-2.11-cpan-4d50c553e7e )