Swiften XMPP Client Library
Swiften is a robust, high-quality, standards-compliant, cross-platform, and performant C++ library for implementing XMPP applications. Swiften is used as the back-end library for the Swift IM client. Version 1.0 of Swiften supports:
- SASL and TLS as part of RFC 6120
- RFC 6120: Extensible Message and Presence Protocol - Core
- RFC 6121: Extensible Message and Presence Protocol - Instant Messaging & Presence
- XEP-0004: Data Forms
XEP-0030: Service Discovery - XEP-0045: Multi-User Chat (partial)
- XEP-0048: Bookmarks over XEP-0049
- XEP-0049: Private XML Storage
- XEP-0054: User Profile
- XEP-0055: Jabber Search
- XEP-0085: Chat State Notifications (partial)
- XEP-0092: Software Version
- XEP-0115: Entity Capabilities
- XEP-0124: Bidirectional-streams Over Synchronous HTTP (BOSH)
- XEP-0138: Stream Compression
- XEP-0153: vCard Based Avatars
- XEP-0172: User Nickname
- XEP-0198: Stream Management (not stream resumption)
- XEP-0258: Security Labels in XMPP
The next release of Swiften (2.0) will additionally support:
- XEP-0012: Last Activity
- XEP-0045: Multi-User Chat (administrative functions)
- XEP-0050: Ad-hoc Commands
- XEP-0106: JID Escaping
- XEP-0144: Roster Item Exchange
- XEP-0256: Last Activity in Presence
- XEP-0308: Last Message Correction
Licensing
Swiften if offered under both commercial licensing, from Isode, and under a GNU General Public License. Isode offers supports contracts for both commercial and GPL versions.
Supported Platforms
Swiften is supported on Windows, Linux and Apple's Mac OS X. For further details please see the page on supported platforms.

