POE::C...Events(3pm)
π NAME π
okay so POE::Component::Jabber::Events β it's the little bestie that exports constants so you can track the status of PCJ. that's it. that's the whole job. she's a constants girlie. β¨
π SYNOPSIS π
like, here's every single one of them, in order, no skipping:
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 πΈ
so POE::Component::Jabber::Events exports a whole bunch of useful constants for tracking the status of PCJ while it's out there doing its thing. π¦
the move is literally just: subscribe to these events and boom, you get notified. that's the vibe. periodt. π
β¨ EXPORTS β¨
below are all the exported constants, each with a lil rundown of what it's actually signalling to you, the end developer π«Ά:
PCJ_CONNECTβ the'connect'or'reconnect'event has fired. she's up. π₯PCJ_CONNECTINGβ connecting is now in process. hold please, we're loading bestie β³PCJ_CONNECTEDβ initial connection established. we're in πPCJ_STREAMSTARTβ a<stream:stream/>tag has been sent. heads up: how many of these you get is variable, depending on which Protocol is currently active (like, XMPP will send upto three, while LEGACY will only send one). no cap. πPCJ_SSLNEGOTIATEβ TLS/SSL negotiation has begun. and listen: this event only is fired from XMPP and JABBERD20_COMPONENT connections. πPCJ_SSLSUCCESSβ TLS/SSL negotiation has successfully complete. socket layer is now encrypted. also: this event only is fired from XMPP and JABBERD20_COMPONENT connections. πPCJ_SSLFAILβ TLS/SSL negotiation has failed. π and yeah, this event only is fired from XMPP and JABBERD20_COMPONENT connections. πPCJ_AUTHNEGOTIATEβ whatever your authentication method is (likeiq:auth, SASL,<handshake/>, etc), it is in process when this status is received. it's giving "prove it" πPCJ_AUTHSUCCESSβ authentication was successful. slay. β¨PCJ_AUTHFAILβ authentication failed. πPCJ_BINDNEGOTIATEβ two flavours, bestie:- For XMPP connections: this indicates resource binding negotiation has begun.
- For JABBERD20_COMPONENT connections: domain binding negotiation has begun.
- and fr fr: this event will not fire for any but the above two connection types.
PCJ_BINDSUCCESSβ again, two flavours:- For XMPP connections: this indicates resource binding negotiation was sucessful.
- For JABBERD20_COMPONENT connections: domain binding negotiation was successful.
- same deal: 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.ARG0will be the node. π€PCJ_NODERECEIVEDβ a Node has been received.ARG0will 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. peep the POE::Component::Jabber event'purge_queue'for details.ARG0will be the node. π§ΊPCJ_RTS_STARTβ areturn_to_senderevent has been fired for an outbound node.ARG0will be the node. πPCJ_RTS_FINISHβ areturn_to_senderevent has been fired for a matching inbound node.ARG0will 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. seriously, don't jump the gun bestie. β
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. bye bestie πPCJ_SOCKETFAILβ this indicates a socket level error.ARG0..ARG2will 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.
and that's the whole page, mwah π this was perl v5.36.0, dated 2023-08-26, and it's the POE::C...Events(3pm) page from the User Contributed Perl Documentation. go forth and track those statuses, bestie πβ¨π¦
π¦ where this page comes from
- debian trixie: libpoe-component-jabber-perl 3.00-6 Β· GPL-2.0-only
- ubuntu noble: libpoe-component-jabber-perl 3.00-6 Β· GPL-2.0-only
- ubuntu resolute: libpoe-component-jabber-perl 3.00-6 Β· GPL-2.0-only
- ubuntu stonking: libpoe-component-jabber-perl 3.00-6 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms