Growing and curated ejabberd contributions repository - PR or ask to join !
Go to file
Christophe Romain 4c68f4421b Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
atom_pubsub Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
ejabberd_auth_http Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
extra Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
ircd Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_admin_extra Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_archive Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_cron Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_log_chat Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_logsession Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_logxml Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_mam Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_message_log Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_muc_admin Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_muc_log_http Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_multicast Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_openid Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_post_log Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_profile Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_rest Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_s2s_log Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_shcommands Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_statsdx Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
mod_webpresence Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
.gitignore Ignore .beam files 2014-03-14 11:47:54 -05:00
README-broken.md Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00
README.md Cleanup for module packaging support in ejabberd 2015-03-11 14:19:35 +01:00

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 Ejabberd installed.

  • Run ejabberdctl install <module> to get the sources, compile and install the beams file in ejabberd path. This path is either ~/.ejabberd-modules or defined by CONTRIB_MODULES_PATH in ejabberdctl.cfg.

  • Edit the configuration file provided in the conf dir of the installed module to update to your needs. Then apply the changes to your main ejabberd configuration. On future release, ejabberd will automatically add this file to its runtime configuration without changes.

  • Run ejabberdctl uninstall <module> to remove a module from your ejabberd.

For developers

The following organization has been set up for the development:

  • Development and compilation of modules is done by ejabberd. You need Ejabberd installed. Use ejabberdctl check_module <module> to ensure it compiles correctly before commit your work. Sources of your module must be located in $CONTRIB_MODULES_PATH/sources/

  • The module directory structure is usually the following:

    • README.txt: Module description.
    • COPYING: License for the module.
    • doc/: Documentation directory.
    • src/: Erlang source directory.
    • lib/: Elixir source directory.
    • priv/msgs/: Directory with translation files (pot, po and msg).
    • conf/<module>.yml: Configuration for your module.
    • <module>.spec: Yaml description file for your module.
  • Module developers should note in the README.txt file whether the module has requirements or known incompatibilities with other modules.