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 2.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-0012: Last Activity
- XEP-0004: Data Forms
- XEP-0030: Service Discovery
- XEP-0045: Multi-User Chat
- XEP-0048: Bookmarks over XEP-0049
- XEP-0049: Private XML Storage
- XEP-0050: Ad-hoc Commands
- XEP-0055: Jabber Search
- XEP-0085: Chat State Notifications (partial)
- XEP-0092: Software Version
- XEP-0106: JID Escaping
- XEP-0115: Entity Capabilities
- XEP-0124: Bidirectional-streams Over Synchronous HTTP (BOSH)
- XEP-0138: Stream Compression
- XEP-0144: Roster Item Exchange
- XEP-0153: vCard Based Avatars
- XEP-0154: User Profile (partial)
- XEP-0172: User Nickname
- XEP-0184: Message Delivery Receipts
- XEP-0198: Stream Management (not stream resumption)
- XEP-0206: XMPP Over BOSH
- XEP-0237: Roster Versioning
- XEP-0256: Last Activity in Presence
- XEP-0258: Security Labels in XMPP
- XEP-0308: Last Message Correction
Licensing
Swiften is 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.

