POE::Component::IRC::Plugin::Console man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

POE::Component::IRC::PUsernContributed)POE::Component::IRC::Plugin::Console(3)

NAME
       POE::Component::IRC::Plugin::Console - A PoCo-IRC plugin that provides
       a lightweight debugging and control console for your bot

SYNOPSIS
	use POE qw(Component::IRC Component::IRC::Plugin::Console);

	my $nickname = 'Flibble' . $$;
	my $ircname = 'Flibble the Sailor Bot';
	my $ircserver = 'irc.blahblahblah.irc';
	my $port = 6667;
	my $bindport = 6969;

	my @channels = ( '#Blah', '#Foo', '#Bar' );

	my $irc = POE::Component::IRC->spawn(
	    nick => $nickname,
	    server => $ircserver,
	    port => $port,
	    ircname => $ircname,
	) or die "Oh noooo! $!";

	POE::Session->create(
	    package_states => [
		main => [ qw(_start irc_001 irc_console_service irc_console_connect
		    irc_console_authed irc_console_close irc_console_rw_fail) ],
		],
	);

	$poe_kernel->run();

	sub _start {
	    $irc->plugin_add( 'Console' => POE::Component::IRC::Plugin::Console->new(
		bindport => $bindport,
		password => 'opensesame'
	    );
	    $irc->yield( register => 'all' );
	    $irc->yield( connect => { } );
	    return;
	 }

	sub irc_001 {
	    $irc->yield( join => $_ ) for @channels;
	    return;
	}

	sub irc_console_service {
	    my $getsockname = $_[ARG0];
	    return;
	}

	sub irc_console_connect {
	    my ($peeradr, $peerport, $wheel_id) = @_[ARG0 .. ARG2];
	    return;
	}

	sub irc_console_authed {
	    my $wheel_id = $_[ARG0];
	    return;
	}

	sub irc_console_close {
	    my $wheel_id = $_[ARG0];
	    return;
	}

	sub irc_console_rw_fail {
	    my ($peeradr, $peerport) = @_[ARG0, ARG1];
	    return;
	}

DESCRIPTION
       POE::Component::IRC::Plugin::Console is a POE::Component::IRC plugin
       that provides an interactive console running over the loopback network.
       One connects to the listening socket using a telnet client (or
       equivalent), authenticate using the applicable password. Once authed
       one will receive all events that are processed through the component.
       One may also issue all the documented component commands.

METHODS
   "new"
       Takes two arguments:

       'password', the password to set for *all* console connections;

       'bindport', specify a particular port to bind to, defaults to 0, ie.
       randomly allocated;

       Returns a plugin object suitable for feeding to POE::Component::IRC's
       "plugin_add" method.

   "getsockname"
       Gives access to the underlying listener's "getsockname" method. See
       POE::Wheel::SocketFactory for details.

OUTPUT
       The plugin generates the following additional POE::Component::IRC
       events:

   "irc_console_service"
       Emitted when a listener is successfully spawned. "ARG0" is the result
       of "getsockname", see above for details.

   "irc_console_connect"
       Emitted when a client connects to the console. "ARG0" is the peeradr,
       "ARG1" is the peer port and "ARG2" is the wheel id of the connection.

   "irc_console_authed"
       Emitted when a client has successfully provided a valid password.
       "ARG0" is the wheel id of the connection.

   "irc_console_close"
       Emitted when a client terminates a connection. "ARG0" is the wheel id
       of the connection.

   "irc_console_rw_fail"
       Emitted when a POE::Wheel::ReadWrite could not be created on a socket.
       "ARG0" is the peer's address, "ARG1" is the peer's port.

AUTHOR
       Chris 'BinGOs' Williams

SEE ALSO
       POE::Component::IRC

       POE::Wheel::SocketFactory

perl v5.14.1			  2010-POE::Component::IRC::Plugin::Console(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net