Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs/moderation: document moderation page #16

Merged
merged 2 commits into from
Mar 25, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
105 changes: 105 additions & 0 deletions content/moderation/moderation/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
+++
archetype = "chapter"
title = "Moderation"
weight = 1
+++

Everything in moderation, including moderation.
l-zeuch marked this conversation as resolved.
Show resolved Hide resolved

<!--more-->

![Overview of the moderation page](overview_moderation.png)

<center>

**1** Mod Log Channel **2** Report Channel **3** Moderation DM Error Channel **4** Clean Command **5** Report
Command **6** Unban Logging **7** Giverole/Takerole commands **8** Give/Takerole Permitted Roles **9**
Give/Takerole Logging **10** Foreign Ban Logging **11** Foreign Kick Logging **12** Foreign Timeout Logging **13**
Moderation Tabs **14** Bot Permissions Notice

</center>

## Moderation Page

The moderation page allows configuration of common settings.

### Mod Channels

1. **Mod Log** - The mod log is the channel YAGPDB will send log messages to when most moderation commands are used. It
includes username and user ID of both the moderator, and the moderated user. It additionally includes the reason for
relevant commands (defaults to `<no reason provided>` when not provided), and a [log](/moderation/logging) of the
channel where the command was run.
2. **Report** - The channel for YAGPDB to send report messages to when users use the report command. Similar to the mod
log, it includes username and user ID of the user reporting, and the user reported, as well as the reason and message
log of the channel.
3. **Moderation DM Error** - The channel where YAGPDB will send error messages from executing template script within
[moderation DMs](#moderation-dms).

### Command Toggles

Certain potentially destructive moderation commands are disabled by default. These commands are:

- The **clean command** (**4**) toggles the [clean command](/commands/all-commands#clean).
- The **report command** (**5**) toggles the [report command](/commands/all-commands#report).
- **Giverole/Takerole commands** (**7**) toggle the [giverole](/commands/all-commands#giverole) and
[takerole](/commands/all-commands#takerole) commands.

### Unban/Unmute Logging

When the `unban`/`unmute` commands are used, YAGPDB will log their usage to the [mod log](#mod-channels) similarly to
the other moderation commands, except without the logs.

When using the `ban` and `mute` commands with a duration, YAGPDB will essentially execute the inverse commands as itself
at the end of the duration. i.e, if you execute `ban @user 1d`, YAGPDB will ban the user, and 1 day later YAGPDB will
execute the `unban` command with reason "Timed ban expired." This action appears in the mod log as YAGPDB being the
moderator.

Toggling Unban Logging (**6**) allows you to enable or disable the logging of Unmute events.

Toggling Give/Takerole Logging (**9**) allows you to enable or disable the logging of Give/Takerole events.

### Foreign Logging

By default, YAGPDB will only log actions it takes, i.e. if you kick a user with the bot's `kick` command, it will log
it, but not if you kick the user directly with user. Enabling foreign logging for different moderation actions (**10**),
(**11**), (**12**) allows the bot to use the server Audit Log to retrieve moderation actions taken by other bots or
other users.

YAGPDB must have View Audit Log permissions to use this feature.

## Permissions Notice

The moderation plugin, among other plugins, requires additional permissions to function properly. The notice at the top
of the screen (**14**) will inform you of the required permissions for the plugin and alert you if the bot is missing
permissions.

## Moderation Commands

Each of the main moderation commands have individual configuration pages, accessible through the tabs (**13**). There
are common configuration options worth mentioning.

![Common Moderation Configuration](common_moderation_settings.png)

<center>

**1** Permitted Roles **2** Moderation DM

</center>

### Permitted Roles

Selecting permitted roles will allow said roles to run the moderation command **even if** they do not have
required Discord permissions.

Give/Takerole Permitted Roles (**8**) operate in the same way.

### Moderation DMs

Moderation DMs are template scripts which are executed within the offending user's DM. Text output to the response will
be directly sent to the offending user.

Any errors which occur in the template execution will not be logged by default. The offending user will only receive a
DM from your server saying **Failed executing template.** Setting a [Moderation DM Error channel](#mod-channels) allows
for the more detailed errors to not be lost.

{{%children containerstyle="div" style="h2" description="true" %}}
9 changes: 9 additions & 0 deletions content/moderation/moderation/ban.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
+++
title = 'Ban'
weight = 4
+++

Ban a user, preventing them from joining the server until unbanned, optionally deleting x previous days of their
messages from the server. Optionally unbans the user after a set duration.

<!--more-->
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions content/moderation/moderation/kick.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
+++
title = 'Kick'
weight = 3
+++

Removes a member from the server, optionally deleting x number of their previous messages on the server.

<!--more-->
9 changes: 9 additions & 0 deletions content/moderation/moderation/mute.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
+++
title = 'Mute'
weight = 2
+++

Remove a user's ability to talk by assigning them a role with Send Message permissions denied in all channels.
Optionally unmutes the user after a set duration.

<!--more-->
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions content/moderation/moderation/timeout.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
+++
title = 'Timeout'
weight = 1
+++

Utilize Discord's builtin timeout feature to restrict a user's ability to send messages or add reactions.

<!--more-->
8 changes: 8 additions & 0 deletions content/moderation/moderation/warnings.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
+++
title = 'Warnings'
weight = 5
+++

Warn a user, which DMs the user and adds the warning to the user's warning log.

<!--more-->
Loading