The command line option
--config file can be used to select a specific configuration file, otherwise the program tries to locate one.
When trying to locate a config files the following directories are searched (in this order):
All configuration values can be overridden by command line options.
The config file can be in one of the following formats:
For more details see http://www.boost.org/doc/libs/1_55_0/doc/html/boost_propertytree/parsers.html
default value Description
logContainer of the log settings
0If 1 shows some additional information on critical errors
ansi-utf8Output string encoding
[Y-m-d H:i:s]timestamp format, empty ⇒ no timestamps
logfileFile to use as log (Will still output to stdout as well)
verbositycontainer for verbosity level
2higher values ⇒ more log shown
servicesContainer for service set up
templates– Container for template definitions
bot– Bot definition, can contain:
Log types are defined by various modules
The template system allows to create complex handler with custom parameters.
Templates are defined in the templates top-level group. Their name is determined by the key used here.
They are required to have the type key, which specifies which handler type this template is going to become. (Most likely Group is the most useful).
Then it can contain anything allowed in a definition of the corresponding handler type.
In addition to the normal handler keys, template definitions allow to declare parameters, which will be replaced when the template is instantiated. Parameters are defined as simple keys whose name starts with @ their value (if any) will be used as default when not expressed by the instantiation.
All values containing those parameters (including the @) will be replaced to the correct values.
A template instantiation uses the same form as a handler instantiation with "Template" as type.
The require the key
template to be the name of the template to instantiate.
Then any parameter defined in the template can be assigned a value. Here parameters don't use the leading @.