Nicholas Perez

NAME

POE::Component::Jabber::J2

SYNOPSIS

PCJ::J2 is a Protocol implementation that is used to connect to the jabberd20 router as a service.

DESCRIPTION

PCJ::J2 implements the jabberd2 component spec located here: (http://jabberd.jabberstudio.org/dev/docs/component.shtml) Specifically, PCJ::J2 will negotiate TLS, SASL, and domain binding required to establish a working connection with jabberd2 as a service.

METHODS

Please see PCJ::Protocol for what methods this class supports.

EVENTS

Listed are the exported events that make their way into the PCJ session:

set_auth

This handles the initial SASL authentication portion of the connection.

init_input_handler

This is our entry point. This is what PCJ uses to deliver events to us. It handles various responses until the connection is initialized fully.

build_tls_wheel

If TLS is required by the server, this is where that negotiation process happens.

challenge_response

This handles the subsequent SASL authentication steps.

binding

This handles the domain binding

NOTES AND BUGS

This Protocol may implement the spec, but this spec hasn't been touched in quite some time. If for some reason my implementation fails against a particular jabberd2 version, please let me know.

The underlying backend has changed this release to now use a new Node implementation based on XML::LibXML::Element. Please see POE::Filter::XML::Node documentation for the relevant API changes.

AUTHOR

Copyright (c) 2003-2009 Nicholas Perez. Distributed under the GPL.