ejabberd XMPP server with built-in MQTT server and SIP server

Robust, Scalable and Extensible Realtime Platform
XMPP Server + MQTT Broker + SIP Service

Download ejabberd Latest news

Latest
Version

ejabberd XMPP Server is a Rock Solid, Massively Scalable,
Infinitely Extensible Realtime Platform

Modern

  • Multi-protocol support:
    XMPP server, MQTT broker and SIP service
  • Backend integration with REST API and ejabberdctl command-line tool
  • Mobile libraries for iOS: XMPPFramework
  • Mobile libraries for Android: Smack, Retrofit
  • Web library with WebSocket support and fallback to BOSH support: Strophe
  • Open Source software: GitHub

Fault-Tolerant

  • Runs in a cluster out of the box
  • All nodes are active: platform built on top of ejabberd XMPP server supports fault tolerance mechanisms
  • Upgradable while it is running: unmatched uptime
  • No message lost: for each message, the XMPP server checks the status of delivery with an acknowledgment provided by the mobile app
  • Mobile network disconnections managed at XMPP server level

Massively Scalable

  • Massive concurrency: 2 000 000 users on 1 node
  • Cluster with consistent hashing to get rid of data replication, resulting in more effective approach in internode communications
  • Memory reduction of the data kept in memory for each connected user
  • PubSub broadcast optimisation with reduction of internal data transfer in cluster setup


Manageable

ejabberd XMPP server comes with a very powerful command-line tool that allows controlling most of the aspects of the server. Most common operations can be automated to make it a pleasure for admins to work with.

Highly Versatile

ejabberd XMPP server offers many customization hooks to adapt it easily to various use cases. This makes it the server of choice no matter which area you are working in: mobile messaging, gaming, internet of things (IoT), it can do it all. With built-in MQTT server and SIP server ejabberd is a true realtime platform.

Very Modular

ejabberd XMPP server code is extremely modular and can be extended through a powerful API. Contributors are using the API to provide tens of third-party extensions to ejabberd to enhance and tailor its behavior.



A Solid Choice

1

Fully Open Source

Everyone has the freedom to use and customize the ejabberd XMPP server code, according to the GPLv2 license.

2

Secure

Best practices are baked right into the server. Secure code runs in a trusted environment, with all SSL / TLS encryption best practices.

3

Flexible

ejabberd XMPP server offers a full API to write your custom plugins and modify the server so that it works exactly as you wish, with a minimal amount of code.

4

Interoperable

ejabberd is compliant with the XMPP, MQTT and SIP standards and most of the available extensions. It can be leveraged with all the available XMPP, MQTT and SIP clients and libraries and can federate with other servers.

5

Professionally Maintained

Professional release engineers manage the ejabberd XMPP server release cycle, QA the full stack, and keep APIs stable. The core team has impressive credentials and 16 years of Erlang development under their belt.

6

Warm & Welcoming

ejabberd XMPP server has a helpful, kind, and supportive community that spans the globe. ejabberd's mission is to empower everyone to use and build services on top of the XMPP, MQTT and SIP protocols.

Videos

YouTube

Deep Dive Into ejabberd Pubsub Implementation

Christophe Romain goes into the details of ejabberd Pubsub implementation. He explains the Pubsub plugin systems and how to leverage it to optimize ejabberd Pubsub for your own use cases.

YouTube

Property-based testing of XMPP: generate your tests automatically

The talk explains how Quickcheck testing approach can help find bugs in ejabberd XMPP server and improved the range (and the creativity) of the test cases covered.

YouTube

Web Push Notifications with Websockets - SeaBeyond 2014

Christophe Romain talks about websockets at SeaBeyond 2014.