NAME

POE::Component::Jabber::XMPP

SYNOPSIS

This is a Protocol implementation for the specifics in the XMPP protocol during connection initialization.

DESCRIPTION

PCJ::XMPP provides all the mechanisms to negotiate TLS, SASL, resource binding, and session negotiation that PCJ needs to successfully establish an XMPP connection. In essence, it implements XMPP Core and a smidgeon of XMPP IM.

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 XMPP connection.

init_input_handler

This is our entry point. This is what PCJ uses to deliver events to us.

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 resource binding

session_establish

This handles session binding.

NOTES AND BUGS

Currently, only DIGEST-MD5 and PLAIN SASL mechanisms are supported. Server implementations are free to include more strigent mechanisms, but these are the bare minimum required. (And PLAIN isn't /really/ allowed by the spec, but it is included because it was a requested feature)

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.