This is an old revision of the document!
Message handlers perform an action when a message matches the conditions that trigger the handler.
Note that all handler classes start with a capital letter.
See Modules for a list of concrete handlers.
Base class for all handlers.
0– Priority for messages generated by the handler
0the handler will be completely ignored from the config.
Base class for all handler triggered by a fixed string at the beginning of the message.
true– Whether the reply shall be given visible by everyone (otherwise only to the user triggering the handler)
false– Whether the handler is triggered only from messages explicitly directed to the bot or can be triggered by any message. (Examples of direct messages on IRC are private messages or channel messages beginning with the IRC bot name)
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 @.
To make some things easier, connections can be defined wherever a handler can. Of course Connections are not affected by groups or other handler-specific settings.