[BINGOS - Tue Jan 18 10:01:03 2005]:
Show quoted text> [guest - Sat Jan 15 22:12:01 2005]:
>
> > POE-Component-IRC-3.0
> > Perl 5.8.5
> > Gentoo Linux 2.6.10-hardened-r1
> >
> > Running a hardened kernel and toolchain w/ grsec/pax/ssp.
> > Problem occurred on both a 2.4 box and a 2.6 box running NPTL
> > IRC network is Freenode.net
> >
> > The bot ceases receiving events after about 3 minutes of channel
> > activity. Freenode lacks any "Ping Pong" event to keep clients
> > alive, and I suspect this may be related to that. No error or
> > warning messages, error isn't related to coding.
>
>
> I have created a very simple test bot and tried it out on Freenode. Have
> not be able to replicate the problem. Reports from other bot
> authors/owners on Freenode indicate that they havne't experienced this
> issue either.
>
> I would suggest turning on POE::Session tracing. You can do this in
> PoCo::IRC by calling ->new( 'alias', trace => 1 )
>
> Cheers.
Further to my previous note I *have* been able to replicate the issue
with the component on Freenode :/
That was the bad news. The good news is that there is a work around.
http://poe.perl.org/?POE_Cookbook/IRC_Bot_Reconnecting
The above link provides example code so that a bot can poll the
connection to the IRC server itself, if it hasn't seen any traffic from
the server in a certain period of time. I have tested this on Freenode
and the problem "goes away". Reports from other bot authors on Freenode
confirms that they are using the same or similar code in their creations
with success.
Cheers.