Install ejabberd on Windows 7 using Docker Toolbox

Did you read our previous tutorial how to install ejabberd on Windows 10 using Docker Desktop? Do you have a Microsoft system older than Windows 10? Don’t worry, instead of Docker Desktop you can use Docker Toolbox, and this tutorial guides you over the process.

Publish-Subscribe pattern and PubSub in ejabberd

Publish–Subscribe is a messaging pattern where senders of messages, called publishers, do not send the messages directly to specific receivers, called subscribers. Instead, publishers categorize messages into channels without knowledge of which subscribers, if any, there may be. Similarly, subscribers express interest in one or more channels and only receive messages that are of interest, […]

Install and configure MariaDB with ejabberd

By default, ejabberd uses the Mnesia internal database. It is great for home and small office environments, but in larger companies, as the amount of chat logs and users grows, we need more scalability. Today, I will show you how to install MariaDB, a MySQL-compatible database, migrate your data and configure ejabberd to use MariaDB […]

ejabberd 21.01

Six weeks after previous release, ejabberd 21.01 contains as usual several improvements and bugfixes. There are no changes required in the API, configuration or databases. Fixed sqlite3 dependency version erlang-sqlite3 versions got messed up, causing ejabberd build to regress to 1.1.6 from Jan 2018 when using rebar3 which fails to build with OTP23. Update to […]

ejabberd 20.12

We are pleased to announce ejabberd 20.12. This release, just in time for the New Year’s, includes several new features and many improvements & bugfixes. Most notably, ejabberd now works with the Microsoft ODBC Driver for the SQL Server support. With a new config option, sql_odbc_driver, you can explicitly specify the path to the ODBC […]

Jamler XMPP server, an OCaml experiment based on ejabberd 2.1.8

During the interview with Alexey Shchepin we had last week, the author of ejabberd mentioned Jamler. Did you notice? Jamler is an experimental XMPP server, developed mainly in 2011 as an attempt to rewrite ejabberd in OCaml. The goal was to see how static typing would affect ejabberd and its code originally written in Erlang, […]

Interview with Alexey Shchepin, creator of ejabberd

This month, ejabberd is 18 years old. On this occasion we talked with Alexey Shchepin, who created ejabberd in November 2002. Today, ejabberd is one of the most popular XMPP servers in the world, used by millions of people, devices and many big companies like Facebook, WhatsApp, or CCP Games (famous for the EVE Online […]

Happy 18th Birthday, ejabberd!

This month marks 18 years of ejabberd development. Alexey Shchepin started ejabberd in November 2002. Since then it has grown to a super-scalable and rock-solid real-time communication server.

Getting started with WebSocket API in ejabberd

The WebSocket API, as neatly explained by the MDN, is a technology that makes it possible to open a two-way interactive communication session between the user’s browser and a server. With WebSocket API, you can send messages to a server and receive event-driven responses without having to poll the server for a reply.

ejabberd 20.07

We are pleased to announce ejabberd 20.07. In addition to the usual fixes, this version adds support for Unix domain socket (aka IPC socket) which can be used to replace IP socket for any listener. As it’s more efficient than a network socket, this is the recommended endpoint to use if you have a proxy

Starting with MQTT protocol and ejabberd MQTT broker

Update January 2022: This tutorial is slightly out of date. In case of problems, please consult the corresponding section in the ejabberd documentation: MQTT Support. MQTT stands for Message Queuing Telemetry Transport. It is a simple and lightweight publish/subscribe messaging protocol: MQTT broker sends & relays messages to MQTT clients. It was designed for constrained […]

eturnal v1.0.0: say hello to a new STUN/TURN server

This is a guest post by Holger Weiß, the author of eturnal. Holger works as a professional server administrator at Freie Universität Berlin and operates the Conversations.im service (together with Daniel Gultsch). He’s a regular contributor to ejabberd and various other Open Source projects.

Check ejabberd XMPP server useful configuration steps

In this article I will share some configuration steps that I made while I was preparing my previous ejabberd XMPP server tutorials. I assume the starting ejabberd configuration from my article on setting up your ejabberd real time IM server and configuring ejabberd video & voice calling

How to configure ejabberd to get 100% in XMPP compliance test

Your ejabberd XMPP server is a powerful piece of software. But configuring everything requires several steps. Your best place to start is this hands-on ejabberd installation tutorial and this ejabberd STUN/TURN tutorial. If you have specific questions, first be sure to consult the official ejabberd documentation.