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.
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.
Because of this similarity, most code can be shared between all the commands.
Progress tracking