---
name: "POE::Component::Jabber::Events"
section: "3pm"
platform: "linux"
package: "libpoe-component-jabber-perl"
version: "3.00-6"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/POE::Component::Jabber::Events"
---

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

exports constants for tracking status of PCJ

## NAME

POE::Component::Jabber::Events - exports constants for tracking status of PCJ

## SYNOPSIS

```
  PCJ_CONNECT
  PCJ_CONNECTING
  PCJ_CONNECTED
  PCJ_CONNECTFAIL
  PCJ_STREAMSTART
  PCJ_STREAMEND
  PCJ_NODESENT
  PCJ_NODERECEIVED
  PCJ_NODEQUEUED
  PCJ_SSLNEGOTIATE
  PCJ_SSLSUCCESS
  PCJ_SSLFAIL
  PCJ_AUTHNEGOTIATE
  PCJ_AUTHSUCCESS
  PCJ_AUTHFAIL
  PCJ_BINDNEGOTIATE
  PCJ_BINDSUCCESS
  PCJ_BINDFAIL
  PCJ_SESSIONNEGOTIATE
  PCJ_SESSIONSUCCESS
  PCJ_SESSIONFAIL
  PCJ_RTS_START
  PCJ_RTS_FINISH
  PCJ_READY
  PCJ_SHUTDOWN_START
  PCJ_SHUTDOWN_FINISH
  PCJ_SOCKETFAIL
  PCJ_SOCKETDISCONNECT
```

## DESCRIPTION

POE::Component::Jabber::Events exports many useful constants for tracking the  status of PCJ during its operation. Simply subscribe to these events in order to receive notification.

## 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 event only is fired from XMPP and JABBERD20\_COMPONENT connections.

- PCJ\_SSLSUCCESS

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

- PCJ\_SSLFAIL

  TLS/SSL negotiation has failed. This 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\_AUTHFAIL

  Authentication failed.

- PCJ\_BINDNEGOTIATE

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

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

  This 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 event will not fire for any but the above two connection types.

- PCJ\_BINDFAIL

  Binding for which ever context has failed.

- 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\_SESSIONFAIL

  Session negotiation has failed for which ever context.

- PCJ\_NODESENT

  A Node has been placed, outbound, into the Wheel. ARG0 will be the node.

- PCJ\_NODERECEIVED

  A Node has been received. ARG0 will be the node.

- PCJ\_NODEQUEUED

  An attempt to send a Node while there is no valid, initialized connection was  caught. The Node has been queued. See POE::Component::Jabber event  'purge\_queue' for details. ARG0 will be the node.

- PCJ\_RTS\_START

  A return\_to\_sender event has been fired for an outbound node. ARG0 will be the node.

- PCJ\_RTS\_FINISH

  A return\_to\_sender event has been fired for a matching inbound node. ARG0 will be the node.

- PCJ\_READY

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

  Watch for this event and begin packet 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.

- PCJ\_SOCKETFAIL

  This indicates a socket level error. ARG0..ARG2 will be exactly what was passed to us from POE::Wheel::ReadWrite.

- PCJ\_SOCKETDISCONNECT

  This indicates the socket has disconnected and will occur in both normal, and  in error states.

## AUTHOR

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