ejabberd configuration that enables many modern XMPP and TLS features.

ejabberd config file from schokokeks.org

We recently put some effort into enabling many modern XMPP features on our ejabberd server at schokokeks.org. We figured out that it's often nontrivial to find out what option corresponds to what XEP. Therefore we're sharing our config:


This config file enables:

In all cases we added a comment indicating the XEP number.

Broken PEP / XEP-0163

Sometimes Conversations complains that XEP-0163 is "broken". This can mean that the pubsub database is corrupted due to an update from a previous ejabberd version.

We successfully fixed this by deleting the pubsub database. A new database gets automatically generated and clients usually re-upload previously pushed pubsub data. Simply delete all pubsub_* files in the ejabberd spool directory (usually /var/spool/ejabberd).

Push / XEP-0357

Ejabberd currently contains no support for Push / XEP-0357, which is part of the XMPP Compliance Suites 2016.

There is an experimental push module on Github, but it hasn't seen any updates for quite a while and needs a specific branch of ejabberd. Therefore it is currently not easily possible to get Push support in ejabberd.