rendered paste body#!/usr/bin/perl
use strict;
use warnings;
use POE qw(Component::IRC);
use GlomBot::IRC;
use GlomBot::IRC::Events;
my $glombot = GlomBot::IRC->new;
my $pci;
my $session_id;
foreach (GlomBot::IRC->CfgLoad()) {
# Create new PCI object
$pci = POE::Component::IRC->spawn(
nick => $_[1],
ircname => $_[2],
username => $_[2],
server => $_[3],
port => $_[4],
alias => "glomalias",
) or die "Uh oh.. $!";
$session_id = $pci->session_id();
print "session id1: $session_id\n";
# Create new bot object
$glombot->{$session_id} = GlomBot::IRC->bot(@{$_});
# Put PCI object into bot's hash ref
$glombot->{$session_id}->{irc} = $pci;
# Initialize bot's logging mechanism
$glombot->{$session_id}->{log} = $glombot->{$session_id}->LogInit();
print "Initialized bot " . $glombot->{$session_id}->id . " " . $glombot->{$session_id}->nick . "\n";
}
print "Creating POE Session\n";
# Create POE Session
POE::Session->create(
package_states => [
'GlomBot::IRC::Events' => [ qw(_default _start _stop irc_001 irc_connected irc_public
irc_ctcp_version irc_disconnected irc_error irc_join
irc_kick irc_mode irc_msg irc_nick irc_notice
irc_part irc_public irc_quit irc_socketerr irc_topic
irc_registered)],
],
heap => { glombot => $glombot },
);
print "done";
# Run bots
$poe_kernel->run;