1. Introduction
1.1. Overview
The Instant Messaging and Presence (IMPP) Working Group has defined
an abstract framework for interoperability among instant messaging
(IM) and presence systems that are compliant with [IMP-REQS]. This
framework is commonly called Common Presence and Instant Messaging or
"CPIM". The CPIM family of specifications include a Common Profile
for Instant Messaging [CPIM] (also called CPIM), a Common Profile for
Presence [CPP], a CPIM Message Format [MSGFMT], and a Common Presence
Information Data Format [PIDF]. (Note: To prevent confusion, Common
Presence and Instant Messaging is referred to herein collectively as
"the CPIM specifications", whereas the Common Profile for Instant
Messaging is referred to as "CPIM".)
This memo describes how the Extensible Messaging and Presence
Protocol ([XMPP-CORE], [XMPP-IM]) maps to the abstract model
contained in the CPIM specifications, mainly for the purpose of
establishing gateways between XMPP services and non-XMPP services
that conform to [IMP-REQS]. Such a gateway, referred to herein as an
"XMPP-CPIM gateway", may be established to interpret the protocols of
one service and translate them into the protocols of the other
service. We can visualize this relationship as follows:
+-------------+ +-------------+ +------------+
| | | | | |
| XMPP | | XMPP-CPIM | | Non-XMPP |
| Service | <----> | Gateway | <----> | Service |
| | | | | |
+-------------+ +-------------+ +------------+
This memo defines a mapping for use by a gateway that translates
between XMPP and a non-XMPP protocol via the CPIM specifications.
Such a gateway is not an intermediate hop on a network of non-XMPP
servers (whose native formats may or may not be defined by the CPIM
specifications), but a dedicated translator between XMPP and a
non-XMPP protocol, where the CPIM specifications define the common
formats into which the protocols are translated for purposes of
interworking.
The mapping defined herein applies to instant messages and presence
information that are not encrypted or signed for end-to-end security.
For information about secure communications to or from an XMPP
service through an XMPP-CPIM gateway, refer to [XMPP-E2E].
1.2. Terminology
This memo inherits vocabulary defined in [IMP-MODEL]. Terms such as
CLOSED, INSTANT INBOX, INSTANT MESSAGE, OPEN , PRESENCE SERVICE,
PRESENTITY, SUBSCRIPTION, and WATCHER are used in the same meaning as
defined therein.
This memo also inherits vocabulary defined in [XMPP-CORE]. Terms
such as ENTITY, NODE IDENTIFIER, DOMAIN IDENTIFIER, RESOURCE
IDENTIFIER, MESSAGE STANZA, and PRESENCE STANZA are used in the same
meaning as defined therein.
1.3. Conventions Used in this Document
The capitalized key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
"SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
[TERMS].