e0557b9e26
As per XEP-0313 >= 0.2, advertise the MAM feature in the service discovery information for the bare account JID. Some clients check the server's discovery information instead, so we'll continue to advertise the feature there as well (at least for the moment). |
||
---|---|---|
atom_pubsub | ||
ejabberd-dev | ||
ejabberd_auth_http | ||
ircd | ||
mod_admin_extra | ||
mod_archive | ||
mod_cron | ||
mod_log_chat | ||
mod_logsession | ||
mod_logxml | ||
mod_mam | ||
mod_message_log | ||
mod_muc_admin | ||
mod_muc_log_http | ||
mod_multicast | ||
mod_openid | ||
mod_post_log | ||
mod_profile | ||
mod_rest | ||
mod_s2s_log | ||
mod_shcommands | ||
mod_statsdx | ||
mod_webpresence | ||
.gitignore | ||
README-broken.md | ||
README.md | ||
extract-mod-translations.sh |
README.md
ejabberd-contrib
This is a collaborative development area for ejabberd module developers and users.
For users
To use an ejabberd module coming from this repository:
-
You need to have Erlang installed.
-
Read the module-specific
README.txt
file to see if special steps are required to deploy it. -
Run
./build.sh
orbuild.bat
in the root directory of the desired module. -
Copy generated
.beam
files from theebin
directory to the directory where your ejabberd.beam
files are. -
Use the configuration file examples provided in the
conf
dir to update yourejabberd.cfg
orejabberd.yml
configuration file.
If during compilation of a module you get an error like:
{"init terminating in do_boot",{undef,[{make,all,[]},...
it means Erlang couldn't find its make.beam
file. In Debian and other
distributions you can try to install packages like:
erlang-dev erlang-nox erlang-tools
For developers
The following organization has been set up for the development:
-
Development and compilation of modules should be possible without the ejabberd source code, as the
ejabberd-dev
helper module contains the include files necessary to make compilation possible. -
The module directory structure is usually the following:
README.txt
: Module description.LICENSE.txt
: License for the module.Emakefile
: Erlang Makefile to build the module (preferred way, if no dependencies on C code, as build will thus work on Windows).doc/
: Documentation directory.src/
: Source directory.src/msgs/
: Directory with translation files (pot, po and msg).ebin/
: Empty (target directory for the build).conf/
: Directory containing example configuration for your module.build.sh
: Unix/Linux build script.build.bat
: Windows build script.
-
Module developers should note in the
README.txt
file whether the module has requirements or known incompatibilities with other modules (for example, by modifying the same main ejabberd modules).