Skip to content

V. Commands

Tucker edited this page Jan 3, 2022 · 22 revisions

These are commands that must be actively called by a user to take effect. Along with the command call itself (i.e. !command), they often require, or optionally allow, several other parameters to be given. Parameters are positional by Discord's restrictions, meaning the orders and amount will always matter.

Always remember...

  1. Everything is cASe-SenSiTIve.
  2. Position matters.
  3. Channel matters.
  4. Your roles matter.
  5. Good Practice: Put all your parameters inside quotes like "this".

V.a. Interview Commands

!interview

@bot.command(name='interview', 
             brief=" = Begins an interview with whichever "Guest" calls it.",
             description="Begins an interview with whoever calls it. After completion and submission of the interview, it will create an entry in the long-term JSON file.")
@commands.has_role('Guest')
@commands.cooldown(1, 1800, commands.BucketType.user)
async def dm(ctx):

This function has no parameters, and can only be called on its own with no modifiers. It has a few requirements:

  1. You must have the "Guest" role to call it
  2. You must be in the specified channel, in this case, #request-orientation

It starts a DM with the user who called it, then works in tandem with the event handler, on_raw_reaction_add, to identify the user's choices and submit them into the designated orientation logging channel. Simultaneously, upon submission by the user, it will add them into the long-term JSON file logs. After that it will simply wait for approval or denial of the log before moving on, making changes to the user's roles and nickname, and finalizing their admission/denial to/from the org.

V.b. Logging Commands

!create

!update

!find

Clone this wiki locally