[ejabberd] ejabberd general questions

Badlop badlop at gmail.com
Wed Oct 19 22:30:07 MSD 2011

2011/10/19 Ben Bradley <batfastad at gmail.com>:
> 1) With our users authenticated by LDAP, I would also like to create a
> "roster" of all users that is shared amongst all users. But I don't want
> this roster to be based on any LDAP groups. We're a small organisation and
> I'd prefer to manage this manually.

See mod_shared_roster included in ejabberd, it does what probably you want.

> 2) Is it possible to add other users as well as those authenticated by LDAP
> so we run a sort of mixed mode. So some users with a matching jid pattern(s)
> are passed to the LDAP server and others use an alternate auth mechanism
> (mysql back-end)?

It's possible to configure: "first try LDAP, if that refuses user,
then try ODBC":
{auth_method, [ldap, odbc]}.

Another tricky solution would be to have two vhosts, like:
{hosts, ["host1.example.org", "host2.example.org"]}.
Then configure host1 to use LDAP auth, and only accept certain JIDs,
and configure host2 to use ODBC auth, and only accept certain other JIDs.

> 3) Create a web service to output the presence status of all users on the
> system. I'd like to display the presence of XMPP users on our intranet (and
> possibly store historic presence changes in a DB). What's the best way of
> doing this? Some sort of global roster?
> Or a fake user that receives additional presence notifications from all
> other users and records this info?

http://www.ejabberd.im/mod_webpresence has XML output.
With some wget, cron and shell scripting you can do whatever you want.

> 4) Log XMPP chat messages sent through the server to a database. This would
> be useful to give the user an interface on our intranet to view/search their
> chat logs so they don't have to rely on the XMPP client's logging. I had a
> look at bandersnatch but it looks like that project's no longer in
> development. Are there any alternatives that are recommended for use with
> the current version of ejabberd?

There are several logging modules listed in

Jorge is a frontend to mod_logdb

As you can see, I enumerate but I don't valorate them because I didn't
use them myself.


More information about the ejabberd mailing list