---
name: "POE::Component::Jabber::Status"
section: "3pm"
platform: "linux"
package: "libpoe-component-jabber-perl"
version: "2.02-1"
release: "Debian 5.0 (Lenny)"
platforms: ["linux"]
url: "https://new.carta.tech/POE::Component::Jabber::Status"
---

# POE::Component::Jabber::Status(3pm)

useful constants for examining status

## NAME

POE::Component::Jabber::Status - useful constants for examining status

## SYNOPSIS

PCJ::Status exports many useful constants for tracking the status of PCJ during it's operation.

## DESCRIPTION

PCJ, through the StatusEvent, will spit out various statuses for just about  every step practical during normal operation. This includes being engaged during the various Protocol specific portions that get loaded to handle the dialects PCJ supports.

## EXPORTS

Below are the exported constants with a brief explanation of what it is  signalling to the end developer:

- PCJ\_CONNECT

  'connect' or 'reconnect' event has fired.

- PCJ\_CONNECTING

  Connecting is now in process

- PCJ\_CONNECTED

  Initial connection established

- PCJ\_STREAMSTART

  A \<stream:stream/\> tag has been sent. The number of these events is variable  depending on which Protocol is currently active (ie. XMPP will send upto three,  while LEGACY will only send one).

- PCJ\_SSLNEGOTIATE

  TLS/SSL negotiation has begun. This Status event only is fired from XMPP and JABBERD20\_COMPONENT connections.

- PCJ\_SSLSUCCESS

  TLS/SSL negotiation has successfully complete. Socket layer is now encrypted.  This Status event only is fired from XMPP and JABBERD20\_COMPONENT connections.

- PCJ\_AUTHNEGOTIATE

  Whatever your authentication method (ie. iq:auth, SASL, \<handshake/\>, etc), it is in process when this status is received.

- PCJ\_AUTHSUCCESS

  Authentication was successful.

- PCJ\_BINDNEGOTIATE

  For XMPP connections: this indicates resource binding negotiation has begun.

  For JABBERD20\_COMPONENT connections: domain binding negotiation has begun.

  This Status event will not fire for any but the above two connection types.

- PCJ\_BINDSUCCESS

  For XMPP connections: this indicates resource binding negotiation was  sucessful.

  For JABBERD20\_COMPONENT connections: domain binding negotiation was successful.

  This Status event will not fire for any but the above two connection types.

- PCJ\_SESSIONNEGOTIATE

  Only for XMPP: This indicates session binding (XMPP IM) negotiation has begun.

- PCJ\_SESSIONSUCCESS

  Only for XMPP: This indicates session binding (XMPP IM) negotiation was successful.

- PCJ\_NODESENT

  A Node has been placed, outbound, into the Wheel

- PCJ\_NODERECEIVED

  A Node has been received.

- PCJ\_NODEQUEUED

  An attempt to send a Node while there is no valid, initialized connection was  caught. The Node has been queued. See PCJ event 'purge\_queue' for details.

- PCJ\_RTS\_START

  A return\_to\_sender event has been fired for an outbound node.

- PCJ\_RTS\_FINISH

  A return\_to\_sender event has been fired for a matching inbound node.

- PCJ\_INIT\_FINISHED

  This event indicates that the connection is fully initialized and ready for use.

  Watch for this event and begin packat transactions AFTER it has been fired.

- PCJ\_STREAMEND

  A \</stream:stream\> Node has been sent. This indicates the end of the connection and is called upon 'shutdown' of PCJ after the Node has been flushed.

- PCJ\_SHUTDOWN\_START

  This indicates that 'shutdown' has been fired and is currently in progress of  tearing down the connection.

- PCJ\_SHUTDOWN\_FINISH

  This indicates that 'shutdown' is complete.

## NOTES

These Statuses should remain fairly constant, but like the note in PCJ::Error,  these Status events are not written in stone. They are written in vim and are  subject to change.

## AUTHOR

(c) Copyright 2007 Nicholas Perez. Released under the GPL.
