Gatekeeper

REQUIRES: Manage Roles, Manage Messages, Embed Links

About

Using Discords OAuth2 system, new users can go through a specific verification process known as Gatekeeper. Gatekeeper is a service for verifying and filtering new users in communities based on selected social media platforms.

Gatekeeper requires new users to have an account on Reddit, YouTube, and/or Steam, with specific conditions such as, in this example for Reddit, a certain amount of karma, minimum account age, or simply an account.

Setup 👑

Command Description Example
!module gatekeeper Enable/Disable the module. !module gatekeeper
!gatemsg title Text Set the title for gatekeeper messages. !gatemsg title Need Enough Karma
!gatemsg desc Text Set the description for gatekeeper messages. !gatemsg desc Your account can have access after connecting your Discord account to a Reddit account with enough karma.
!gate list Display all your gates. !gate list
!gate add platform
!gate delete platform
Add/Remove that gate. !gate add YouTube
!gate delete Reddit

Supported Platforms

Platform Options
Reddit have (Have an account)
karma (Have at least a certain amount of karma)
age (Have an account that is at least a certain age)
Steam have (Have an account)
game (Have this game)
totalgames (Total number of games own on the account)
totalhours (Total number of hours played on all games)
bans (Allowed to have community, VAC, eco, or game bans?)
YouTube have (Have an account)
viewcount (Have a total number of views)
subcount (Have a minimum number of subscribers)

 

General Setup Steps

Specific questions unique to certain options for chosen platform(s) may very. This section is intended to provide general guidance for the common steps of the gate command in order to help provide a smoother configuration experience.

1. Start by doing !gate add platform (e.g. !gate add YouTube).

    • In this example, we require a user to have a YouTube account and be given a role (A role must be already made).
    • If Gaius doesn't respond, check if the module is enabled (!guildinfo) and if Gaius can see/speak in the channel.

2. Next you'll be given a list of options to choose from for the chosen platform.

    • In this example, we want users to be required to only have an account, so we chose the have option.

3. Now you get to choose if you want it to be required, optional, or a part of a group of requirements.

    • For required, users have to meet the requirement for this particular gate or they will be removed from the server.
    • For optional, this gate will not result in removal from the server if this gate's requirement is not met, however it has the capability to award other roles or automatically verify the user.
    • ➕ For group (Gaius+ authorized servers only), this gate will be a part of a group of gates. You can number the groups so that gates in group 1 don't match with gates in group 2, either of which would be required to be passed in order for users to be verified. 
      Passing any gate in a group results in a success.

    • Free users of Gaius are allowed to activate only a single required gate in the server.

4. After selecting one of the 3 previous options, you can choose to add or remove a role or go to the next step by saying done.

    • When removing a role, you must provide the role ID or @rolename (for example, removes @Gated).
    • When adding a role, you must provide the role ID or @rolename (for example, adds @Verified).
    • When you are finished, or if you do not wish for the gate to add or remove roles, you must say done.
    • Multiple role adding and removing is currently not a feature.
      The last mentioned role or role ID will be the chosen role.

5. Finally, you can choose whether or not users are automatically kicked from the server, then re-added (pending OAuth2 permission) to the server.

    • If you are using another server as a gated server in order for users to pass verification to get access to your main server, you can type y for this step, in which you can say which server afterwards. 
    • Otherwise, you can say n for this step.

General Gatekeeper setup completed. In our example, we have required users to have a YouTube account.