Skip to content

Gatekeeper is a Discord bot created with the discord.js library that allows server administrators to seamlessly integrate custom domain email verification.

License

Notifications You must be signed in to change notification settings

rshin7/gatekeeper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gatekeeper - Custom Email Verification in Discord Servers

Gatekeeper is a Discord* bot that allows server administrators to seamlessly integrate custom domain email verification.

*Discord is a communication platform similar to Slack

Example Use Case:

  • University Discord Server: Give a "Verified Student" role to members of the community that verify their school emails using Gatekeeper.
    • Provides the ability for Discord servers to verify student affiliation within their communities.

Things to Know:

  • This bot utilizes MailGun to send authentication emails, however it can be easily modified to use SendGrid as well.
    • You are free to implement something like SMTPjs if you wish.
  • This bot uses MySQL to store whitelists, authentication codes, and used emails.

Setting up Gatekeeper (Server-side)

  1. Use npm i to install package dependencies.
  2. Enter correct API Keys and database credentials in .env & line 5 and 6 of index.js.
  3. Import db_dump.sql into your MySQL database.
  4. Start server with node index.js.

Setting up Gatekeeper (Client-side)

  1. Add the bot to your server.
  2. Move the bot to the highest role in server settings.
  3. (As Administrator) execute command: !gkwhitelist [@domain] [roleID] anywhere.
    • Example: !gkwhitelist @columbia.edu 731776430492614667

Available Commands

  • !gkhelp - lists all available commands
  • !gkemail [email] - Sends an email to the given address that includes a verification code.
  • !gkverify [code] - Verifies if the user inputted code mathches the one generated by system.
  • !gkwhitelist [@domain.com] [roleID] - Sends desired whitelist and roleID to database. (Command available to administrator only)

About

Gatekeeper is a Discord bot created with the discord.js library that allows server administrators to seamlessly integrate custom domain email verification.

Topics

Resources

License

Stars

Watchers

Forks