A Captcha verification bot based off of Discord.js.
Feel free to join the Discord server if you need help with setting up DiscordCaptcha.
Setup procedure
DiscordCaptcha requires NodeJS 8.0+. Install it here.
To install all required NPM-Modules, run npm install
.
Get your Bot Token from this page.
Verification procedure
When joining, the user is supposed (if everything was set up correctly) to only be able to send messages in a verification channel.
It is recommended to add a short message to the channel (topic, ...) so that new users know what to type next.
After typing !verify
(!
represents the prefix, can be changed in the config file), the bot will send the user a direct message.
In that message there is an image that shows 6 letters/numbers.
The user is then supposed to send !verify <captcha>
in the verification channel and will be assigned a role.
That role should have send and view messages permissions for all other channels.
Config File Explanation
If you have trouble writing the config file, try dccg.
A key refers to the name of the property:
"key": "value"
config#token
The token
property holds your bots token. This is required for logging in. Do note that giving your token to others is like giving your passwords to others, they can login into your bot and do whatever they want.
config#prefix
The prefix
property holds the prefix. This is the character (combination) the bot will respond to. Setting it to $
will make the bot respond to $verify
config#deleteMessages
The deleteMessages
property holds a boolean. If it is set to true
, it will delete all messages in the verification channel. It is recommended to leave it as true
.
config#presence
The presence
property holds the presence (playing status) that will be displayed in your client under the username.
config#servers
The servers
property holds all servers it should react to. Each object is keyed by the server ID and holds an object that has a verificationChannel
and a verifyRole
property.
config#ignoreServers
This property can be used to ignore certain servers
config#commands
This property contains all commands and can be used to toggle/limit certain commands (to specific users)
Example config.json
{
"token": "[TOKEN HERE]",
"prefix": "$",
"deleteMessages": true,
"presence": {
"type": "watching",
"name": "people verify"
},
"servers": {
"339838921955475456": {
"verificationChannel": "592772759994630161",
"verifyRole": "339841406409375754"
}
},
"ignoreServers": [
],
"commands": {
"ping": {
"executors": [],
"requiredPermissions": [],
"enabled": true
},
"verify": {
"executors": [],
"requiredPermissions": [],
"enabled": true
}
}
}
Tips
• Contact me via discord. (y21#0909 | ID: 312715611413413889)
• Open a Pull Request