http://www.perlmonks.org?node_id=402762

japhy has asked for the wisdom of the Perl Monks concerning the following question:

I'm writing a program that is supposed to create IRC bots (using POE) each time it gets a request. The program is:
use POE; use POE::Component::Server::TCP; use POE::Component::IRC; POE::Component::Server::TCP->new( Port => '9999', Address => '0.0.0.0', ClientInput => \&client_input, ); POE::Session->create( package_states => [ main => [qw( _start irc_001 )], ], ); $poe_kernel->run(); sub _start { } sub client_input { ++$x; print "creating bot-$x\n"; POE::Component::IRC->new("bot-$x"); $_[KERNEL]->post("bot-$x", 'register', 'all'); $_[KERNEL]->post("bot-$x", "connect", { Nick => "j-bot-$x", Server => 'irc.freenode.net', Port => 6667, }); print "created bot-$x\n"; } sub irc_001 { print "CONNECTED ...\n"; }
I never see the "CONNECTED" message. What am I doing wrong?
_____________________________________________________
Jeff japhy Pinyan, P.L., P.M., P.O.D, X.S.: Perl, regex, and perl hacker
How can we ever be the sold short or the cheated, we who for every service have long ago been overpaid? ~~ Meister Eckhart