All Projects → ahoys → discaptcha

ahoys / discaptcha

Licence: MIT license
Captcha for Discord!

Programming Languages

typescript
32286 projects
shell
77523 projects

Projects that are alternatives of or similar to discaptcha

Antiddos System
🛡️⚔️ Protect your web app from DDOS attack or the Dead Ping + CAPTCHA VERIFICATION in one line!
Stars: ✭ 173 (+1135.71%)
Mutual labels:  captcha
Tlg joincaptchabot
Telegram Bot to verify if users that join a group, are humans. The Bot send an image captcha for each new user, and kick any of them that can't solve the captcha in a specified time.
Stars: ✭ 226 (+1514.29%)
Mutual labels:  captcha
cs-wordpress-bouncer
CrowdSec is an open-source cyber security tool. This plugin blocks detected attackers or display them a captcha to check they are not bots.
Stars: ✭ 25 (+78.57%)
Mutual labels:  captcha
Sinesp Client
Consulta de placas de veículos na base de dados do SINESP Cidadão sem a necessidade do preenchimento de captchas
Stars: ✭ 181 (+1192.86%)
Mutual labels:  captcha
Captcha Recognizer
基于C#.NET异步图形验证码识别组件(集成了若快、优优云、打码兔、云打码等平台,准确率95%,速度2-6秒)采用策略设计模式
Stars: ✭ 213 (+1421.43%)
Mutual labels:  captcha
Imageocr
PHP验证码识别[PHP CAPTCHA Recognition]
Stars: ✭ 241 (+1621.43%)
Mutual labels:  captcha
Captcha
Captcha for Laravel 5/6/7/8
Stars: ✭ 1,985 (+14078.57%)
Mutual labels:  captcha
canvas-captcha
A simple captcha module for nodejs based on node-canvas
Stars: ✭ 31 (+121.43%)
Mutual labels:  captcha
Rnn ctc
Recurrent Neural Network and Long Short Term Memory (LSTM) with Connectionist Temporal Classification implemented in Theano. Includes a Toy training example.
Stars: ✭ 220 (+1471.43%)
Mutual labels:  captcha
JDMemberCloseAccount
学习python操作selenium的一个🌰 ,也是一种京东全自动退会方案
Stars: ✭ 1,235 (+8721.43%)
Mutual labels:  captcha
Decaptcha
Recognize captcha by machine learning. 机器学习识别图片验证码(专门应付本科毕业设计)
Stars: ✭ 192 (+1271.43%)
Mutual labels:  captcha
Friendly Challenge
The widget and docs for the proof of work challenge used in Friendly Captcha. Protect your websites and online services from spam and abuse with Friendly Captcha, a privacy-first anti-bot solution.
Stars: ✭ 207 (+1378.57%)
Mutual labels:  captcha
12306 Captcha
基于深度学习的12306验证码识别
Stars: ✭ 254 (+1714.29%)
Mutual labels:  captcha
Captcha break
验证码识别
Stars: ✭ 2,268 (+16100%)
Mutual labels:  captcha
campto
Captcha package for nodejs.
Stars: ✭ 21 (+50%)
Mutual labels:  captcha
Hei.captcha
一个跨平台的图形验证码生成工具包/.net core
Stars: ✭ 172 (+1128.57%)
Mutual labels:  captcha
Easy12306
使用机器学习算法完成对12306验证码的自动识别
Stars: ✭ 2,674 (+19000%)
Mutual labels:  captcha
mbus
基于RabbitMQ简单实现验证码识别平台,训练网络模型智能识别图形验证码
Stars: ✭ 37 (+164.29%)
Mutual labels:  captcha
ulozto-captcha-breaker
Deep learning model using Tensorflow that breaks ulozto captcha codes.
Stars: ✭ 65 (+364.29%)
Mutual labels:  captcha
rotate-captcha
Rotate image captcha,旋转图片验证码
Stars: ✭ 50 (+257.14%)
Mutual labels:  captcha

Discaptcha

alt text

Version 2 now released!

