Agent-TCLI
view release on metacpan or search on metacpan
lib/Agent/TCLI/Package/XMPP.pm view on Meta::CPAN
package Agent::TCLI::Package::XMPP;
#
# $Id: XMPP.pm 59 2007-04-30 11:24:24Z hacker $
#
=pod
=head1 NAME
Agent::TCLI::Package::XMPP - A package of commands to access the XMPP transport
=head1 SYNOPSIS
# Within a TCLI Agent script
use Agent::TCLI::Transport::XMPP;
use Agent::TCLI::Package::XMPP;
my @packages = (
Agent::TCLI::Package::XMPP->new(),
);
Agent::TCLI::Transport::XMPP->new(
'control_options' => {
'packages' => \@packages,
},
);
=head1 DESCRIPTION
This package provides commands for the control of the XMPP Transport from
within a TLCI Agent. One would typically want to have this command package
loaded when using the XMPP Transport, but it is not required.
This is still poorly documented. I apologize for the inconvenience.
=head1 INTERFACE
=cut
use warnings;
use strict;
use POE;
use Agent::TCLI::Command;
use Agent::TCLI::Parameter;
use Agent::TCLI::User;
use Getopt::Lucid qw(:all);
use Object::InsideOut qw(Agent::TCLI::Package::Base);
our $VERSION = '0.030.'.sprintf "%04d", (qw($Id: XMPP.pm 59 2007-04-30 11:24:24Z hacker $))[2];
=head2 ATTRIBUTES
The following attributes are accessible through standard <attribute>
methods unless otherwise noted.
These attrbiutes are generally internal and are probably only useful to
someone trying to enhance the functionality of this Package module.
=cut
=head2 METHODS
Most of these methods are for internal use within the TCLI system and may
be of interest only to developers trying to enhance TCLI.
=over
=item new ( hash of attributes )
Usually the only attributes that are useful on creation are the
verbose and do_verbose attrbiutes that are inherited from Agent::TCLI::Base.
=cut
sub _preinit :Preinit {
my ($self,$args) = @_;
$args->{'name'} = 'tcli_xmpp';
$args->{'session'} = POE::Session->create(
object_states => [
$self => [qw(
_start
_stop
_shutdown
_default
change
establish_context
peer
show
shutdown
)],
],
);
$args->{'opt_args'} = [qw( group_mode group_prefix verbose )];
}
sub _init :Init {
my $self = shift;
$self->Verbose("init: loading parameters and commands" );
( run in 0.867 second using v1.01-cache-2.11-cpan-f56aa216473 )