Discord Email Verify
A Email Verification Bot
Table of Contents
Built With
Description
This bot is able to verify that a discord user owns an email with a certain domain (i.e. verify name@uni.edu mails). This can be useful when there is some sensitive data on the server which shouldn't be accessed by everyone. To verify, the user just has to add a reaction to a specified message and the bot will send a direct message which asks for the email address. A code will be sent to the email which will grant the verified role when send to the bot.
Usage
Invite Bot
Use this link to invite the bot to your server:
Commands
Commands | Arguments | Usage |
---|---|---|
/help |
get instructions on how to use the bot | |
/verify |
verify on the server | |
/status |
- | returns whether the bot is properly configured or not |
/domains |
(domain name) | () -> returns registered domains (domain name) -> register given domain |
/removedomain |
domain name | remove registered domain |
/button |
channel,message, buttontext | creates a button in the channel with the message and button text |
/message |
channel,message | sends a message to the channel to which the user can add a reaction to start the verification process |
/verifymessage |
(message) | () -> resets to default verify message (message) -> set custom verify message |
/verifiedrole |
(verified role name) | () -> returns the name of the verified role (verified role name) -> set the role name for the verified role |
/unverifiedrole |
(unverified role name) | () -> returns the name of the unverified role (unverified rolename) -> set the role name for the unverified role (current unverified rolename) -> deactivates unverified role |
/language |
language | set language for the user interactions |
/add_unverified_on_join |
enable | (enable/disable) -> automatically adds the unverified role to every new user |
/verify_on_join |
enable | (enable/disable) -> automatically asks every new member to verify |
/delete_user_data |
delete all the data from the user | |
/delete_server_data |
delete all the data from the server |
react := react to the message with an emoji
The commands can only be used by an administrator
The unverified role can be used to make a channel visible in which the message is located
The EmailBot role has to be higher in the role hierarchy then the verified and unverified role else
-> Cant find roles. Please contact the admin!
error
Contributors
Developer
- Lars Kaesberg
Translation
- Lars Kaesberg (English, German)
- gus2131 (Spanish)
- kploskonka (Polish)
- Norma1Name (Hebrew)
- iplayagain (Korean)
To add more languages please create an issue with the translation file. Template
Self Host
To install the bot execute following commands:
Download the Bot
git clone https://github.com/lkaesberg/EmailVerify.git
cd emailverify
Create Config File
nano config.json
{
"token": "<Discord Bot Token>",
"clientId": "<Discord Bot Client ID>",
"email": "<Email Address>",
"username": "<Mail Server Username>",
"password": "<Email Password>",
"smtpHost": "<SMTP Server>",
"isGoogle": <true/false>,
"topggToken": "<optional: TopGG Token (remove field when empty)>"
}
Install and Start the Bot
npm install
npm start
Usage
Type "email" in the console to see debugging messages for email errors.
If you are using a Gmail account you have to create an App password and use that instead of your password.