A standalone bot built against "join, spam & leave" type of spam bots that are very common in Discord.

The solution this bot provides is basically a Discord-suitable captcha. By default the server is set to not allow speaking without some specific role. Discaptcha bot then automatically approaches new clients and one-by-one verifies that they aren't spam bots, giving them the required role for speaking. It's that simple.

This bot is standalone, meaning that you are required to have a server machine where the bot can live and run.

Installation

It takes about 5-15 mins to install the bot.

  1. Create a new Discord application for the bot.
  2. In the same developers center, under "Bot", make sure you have "SERVER MEMBERS INTENT" enabled.
  3. Install Node.js if not already.
  4. Download the newest Discaptcha release and extract it to somewhere.
  5. Run npm install in the extraction folder.
  6. Open the .env-file inside the extraction folder (it may be hidden on some OSes) and read the configuration section below.
  7. Invite the bot to your server(s) with your web browser. You can do this with the OAuth2 URL Generator in Discord Developer Portal > your application > OAuth2. Make sure to check "applications.commands", "bot" and "Administrator".
  8. Run node discaptcha to start the bot. The bot should now appear online.
  9. Give the bot a command to install itself: /install. This is done via slash commands. The command must be executed on all servers where you want to use the bot. Do note that the process may take quite a while on large servers as the bot will give the verified role to all users.

That's all. Discaptcha is now functional. Try it out with /verifyme.

Tip: Use a separate hidden channel to test your bots.

Configuration

In order to use the bot, you are required to link the bot to the Discord application you created in the installation step 2. This linking is done by providing the bot some key values via an .env-file that can be edited with a text editor.

Note that some OSes may hide the file by default.

APP_TOKEN=replace_me
APP_ID=replace_me
OWNER_ID=replace_me

Replace all replace_me values with actual values. Most of the values can be found from the applications portal. The token is under the "Bot" page.

  • APP_TOKEN: token of the application.
  • APP_ID: id of the application.
  • OWNER_ID: your Discord id.
  • OWNER_ROLE: optional role id. All users with this role can control the bot.
  • ROLE_NAME: optional custom name for the verified-role. By default: Verified.

Commands (interactions)

/install Installs Discaptcha bot for the guild.

  1. Removes the old verified role (of the same name).
  2. Creates a new verified role with the correct permissions.
  3. Assigns the role to everyone (this may take a while).
  4. Disables writing and speaking permissions of the @everyone role.

/humanize Makes sure all members on the server have the verified role. In case you have already installed Discaptcha once, this is much faster than re-installing.

  • Skips members who already got the role.
  • Be careful, this may mark bots as humans.

/uninstall Removes Discaptcha bot's configurations. Useful when you are removing the bot from the server.

  1. Enables writing and speaking permissions of the @everyone role.
  2. Removes the verified role (this will remove the role from the members too).

/verifyme For testing purposes, you can use this interaction to see how the bot greets new visitors.

Permissions

The bot requires the "Administrator" permission.

Security wise, it's a good idea to give this role only to Discaptcha.

Security

  • This bot shares (mandatory) information with the official Discord API only.
  • The bot is incapable of reading user messages.
  • The terminal may display usernames or ids. This can help you to hunt down troublemakers.

FAQ

  • The bot joined but doesn't function.
    • Make sure the bot has the correct role permissions. It should have the Administrator flag enabled.
    • Make sure your .env file has the values properly set.
    • See if the bot's console shows anything useful. If not, the connection may be broken, triple check the .env file.
  • The bot does not give the verified-role to users.
    • This is most likely a permission issue. See your discord server's roles. The bot should have the administrator permission enabled and no other role should override it. Repeat the installation step 7.
    • In the Discord applications page, make sure the bot has the "SERVER MEMBERS INTENT" setting enabled under the "Bot" page.
    • Try executing the /install slash command again. The bot should give you information if the installation was successful.
  • The slash commands are not showing.
    • The most likely scenario is that Discaptcha does not have the required permissions. Repeat the installation step 7.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].