ejabberd-contrib 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" or "build.bat" in the root directory of the desired
module.
- Copy generated .beam files from the ebin directory to the directory
where your ejabberd .beam files are.
- Use the configuration file examples provided in the conf dir to
update your ejabberd.cfg or ejabberd.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: *nix 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).
Description
Languages
Erlang
98.7%
Ruby
0.9%
Elixir
0.2%
TSQL
0.2%