Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re^3: How do I shut down a Bot::BasicBot?

by bingos (Vicar)
on Jul 16, 2010 at 15:52 UTC ( #849998=note: print w/replies, xml ) Need Help??

in reply to Re^2: How do I shut down a Bot::BasicBot?
in thread How do I shut down a Bot::BasicBot?

Apologies I missed something whilst looking through Bot::BasicBot's code:

#!/usr/bin/perl package main; my $bot = Perlbot->new (no_run => 0, server => '', chan +nels => ['#randomtestingchannel']); $SIG{'INT'} = 'Handler'; $SIG{'TERM'} = 'Handler'; sub Handler { $bot->{_shutdown} = 1; $bot->shutdown('Leaving.'); }; $bot->run; package Perlbot; use strict; use warnings; use POE; use base qw(Bot::BasicBot); sub irc_disconnected_state { my $self = $_[OBJECT]; if ( $self->{_shutdown} ) { $poe_kernel->alarm_remove_all(); $poe_kernel->alias_remove($_) for $poe_kernel->alias_list(); return; } $self->SUPER::irc_disconnected_state( @_ ); } sub irc_error_state { my $self = $_[OBJECT]; if ( $self->{_shutdown} ) { $poe_kernel->alarm_remove_all(); $poe_kernel->alias_remove($_) for $poe_kernel->alias_list(); return; } $self->SUPER::irc_error_state( @_ ); }

It is icky nasty though.

Replies are listed 'Best First'.
Re^4: How do I shut down a Bot::BasicBot?
by myuserid7 (Scribe) on Jul 16, 2010 at 16:53 UTC
    After quitting IRC, it says

    ^C (in cleanup) Can't call method "post" on an undefined value at /usr/local/lib/perl5/site_perl/5.10.0/Bot/ line 1500 during global destruction.

    This was the same error I had after running exit 0 from irc_error_state

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://849998]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (5)
As of 2023-09-24 20:32 GMT
Find Nodes?
    Voting Booth?

    No recent polls found