raidprotect
raidprotect copied to clipboard
Moderation commands
The new version of RaidProtect will focus more on moderation features, with an advanced dashboard to manage sanction of a server. The first step is to implement the basic moderation commands:
-
/kick
: kick a member from the server -
/ban
: ban a user from the server -
/mute
: mute a member (using Discord native timeouts) -
/warn
: warn a user (send a dm with the warning if the user is on the server)
Implementation
All those commands will have a similar behavior.
- A moderator run one of the moderation commands.
- The bot ensures the moderator has required permissions to take action on the targeted user.
- If no reason has been provided in the command, a modal component prompt the moderator for a reason. If enforce_reason is enabled in guild configuration, the field is required to continue. The moderator can also add internal notes linked to the sanction.
- The targeted user receives a dm with the reason of the sanction.
- The bot performs the sanction (kick/ban/mute)
- A message is sent in the guild logs channel and the sanction is stored in the database.
- The moderator is informed that the action has been performed with a message.
Because of this similarity, most code can be shared between all the commands.
Progress tracking
- [ ] Kick command (steps 1-3 are done)
- [ ] Ban command
- [ ] Mute command
- [ ] Warn command
You can assign these commands to me, if you'd like.