From 606b1d1b5233a2261ea8722edbb54ee81d905b19 Mon Sep 17 00:00:00 2001
From: Badlop
Examples:
{language, "es"}.
+======= +<language>.msg in ejabberd’s msgs directory.
For example, to set Russian as default language: +
{language, "ru"}. +
Appendix A provides more details about internationalization and localization.
+The option include_config_file in a configuration file instructs ejabberd to include other configuration files immediately.
The basic usage is: +
{include_config_file, <filename>}. +
It is also possible to specify suboptions: +
{include_config_file, <filename>, [<suboption>, <suboption>, ...]}. +
The filename can be indicated either as an absolute path, +or relative to the main ejabberd configuration file. +It isn’t possible to use wildcards. +The file must exist and be readable.
The allowed suboptions are: +
This is a basic example: +
{include_config_file, "/etc/ejabberd/additional.cfg"}. +
In this example, the included file is not allowed to contain a listen option. +If such an option is present, the option will not be accepted. +The file is in a subdirectory from where the main configuration file is. +
{include_config_file, "./example.org/additional_not_listen.cfg", [{disallow, [listen]}]}. +
In this example, ejabberd.cfg defines some ACL and Access rules, +and later includes another file with additional rules: +
{acl, admin, {user, "admin", "localhost"}}. +{access, announce, [{allow, admin}]}. +{include_config_file, "/etc/ejabberd/acl_and_access.cfg", [{allow_only, [acl, access]}]}. +
and content of the file acl_and_access.cfg can be, for example: +
{acl, admin, {user, "bob", "localhost"}}. +{acl, admin, {user, "jan", "localhost"}}. ++
In the ejabberd configuration file, +it is possible to define a macro for a value +and later use this macro when defining an option.
A macro is defined with this syntax: +
{define_macro, '<MACRO>', <value>}. +
The MACRO must be surrounded by single quotation marks, +and all letters in uppercase; check the examples bellow. +The value can be any valid arbitrary Erlang term.
The first definition of a macro is preserved, +and additional definitions of the same macro are forgotten.
Macros are processed after +additional configuration files have been included, +so it is possible to use macros that +are defined in configuration files included before the usage.
It isn’t possible to use a macro in the definition +of another macro.
There are two ways to use a macro: +
{define_macro, '<MACRO>', <defaultvalue>}. +'<MACRO>' +
This example shows the basic usage of a macro: +
{define_macro, 'LOG_LEVEL_NUMBER', 5}. +{loglevel, 'LOG_LEVEL_NUMBER'}. +
The resulting option interpreted by ejabberd is: {loglevel, 5}.
This example shows that values can be any arbitrary Erlang term: +
{define_macro, 'USERBOB', {user, "bob", "localhost"}}. +{acl, admin, 'USERBOB'}. +
The resulting option interpreted by ejabberd is: {acl, admin, {user, "bob", "localhost"}}.
This complex example: +
{define_macro, 'NUMBER_PORT_C2S', 5222}. +{define_macro, 'PORT_S2S_IN', {5269, ejabberd_s2s_in, []}}. +{listen, + [ + {'NUMBER_PORT_C2S', ejabberd_c2s, []}, + 'PORT_S2S_IN', + {{use_macro, 'NUMBER_PORT_HTTP', 5280}, ejabberd_http, []} + ] +}. +
produces this result after being interpreted: +
{listen, + [ + {5222, ejabberd_c2s, []}, + {5269, ejabberd_s2s_in, []}, + {5280, ejabberd_http, []} + ] +}. ++
+>>>>>>> d106311... * doc/guide.tex: Provide only an example of language option:doc/guide.html
ejabberd uses its internal Mnesia database by default. However, it is
possible to use a relational database or an LDAP server to store persistent,
diff --git a/doc/guide.tex b/doc/guide.tex
index dacb2b915..a4d0996b5 100644
--- a/doc/guide.tex
+++ b/doc/guide.tex
@@ -1389,17 +1389,10 @@ can be seen by \Jabber{} clients. If a \Jabber{} client do not support
\term{en}. In order to take effect there must be a translation file
\term{