Smack Extensions Manual

The XMPP protocol includes a base protocol and many optional extensions typically documented as "JEP'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

NameJEP #Description
Private Data JEP-49 Manages private data.
XHTML Messages JEP-71 Allows send and receiving formatted messages using XHTML.
Message Events JEP-22 Requests and responds to message events.
Data Forms JEP-4 Allows to gather data using Forms.
Multi User Chat JEP-45 Allows configuration of, participation in, and administration of individual text-based conference rooms.
Roster Item Exchange JEP-93 Allows roster data to be shared between users.
Time Exchange JEP-90 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 JEP-30 Allows to discover services in XMPP entities.
File Transfer JEP-96 Transfer files between two users over XMPP.