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 […]

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.

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 […]

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.

Using a local development trusted CA on MacOS

TLS certificates are so ubiquitous that you now very often need them even during the development phase. Developers are thus used to create “self-signed” certificates and configure their client requiring TLS support to accept self-signed certificates. This can be fine for development: As both the client and the server are on the same computer, the […]

How to use ejabberd as an Elixir application dependency

Starting from version 16.02, ejabberd is packaged as an Hex.pm application: ejabberd on hex.pm. In case of doubt, you can refer to ejabberd official documentation: Embedding ejabberd in an Elixir application It means that you can now build a customized XMPP messaging platform with Elixir on top of ejabberd. You do so by leveraging ejabberd […]

Embedding ejabberd into an Elixir Phoenix Web application

By combining Elixir powerful web framework with ejabberd realtime messaging platform, you can build extremely powerful applications. This tutorial will help you get started. Here is the screencast showing the whole process. Please read further for detailed step-by-step description and code. Create a Phoenix application The first step is to create your Phoenix application as […]

Elixir Sips: ejabberd with Elixir – Part 2

Elixir Sips is an Elixir screencast website providing great tutorials to learn Elixir but also to help you build extraordinary pieces of code quickly with Elixir. They produced a great series of videos on programming ejabberd with Elixir. In the first part of that tutorial, you have learned how to set up Elixir support in […]

Elixir Sips: ejabberd with Elixir – Part 1

Elixir Sips is an Elixir screencast website providing great tutorials to learn Elixir but also to help you build extraordinary pieces of code quickly with Elixir. They produced a great series of videos on programming ejabberd with Elixir. Here is the material for the first part. We will publish more material on ProcessOne blog soon. […]