A Email Verification Bot
    
This bot is able to verify that a discord user owns an email with a certain domain (i.e. verify [email protected] 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.
Use this link to invite the bot to your server:
| 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 | — | Deprecated. Use /buttoninstead. Ask an admin to create a new verification button message. | 
| /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 | 
Note: The legacy reaction-based flow is deprecated and disabled. If users react on an old message, they will be informed to contact an admin and request a new /button verification message.
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
- Lars Kaesberg
- Lars Kaesberg (English, German)
- gus2131 (Spanish)
- kploskonka (Polish)
- Norma1Name (Hebrew)
- iplayagain (Korean)
- Charles Van (France)
- EmreSoftware (Turkish)
To add more languages please create an issue with the translation file. Template
Node version: 16.15.0
To install the bot execute following commands:
git clone https://github.com/lkaesberg/EmailVerify.git
cd emailverify
nano config/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)>"
}
npm install
npm start
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.


