CommandLineFox / Blair

Utility bot for a discord server made by Alex
0 stars 0 forks source link

Introduction to the bot #1

Open CommandLineFox opened 1 month ago

CommandLineFox commented 1 month ago

For the starters

The entry questions

It's gonna be a verification bot that has you press a button or some shit to start verifying, and completes the verification process in what way?

Q: where did you join us from? Presets: disboard vanity friend invite other

And selecting other would prompt it to specify and grab that answer or the friend invite which would ask who invited

I sort of feel like the best thing to do is to make a custom system where you guys can create verification questions and manage them as opposed to hardcoding them so that the system doesn't depend on me

The buttons

Approve

No question should approve the user, give a configurable welcome message, and give whatever other roles you need it to

Questioning

Opens a private thread for you to bully the user in, once closed by staff, gets logged in another channel, the prior message loses the question button and only has approving, kicking and banning

Kick / ban

Gives a dropdown with a select list of reasons or prompts a custom one which is the only time you'd be able to send messages in the channel, either adding a permission override for the person to send messages or autodeleting any message that isn't related to a kick/ban reason to keep that logging channel clean

Configurability

The module as a whole can be turned on or off (assuming that the bot will be multipurpose), welcome message, welcome channel, member role, (don't know if you want selfroles to be part of verification) but would have to configure all those ig too if that's the case), log channel, archive channel, verification channel to create threads and questioning threads in

CommandLineFox commented 1 month ago

Commands

List

Guide channel (set / remove) - Where the Verify button will be posted Guide message (set / remove) - Text shown alongside the verify button Guide message post - Posts the message in the channel

Verification question (list / add / remove / edit) - Manage verification questions Verification log (set / remove) - Where verifications will be sent to and given the four buttons

Questioning category (set / remove) - Where the channels for questioning will be created Questioning log (set / remove) - Where questioning will be stored as txt files or whatever after the person gets approved / kicked / banned

Welcome channel (set / remove) - Where welcome message will be posted Welcome message (set / remove) - Text to be sent for welcoming Welcome toggle (enable / disable) - Enable or disable welcome messages

Member role (set / remove) - Member role that gets given upon successful verification Unverified role (set / remove) - Unverified role that gets removed

Approve - Manual approval for questioning Deny <kick / ban> - Manual denying for questioning

Additional information

Approve and deny can ONLY be used inside channels related to questioning

Events

Member role change

Member leave

Channel delete

Role delete

Logic

Verification process:

Questioning:

Database

Guild model

Field Name Type
id string
Config Config

Config

Field Name Type
verification Verification
roles Roles

Verification

Field Name Type
guideChannel string
guideMessage string
verificationQuestions string[]
verificationLog string
questioningCategory string
questioningChannels string[]
questioningLog string
welcomeChannel string
welcomeMessage string
welcomeToggle boolean
pendingApplication string[]

Roles

Field Name Type
memberRole string
unverifiedRole string