|
QXmpp
Version: 1.15.1
|
QXmpp is a cross-platform C++ XMPP client and server library built on top of the Qt framework (Qt 6.4+). It implements a large number of XMPP Extension Protocols (XEPs) and exposes a modern, reactive API based on C++20 and Qt's property system.
The central class is QXmppClient. Create one, register the managers you need, then connect:
All network operations return a QXmppTask<T>, which represents a pending result. QXmppTask supports co_await, making sequential async code straightforward:
Alternatively, use .then() to attach a callback:
Results are typically QXmpp::Result<T>, a std::variant<T, QXmppError>. Always pass a context object (this) to .then() or .withContext() to ensure the callback is not invoked after the object has been destroyed.
Managers are the primary way to use XMPP features. Register them with QXmppClient and extend QXmppClient by subclassing QXmppClientExtension.
See the Managers module for the full list.
Messaging
Contacts & Roster
Groupchat
File Sharing
End-to-End Encryption
Calls
Bookmarks & PubSub
Service Discovery & Utilities
Legacy (deprecated)
For direct access to XMPP stanzas:
1.8.14