EmailBot allows you to verify that your Discord server members have an email address with a specific domain.
Discord server: https://discord.gg/MfFMxu9
After inviting the bot to your server, a domain must be added using
.vstatus is the help command:
User commands: .verify -> Sends a DM to the user to verify their email .vstatus -> This help message Admin commands: - A domain must be added before users can be verified. - Use .rolechange instead of server settings to change the name of the verified role. .enableonjoin -> Enables verifying users on join .disableonjoin -> Disables verifying users on join .domainadd domain -> Adds an email domain .domainremove domain -> Removes an email domain .rolechange role -> Changes the name of the verified role Domains: Verify when a user joins? (default=False): False Verified role (default=Verified): Verified
Let’s say you want a Discord server just for people who have a @randomuniversity.edu email address. Add this bot to your server and when someone joins, they will get a DM asking for their @randomuniversity.edu email address. The bot then emails them a verification code. If they reply with the correct code, they get the “Verified” role.
<img src=“docs/screenshot.png” />
Install the dependencies:
pip install -r requirements.txt
export SENDGRID_API_KEY='YOUR_SENDGRID_API_KEY' export SENDGRID_EMAIL='YOUR_SENDGRID_EMAIL' export DISCORD_TOKEN='YOUR_DISCORD_TOKEN'
Run the bot with:
- [ ] Separate bot commands/events into cogs and put sqlite commands in a separate file
- [ ] Make the flask server and scheduled sqlite backups optional
- [ ] Allow roles with spaces to be added
- [ ] Make the feature that allows users who leave to retain their Verified role when they join back, optional for the server admin
- [ ] Add a
- [ ] Use Role.id instead of Role.name
EmailBot is licensed under GNU GPL v3.