// (this is now really outdated. I'll update it eventually) { "bot-token": "your bot token goes here", // this value is required "playing": "add some extra flair here", // optional // Server values are defined in the "servers" array. Multiple servers are supported. // Unless stated otherwise, all given values are not case sensitive. "servers": [ { "name": "RegexBot testing area", // Server name, as exists on Discord. "ignore": { // Server-wide ignore list. This entire section and its subsections are optional. // For the moment, only names are checked and it is assumed they will never change. // The user ignore list in particular should be considered highly unreliable. This will be fixed later. "users": [], "roles": [ "Bots" ], "channels": [] }, "rules": [ // Response rules are defined within this array. See the examples below. { "name": "Greeter", // Name of the rule, for logging purposes. Required. "regex": "^hello", // Regex string that will trigger this rule's response. Required. "response": [ // Array of responses. Required. "say #_ Hi @_." // "say" sends a message to a channel. // The first parameter (#_) is a reference to the channel where the response // is being triggered. The rest of the parameters are the text to use. The text // "@_" is replaced by the name of the user that triggered the response. ] }, { "name": "fishfish spam remover", "regex": "(fish)+", // Regex rules are not case sensitive by default, but can be overridden with this setting. "ignorecase": "false", // The next two statements ensure that the rule won't be enforced unless the message // is between 10 and 20 characters (inclusive) in length. "min": 10, "max": 20, "response": [ "delete", // Deletes the message that triggered the response. "report #modlog" // Quotes the message to the given channel. ] }, { "name": "Fun script thing", "regex": "^!fun", "ignore": { // Individual rules may define their own ignore lists. // It works in exactly the same way as the server-wide ignore list. "roles": [ "Anti-Fun Brigade" ] }, "response": [ // Executes an external script and sends output to the source channel. "exec #_ python ../fun.py" ] } ] } //, { // Another server may be defined here with its own set of rules. //} ] }