Bidirectional-streams Over Synchronous HTTP (BOSH) used to transport XMPP stanzas. The result is an HTTP binding for XMPP communications that is useful in situations where a device or client is unable to maintain a long-lived TCP connection to an XMPP server.
Dialback is used between two (2) XMPP servers to provide identity verification. Server Dialback uses the Domain Name System (DNS) as the basis for verifying identity; the basic approach is that when a receiving server accepts a server-to-server connection from an initiating server, it does not process XMPP stanzas over the connection until it has verified the initiating server’s identity.
Federation is the method used by XMPP servers to connect to other XMPP server to allow users from one server to chat with users on other server.
Similar to how email works, federation allows you to communicate with any XMPP service that allows for remove connections (most).
The following diagram provides a high-level overview of this architecture (where
- represents communications that use XMPP).
C1 | C2---S1---C3 | | | C4---S2---C5 | C6
The symbols are as follows:
- C1, C2, C3, C4, C5, C6 = XMPP clients
- S1, S2 = XMPP servers
Another name for XMPP, the old name.
A users unique XMPP address, is called a JID (or for historical reasons, sometimes called a Jabber ID). The JID is structured like an email address with a username and a domain name (or IP address) for the server where that user resides, separated by an at sign
@, such as email@example.com.
A JID is the way different users contact each other.
A users XMPP presence indicates if a users is online, away, or offline.
A group of lines forming the basic recurring metrical unit in XML; like a verse in a poem.
One of the original design goals of the early Jabber open-source community was enabling users to connect to multiple non-XMPP messaging systems. This was done through transports or gateways.
An XMPP server provides basic messaging, presence, and XML routing features. This page lists Jabber/XMPP server software that you can use to run your own XMPP service, either over the Internet or on a local area network.