From 97da380acd8e3ba0c9a9618a99c4106eca1d1576 Mon Sep 17 00:00:00 2001 From: Evgeny Khramtsov Date: Wed, 8 Jan 2020 12:24:51 +0300 Subject: Generate ejabberd.yml.5 man page from source code directly Several documentation callbacks (doc/0 and mod_doc/0) are implemented and `ejabberdctl man` command is added to generate a man page. Note that the command requires a2x to be installed (which is a part of asciidoc package). --- src/mod_service_log.erl | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) (limited to 'src/mod_service_log.erl') diff --git a/src/mod_service_log.erl b/src/mod_service_log.erl index eca95cb2..ecd704dc 100644 --- a/src/mod_service_log.erl +++ b/src/mod_service_log.erl @@ -30,10 +30,10 @@ -behaviour(gen_mod). -export([start/2, stop/1, log_user_send/1, mod_options/1, - log_user_receive/1, mod_opt_type/1, depends/2]). + log_user_receive/1, mod_opt_type/1, depends/2, mod_doc/0]). -include("logger.hrl"). - +-include("translate.hrl"). -include("xmpp.hrl"). start(Host, _Opts) -> @@ -82,3 +82,26 @@ mod_opt_type(loggers) -> mod_options(_) -> [{loggers, []}]. + +mod_doc() -> + #{desc => + ?T("This module forwards copies of all stanzas " + "to remote XMPP servers or components. " + "Every stanza is encapsulated into " + "element as described in " + "https://xmpp.org/extensions/xep-0297.html" + "[XEP-0297: Stanza Forwarding]."), + opts => + [{loggers, + #{value => "[Domain, ...]", + desc => + ?T("A list of servers or connected components " + "to which stanzas will be forwarded.")}}], + example => + ["modules:", + " ...", + " mod_service_log:", + " loggers:", + " - xmpp-server.tld", + " - component.domain.tld", + " ..."]}. -- cgit v1.2.3