What Is XMPP (Extensible Messaging and Presence Protocol)? – POFTUT

What Is XMPP (Extensible Messaging and Presence Protocol)?


XMPP (Extensible Messaging and Presence Protocol ) is an open standard for messaging and presence. XMPP is the most popular open-source and open standard protocol for chat, video conference and presence. XMPP is the core protocol used in popular chat applications like ICQ, WhatsApp, Nimbuzz, etc.

XMPP Standard

XMPP is developed as an IETF standard. But the XMPP Standards Foundation developed extensions to XMPP in its XEP series. Here is the list of RFC’s used to define XMPP

  • `RFC 6120` is the core standard for XMPP and provides basic and fundamental processes for the XMPP.
  • `RFC 6121`is an extension to the core standard to provide useful features
  • `RFC 7622` defines address format for XMPP and obsoletes RFC 6122.

XMPP Standard History

XMPP has a long history which is around 20 year. Here we will provide some important point about XMPP history.

  • XMPP is created by Jeremie Miller in 1999 as a Jabber chat application
  • The Jabber Software Foundation which is the base for XMPP is founded in 2001
  • The IETF created standards with RFC’s for XMPP in 2004
  • XMPP based large and popular chat application Google Talk announced in 2006
  • Jabber Software Foundation is renamed as XMPP Standards Foundation in 2007
  • XMPP RFC updates RFC 6120 and 6121 published by IETF in 2011
  • XMPP over WebSocket RFC 7395 is published in 2015

XMPP Features

XMPP protocol and standard provide a lot of features and attributes. Here we will list some of the most important of them.

  • XMPP is a free, open, a public standard which can be implemented by everyone easily
  • XMPP is `standard` where it is the same for each implementation, server, and client. Most updated RFC’s are 6120, 6121, 7622
  • XMPP is `proven` because it is used by  a lot of applications by millions of peoples like Google Talk, Nimbuzz, etc
  • XMPP works as `decentralized` which is very suitable today it world and use cases.
  • XMPP is `secure` which uses SASL and TLS as builtin
  • XMPP is `extensible` with the help of XML and with XEP series a lot of dynamic features are added
LEARN MORE  How To Download and Install Windows Essentials?

XMPP Uses

XMPP is designed as chat applications but with its extensions and capabilities, it is used in different areas.

  • `IoT` is a popular area in IT and requires stable and standardized communication between nodes. XMPP can be used for different applications and IoT nodes.
  • `Online Gaming` is a popular topic in end users. XMPP is used in popular games like Nintendo Switch, EVE Online, Fortnite, Neverwinter, etc.
  • `Social` is the main area of the XMPP ad used a lot of popular projects like Google, Apple, etc.

XMPP Libraries

As XMPP is a reliable standard and popular protocol there are a lot of libraries and implementations about XMPP. These implementations vary from Go to JavaScript. Here are some of them.

  • Exlixir XMPP is implemented for Erlang language
  • Fluux XMPP is implemented for Go
  • gloox is implemented for C++
  • MatriX is implemented for .Net and C#
  • QXmpp is implemented for C++
  • Slixmpp is implemented for Python
  • Smack is implemented for Java
  • Stroke is implemented for Java
  • Strophe.js is implemented for JavaScript

XMPP Clients

With the popularity of its libraries, there are a lot of XMPP clients for different platforms like Linux, Windows Android, macOS, Browser, etc. Here we will list some of them.

Project Name Platforms
AstraChat Android / iOS / Linux / macOS / Windows
BeagleIM by Tigase, Inc. macOS
Bruno the Jabber™ Bear Android
Conversations Android
Converse Browser
Dino Linux
Gajim Linux / Windows
Jitsi Desktop Linux / macOS / Windows
JSXC Browser
Kaidan Android / Linux / Windows
Miranda NG Windows
Mozilla Thunderbird Linux / macOS / Windows
Poezio Linux / macOS
Profanity Linux / macOS / Windows
Psi Linux / macOS / Windows
Psi+ Linux / macOS / Windows
Pàdé Browser
Salut à Toi Android / Browser / Linux / Other
Simple IoT Client Windows
Siskin IM by Tigase, Inc. iOS
Spark Linux / macOS / Windows
Swift Linux / macOS / Windows
Tigase Messenger for Android Android
Xabber Android
Xabber-web Browser
yaxim Android
LEARN MORE  What Is Instant Messaging (IM)?

 

Leave a Comment