ejabberd

Realtime communication platform providing XMPP server, MQTT broker, and SIP service capabilities for scalable messaging.

ejabberd is an open-source, self-hosted realtime communication platform. It functions as a server that provides XMPP server, MQTT broker, and SIP service capabilities to handle scalable messaging and communication tasks. The software manages the routing and delivery of messages across various protocols to facilitate instant communication between users and devices.

The software is deployed as a server application and can be installed via source code, OS package managers, Homebrew, or Docker containers. It supports various architectures including x64 and arm64, allowing it to run in diverse environment settings from local servers to cloud infrastructure. Administrators manage the server using the ejabberdctl command line tool and a YAML configuration file to define system behavior and user permissions.

Key features

  • XMPP server for instant messaging
  • MQTT broker for IoT and machine-to-machine communication
  • SIP service for VoIP and session management
  • Support for multiple installation methods including Docker and OS packages
  • Extensible architecture built on Erlang/OTP
  • Support for group chat and pubsub patterns
  • Integration with STUN and TURN for connectivity
  • Multi-platform compatibility for x64 and arm64 architectures

Built using Erlang/OTP, the platform is designed for high concurrency and scalability, leveraging the Erlang runtime to handle thousands of simultaneous connections. It is intended for developers and system administrators who need to implement messaging infrastructure, IoT communication hubs, or VoIP services. The system supports a wide range of protocols and XEPs to ensure interoperability within the XMPP ecosystem, allowing it to connect with various clients and other servers. The architecture allows for extensions, enabling the addition of custom functionality to the messaging pipeline.

ejabberd serves as a foundational infrastructure component for organizations requiring a scalable, standards-based communication backend.

Last Modified
Software TypeWeb App / Server
Platform
Last Activity17 days ago
Repository Age16 years
LicenseGPL-2.0
Open Source Alternative to
Open Source Software.io

Join our newsletter to get shiny new open source software delivered to your inbox. Unsubscribe anytime.