If you want to authenticate your users against an existing user database, and you found that ejabberd does not support that system, you can still write a custom 'external authentication script' and configure ejabberd to use that authentication method.
Available examples:
- The ejabberd source includes a simple example script.
- Script written in Python by dafyl. Not tested.
- Several contributed scripts.
Documentation for authentication script
Is there an actual documentation for the interfacing between erlang >= v2 and the authentication script?