[AB-240] changing invite filter to actively filter the server instead of only being based on the code

moving invite filter to separate module
updating to newer liquibase version
changing concept of immune roles which are directly associated to commands to immune roles which are immune against certain effects. these effects can be configured directly by the command (and a condition checks this effect), but they can be used in services as well, unrelated to commands
adding checks to not execute message received listeners for the wrong message types
adding metric support for 502 status
fixing duplicating help entries when two module definitions with the same key are present
This commit is contained in:
Sheldan
2021-05-10 20:45:34 +02:00
parent 9ae35a7e9d
commit e31d257e6f
389 changed files with 21069 additions and 18187 deletions

View File

@@ -98,13 +98,16 @@ Forbidding a role to execute a command::
* Description: Removes the `role` from the list of allowed roles for all commands in the `feature`/the `command`.
* Example: `disAllowRole moderation @Staff` to forbid the role `Staff` to execute all commands in the `moderation` feature (where @Staff is a role mention)
Make a role affected by a command::
* Usage: `makeAffected <featureName|commandName> <role>`
* Description: Makes the role affected by all commands in the `feature`/the `command`.
* Example: `makeAffected ban @Staff` in order so the role `Staff` can be banned via the command (where @Staff is a role mention)
* Usage: `makeAffected <effect> <role>`
* Description: Makes the `role` affected by the `effect`.
* Example: `makeAffected ban @Staff` in order so the role `Staff` can be banned (where @Staff is a role mention)
Make a role immune against a command::
* Usage: `makeImmune <featureName|commandName> <role>`
* Description: Makes the role immune from all commands in the `feature`/the `command`.
* Example: `makeImmune ban @Staff` in order so the role `Staff` cannot be banned via the command (where @Staff is a role mention)
* Usage: `makeImmune <effect> <role>`
* Description: Makes the `role` immune to `effect`.
* Example: `makeImmune ban @Staff` in order so the role `Staff` cannot be banned (where @Staff is a role mention)
Show all effects::
* Usage: `showEffects`
* Description: Shows the currently possible effects and a short description of them.
Enforce the role restrictions of commands::
* Usage: `restrict <featureName|commandName>`
* Description: Causes the role restrictions for a all commands in the `feature`/the `command` to be in effect again.
@@ -190,16 +193,6 @@ Setting the global cooldown for a command::
* Usage: `commandCoolDownServer <command> <duration>`
* Description: Sets the cooldown for command `command` to `duration` for the whole server.
.What does it mean if a role is immune?
A command can take a member as a target, for example `ban`. If a role is considered immune, this means, if the member which is the target of the command has the given role, this command will fail. Not all commands support this feature, but only the following:
* Ban
* Kick
* Warn
* Mute
While a role can be made immune for any command, only these commands actually use this information.
.What is a feature mode?
A feature mode is a very specific way in which a feature behaves for a certain decision. These feature modes can be defined for each server and are directly bound to a feature.
These feature modes influence the availability of commands or general behavior of features.