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)
Also, XEP-77 (in-band registration) is NOT supported, but is planned for the next release. Until then, authentication failures are treated as fatal and PCJ will shutdown.
AUTHOR
Copyright (c) 2003-2007 Nicholas Perez. Distributed under the GPL.