Extensible Messaging and Presence Protocol, or XMPP, is an open, XML-based protocol for near real-time extensible messaging and presence events. It is the core protocol of the Jabber Instant Messaging and Presence technology which is currently deployed on thousands of Jabber servers across the Internet and is used by millions of people worldwide. The IETF XMPP working group aims to adapt the XMPP for use as an IETF Instant Messaging and presence technology.
Specifications
The IETF XMPP working group has produced a number of RFCs:
RFC 3921, Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence describes instant messaging (IM), the most common application of XMPP.
RFC 3922, Mapping the Extensible Messaging and Presence Protocol (XMPP) to Common Presence and Instant Messaging (CPIM) relates XMPP and the Common Presence and Instant Messaging (CPIM) specifications.
RFC 3923, End-to-End Signing and Object Encryption for the Extensible Messaging and Presence Protocol (XMPP) describes end to end encryption of XMPP messages using S/MIME. Conflicting this proposal, many clients currently use GPG for encrypting messages.
While XMPP provides a generalized, extensible framework for exchangingXML data, it is used mainly for the purpose of building instantmessaging and presence applications that meet the requirements of RFC 2779." The XMPP Core specification "includes guidelines to ensure that extensions are possible without conflicts or breaking core interoperability.
This document describes the specific extensions to and applications of XMPP Core that are used to create the basic functionality expected of an instantmessaging and presence application as defined in RFC 2779.
XMPP is the core protocol used in the popular Jabber open source and Jabber, Inc. commercial instantmessaging systems and is the result of the collaborative efforts of a worldwide group of software architects, developers and companies that comprise the Jabber community.