32 #ifndef PTLIB_XMPP_C2S_H
33 #define PTLIB_XMPP_C2S_H
102 void GetVersion(WORD& major, WORD& minor)
const;
173 virtual void HandleSASLStartedState(
PXML& pdu);
235 #endif // PTLIB_XMPP_C2S_H
WORD m_Port
Definition: xmpp_c2s.h:73
PNotifierList & IQNamespaceHandlers(const PString &xml_namespace)
A notifier list for a specific namespace.
PNotifierList & IQHandlers()
Definition: xmpp_c2s.h:123
const PString & GetServerHost() const
Definition: xmpp_c2s.h:65
virtual void OnSessionReleased()
virtual void OnClose(Stream &stream, INT)
PMutex m_PendingIQsLock
Definition: xmpp_c2s.h:208
virtual PBoolean IsEstablished() const
Definition: xmpp_c2s.h:89
virtual void HandleTLSStartedState(PXML &pdu)
virtual void OnMessage(XMPP::Message &pdu)
PString m_StreamID
Definition: xmpp_c2s.h:188
Class specialisation for PNotifierTemplate
virtual void OnIQ(XMPP::IQ &pdu)
WORD m_VersionMinor
Definition: xmpp_c2s.h:187
Definition: xmpp_c2s.h:216
PNotifierList & ErrorHandlers()
These notifier lists are fired when a XMPP stanza or a stream error is received.
Definition: xmpp_c2s.h:120
WORD GetServerPort() const
Definition: xmpp_c2s.h:66
This class represents a XMPP stream, i.e.
Definition: xmpp.h:147
Definition: xmpp_c2s.h:219
PNotifierList m_SessionEstablishedHandlers
Definition: xmpp_c2s.h:199
PBoolean m_HasSession
Definition: xmpp_c2s.h:197
PBoolean m_NewAccount
Definition: xmpp_c2s.h:189
virtual void OnElement(PXML &pdu)
non SASL authentication (JEP-0078)
Definition: xmpp_c2s.h:217
virtual void OnOpen(Stream &stream, INT)
virtual void SetState(StreamState s)
Definition: xmpp_c2s.h:221
PNotifierList m_SessionReleasedHandlers
Definition: xmpp_c2s.h:200
virtual void HandleNonSASLStartedState(PXML &pdu)
TCPTransport(const PString &hostname)
Definition: xmpp_c2s.h:213
virtual void StartAuthNegotiation()
PNotifierList m_PresenceHandlers
Definition: xmpp_c2s.h:203
virtual void OnSessionEstablished()
PNotifierList & PresenceHandlers()
Definition: xmpp_c2s.h:122
XMPP client to server TCP transport.
Definition: xmpp_c2s.h:56
PNotifierList m_ErrorHandlers
Definition: xmpp_c2s.h:201
StreamState
Definition: xmpp_c2s.h:211
PNotifierList & SessionEstablishedHandlers()
These notifier lists after when a client session is established (i.e.
Definition: xmpp_c2s.h:111
virtual PBoolean DiscoverItems(const PString &jid, PNotifier *responseHandler, const PString &node=PString::Empty())
JEP-0030 Service Discovery access methods.
Definition: xmpp_c2s.h:220
BOOL PBoolean
Definition: object.h:102
void GetVersion(WORD &major, WORD &minor) const
PNotifierList & SessionReleasedHandlers()
Definition: xmpp_c2s.h:112
virtual void HandleEstablishedState(PXML &pdu)
PDictionary< PString, PNotifierList > m_IQNamespaceHandlers
Definition: xmpp_c2s.h:205
PBoolean m_HasBind
Definition: xmpp_c2s.h:196
virtual PBoolean DiscoverInfo(const PString &jid, PNotifier *responseHandler, const PString &node=PString::Empty())
PNotifierList m_MessageHandlers
Definition: xmpp_c2s.h:202
virtual PBoolean Start(Transport *transport=0)
const JID & GetJID() const
Definition: xmpp_c2s.h:104
virtual void OnError(PXML &pdu)
virtual void HandleSessionSentState(PXML &pdu)
The character string class.
Definition: pstring.h:108
virtual PBoolean Discover(const PString &xmlns, const PString &jid, PNotifier *responseHandler, const PString &node)
StanzaList m_PendingIQs
Definition: xmpp_c2s.h:209
A socket that uses the TCP transport on the Internet Protocol.
Definition: tcpsock.h:44
virtual void HandleRegStartedState(PXML &pdu)
static PString Empty()
Return an empty string.
virtual void HandleStreamSentState(PXML &pdu)
WORD m_VersionMajor
Definition: xmpp_c2s.h:186
PDictionary< JID, PNotifierList > m_MessageSenderHandlers
Definition: xmpp_c2s.h:206
virtual void StartRegistration()
PNotifierList & MessageSenderHandlers(const JID &from)
A notifier list for a particular message originator.
This class handles the client side of a C2S (Client to Server) XMPP stream.
Definition: xmpp_c2s.h:81
virtual void HandleNullState(PXML &pdu)
Definition: xmpp_c2s.h:218
void SetVersion(WORD major, WORD minor)
PNotifierList & MessageHandlers()
Definition: xmpp_c2s.h:121
Definition: xmpp_c2s.h:214
virtual void HandleBindSentState(PXML &pdu)
PString m_Hostname
Definition: xmpp_c2s.h:72
XMPP stanzas: the following classes represent the three stanzas (PDUs) defined by the xmpp protocol...
Definition: xmpp.h:222
StreamHandler(const JID &jid, const PString &pwd, PBoolean newAccount=false)
This interface is the base class of each XMPP transport class.
Definition: xmpp.h:134
StreamState m_State
Definition: xmpp_c2s.h:226
PBoolean Send(Stanza *stanza)
Request the delivery of the specified stanza NOTE: the StreamHandler takes ownership of the stanza an...
PTCPSocket * m_Socket
Definition: xmpp_c2s.h:74
Definition: xmpp_c2s.h:215
PNotifierList m_IQHandlers
Definition: xmpp_c2s.h:204
Definition: notifier_ext.h:102
virtual void OnPresence(XMPP::Presence &pdu)
JID m_JID
Definition: xmpp_c2s.h:190
const PString m_Password
Definition: xmpp_c2s.h:191
virtual PBoolean Close()
Close the channel.