Smack Extensions Manual

The XMPP protocol includes a base protocol and many optional extensions typically documented as "XEP's". Smack provides the org.jivesoftware.smack package for the core XMPP protocol, and the org.jivesoftware.smackx package for many of the protocol extensions.

This manual provides details about each of the "smackx" extensions, including what it is, how to use it, and some simple example code.

Current Extensions

NameXEP #Description
Private Data XEP-0049 Manages private data.
XHTML Messages XEP-0071 Allows send and receiving formatted messages using XHTML.
Message Events XEP-0022 Requests and responds to message events.
Data Forms XEP-0004 Allows to gather data using Forms.
Multi User Chat XEP-0045 Allows configuration of, participation in, and administration of individual text-based conference rooms.
Roster Item Exchange XEP-0093 Allows roster data to be shared between users.
Time Exchange XEP-0090 Allows local time information to be shared between users.
Group Chat Invitations N/A Send invitations to other users to join a group chat room.
Service Discovery XEP-0030 Allows to discover services in XMPP entities.
File Transfer XEP-0096 Transfer files between two users over XMPP.
PubSub XEP-0060 Generic publish and subscribe functionality.
Entity Capabilities XEP-0115 Broadcasting and dynamic discovery of entity capabilities.
Privacy Lists XEP-0016 Enabling or disabling communication with other entities.
HTTP over XMPP transport XEP-0332 Allows to transport HTTP communication over XMPP peer-to-peer networks.
Jive Properties N/A TODO