[AB-73] adding different feature modes to define whether or not certain actions should be logged, changing name of setup, disable and enable command to show that they are supposed to be for features

This commit is contained in:
Sheldan
2020-10-17 16:26:02 +02:00
parent 44dfdca6e6
commit 1b98436736
53 changed files with 525 additions and 165 deletions

View File

@@ -3,8 +3,8 @@
The core feature contains necessary commands in order for Abstracto to function and be configured.
==== Emotes
* reaction emote in case the command completed successfully `successReaction`
* reaction emote in case the command did not complete successfully `warnReaction`
* `successReaction` reaction emote in case the command completed successfully
* `warnReaction` reaction emote in case the command did not complete successfully
==== Commands
Help::
@@ -43,13 +43,13 @@ Listing the features::
* Usage: `features`
* Description: Lists the available features and whether or not they are enabled in this server.
Enabling a feature::
* Usage: `enable <key>`
* Usage: `enableFeature <key>`
* Description: Enables the feature identified by `key` in this server. If the feature dependents on other features, they will be enabled as well.
* Example: `enable moderation` to enable the moderation feature
* Example: `enableFeature moderation` to enable the moderation feature
Disabling a feature::
* Usage: `disable <key>`
* Usage: `disableFeature <key>`
* Description: Disables the feature identified by `key` in this server. If the feature is required for other features, they will be disabled as well.
* Example: `disable moderation` to disable the moderation feature
* Example: `disableFeature moderation` to disable the moderation feature
Creating a channel group::
* Usage: `createChannelGroup <key>`
* Description: Creates a new channel group identified by `key`.
@@ -112,7 +112,7 @@ Listing all feature modes::
* usage `featureModes [feature]`
* Description: Lists all of the currently available feature modes and the feature they are associated with. If `feature` is given, it only lists the feature modes of this feature. The output also includes whether or not the current mode is enabled and if this value comes from the default configuration.
Setting up a feature with an interactive wizard::
Usage: `setup <featureName>`
Usage: `setupFeature <featureName>`
* Description: Starts an interactive wizard to configure the necessary properties and post targets of a feature. Also includes custom steps. Closes with a summary page to see all changes.

View File

@@ -6,6 +6,10 @@ Feature key: `moderation`
`banLog`:: target of the log message containing information about the ban for both `ban` and `banId`. Will still ban if not setup.
`kickLog`:: target of the log message containing information about the kick. Will still kick if not setup.
==== Feature modes
`banLogging`:: if enabled, log bans to the post target `banLog`. Enabled by default.
`kickLogging`:: if enabled, log bans to the post target `kickLog`. Enabled by default.
==== Commands
Ban a member::
* Usage: `ban <member> [reason]`
@@ -42,8 +46,13 @@ This feature can be used to warn specific users if they did something not allowe
Feature key: `warnings`
==== Post targets
`warnLog`:: target of the log message containing information about the warn.
`decayLog`:: Will be used when all the warnings are decayed by a command and logging has been selected.
`warnLog`:: target of the log message containing information about a created warn, only used if feature mode `warnLogging` is enabled.
`decayLog`:: will be used when all the warnings are decayed by `decayAllWarnings` and feature mode `warnDecayLogging` is enabled.
==== Feature modes
`warnLogging`:: if enabled, each warn is logged to the post target `warnLog`. Enabled by default.
`automaticWarnDecayLogging`:: if enabled, warn decays by `decayAllWarnings` are logged to the post target `decayLog`. Enabled by default.
==== Commands
Warn a user::
@@ -59,9 +68,8 @@ Showing your warnings::
* Usage: `myWarnings`
* Description: Displays the amount of warnings of the user executing on the server. This will show both active and total warnings.
Decaying all warnings regardless of the date::
* Usage: `decayAllWarnings [writeLog]`
* Description: This will cause all warnings of this server which are not decayed yet to be decayed instantly. If this command should log the decaying of the warnings
the `writeLog` parameter needs to be `true`.
* Usage: `decayAllWarnings`
* Description: This will cause all warnings of this server which are not decayed yet to be decayed instantly.
Deleting a warning::
* Usage: `deleteWarning <warnId>`
* Description: Deletes the warning identified by `warnId` completely from the database.
@@ -79,6 +87,9 @@ Feature key: `warnDecay`
==== Post targets
`decayLog`:: target of the log message containing the information in case a warning is decayed.
==== Feature modes
`automaticWarnDecayLogging`:: if enabled, automatic warn decays are logged to the `decayLog` post target. Enabled by default.
==== Commands
Decaying all warnings if necessary::
* Usage: `decayWarnings`
@@ -95,6 +106,12 @@ Feature key `muting`
==== Post targets
`muteLog`:: target of log message containing the information in case a member was muted and when the mute ended automatically.
==== Feature modes
`muteLogging`:: if enabled, each mute is to be logged to the post target `muteLog`. Enabled by default.
`unMuteLogging`:: if enabled, each un mute which happens 'naturally' (after the defined time period is over) will be logged to the `muteLog` post target. Enabled by default.
`manualUnMuteLogging`:: if enabled, each un mute which happens via the command `unmute` will be logged to the `muteLog` post target. Enabled by default.
==== Commands
Muting a user::
* Usage: `mute <member> <duration> [reason]`

View File

@@ -26,11 +26,11 @@ Feature key: `modmail`
`modmailLog`:: Will be used to log the interactions when a thread is closed.
==== Feature modes
`log`:: If this is enabled, the messages should be logged into the `modmailLog` post target when the thread is closed (by the respective commands). This is required for the command `closeNoLog` to be available.
`log`:: If this is enabled, the messages should be logged into the `modmailLog` post target when the thread is closed (by the respective commands). This is required for the command `closeNoLog` to be available. Enabled by default.
==== Emotes
* to indicate to the user that the message sent was processed `readReaction`
* `readReaction` to indicate to the user that the message sent was processed
==== Commands
Opening a mod mail thread for a user::

View File

@@ -29,16 +29,14 @@ When the poster of the message reacts to the message with a star, this is not co
Feature key: `starboard`
==== Emotes
* to vote on posting something to starboard: `star`
* for the different level of starboard posts:
** Level 1: `star1`
** Level 2: `star2`
** Level 3: `star3`
** Level 4: `star4`
* as badges in the `starStats` command:
** First place: `starboardBadge1`
** Second place: `starboardBadge2`
** Third place: `starboardBadge3`
* `star` to vote on posting something to starboard
* `star1` for level 1 of starboard
* `star2` for level 2 of starboard
* `star3` for level 3 of starboard
* `star4` for level 4 of starboard
* `starboardBadge1` used as marker for first place in the command `starStats`
* `starboardBadge2` used as marker for first place in the command `starStats`
* `starboardBadge3` used as marker for first place in the command `starStats`
==== Relevant system configuration
@@ -68,8 +66,8 @@ Feature key: `suggestion`
`suggestions`:: the target of the messages containing the suggestions
==== Emotes
* for up-voting a suggestion: `suggestionYes`
* for down-voting a suggestion: `suggestionNo`
* `suggestionYes` for up-voting a suggestion
* `suggestionNo` for down-voting a suggestion
==== Commands
Creating a suggestion::
@@ -110,7 +108,7 @@ Displaying information about server::
=== Link embeds
==== Emotes
* to remove the embed of a link: `removeEmbed`
* `removeEmbed` to remove the embed of a link
This feature enables the automatic embedding of messages containing a message link.
If a message contains a link to a discord message this will create an embed containing the the message content. This supports image attachments, but not videos or files.