Gatekeeper is a Discord* bot that allows server administrators to seamlessly integrate custom domain email verification.
*Discord is a communication platform similar to Slack
- 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.
- 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.
- Use
npm i
to install package dependencies. - Enter correct API Keys and database credentials in
.env
& line 5 and 6 ofindex.js
. - Import
db_dump.sql
into your MySQL database. - Start server with
node index.js
.
- Add the bot to your server.
- Move the bot to the highest role in server settings.
- (As Administrator) execute command:
!gkwhitelist [@domain] [roleID]
anywhere.- Example:
!gkwhitelist @columbia.edu 731776430492614667
- Example:
- !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)