Skip to content

CAPTCHA

Rose can help fight bots in your group by using her built-in CAPTCHA features.

The basic flow of this is as follows:

  • User joins group for the first time
  • User gets muted by Rose's CAPTCHA
  • User gets a welcome message, with a button asking to solve the CAPTCHA
  • Depending on the captcha results, different things happen:
    • If the user solves the captcha, they get unmuted, and continue as normal.
    • If the user doesn't solve the captcha, they remain muted (or get kicked, depending on settings)
    • If the user fails the captcha (eg, gets the wrong answers), they get temporarily banned.

With multiple different settings, there are options for every scenario!

Tip

If you use join requests in your group, Rose will send the CAPTCHA straight to the user's PM when they request to join!

Different captcha modes

Rose supports multiple different CAPTCHA modes, explained in detail below:

Button

This is the simplest CAPTCHA setting, and the default. It just requires users to press the button under the welcome message to solve it. captcha-button.png

Text

The text CAPTCHA requires users to select the text which matches the picture to complete the CAPTCHA.

Users will be presented with a button similar to the button captcha, which will redirect them to the private chat with Rose. Once there, the user must then select the correct answer from a list of possible solutions.

captcha-text.png

Math

The math CAPTCHA requires users to solve a basic math question to complete the CAPTCHA.

Users will be presented with a button similar to the button captcha, which will redirect them to the private chat with Rose. Once there, the user must then select the correct answer from a list of possible solutions.

captcha-math.png

Text2

The text2 CAPTCHA is the most complicated setting so far.

Users will be presented with a button similar to the button captcha, which will redirect them to the private chat with Rose. Once there, the user must select the individual characters which match the picture to complete the CAPTCHA. captcha-text2.png

Enabling CAPTCHAs

To enable CAPTCHAs, use the following command:

/captcha on

And to disable them, use:

/captcha off

Note

To use CAPTCHAs, you MUST have welcome messages enabled!

Customising The CAPTCHA Button

You might want to customise the button that gets added to your welcome message. This may be to change the text to make it clearer to your users, or to change the language; up to you! Like the rest of your welcome message, you can customise it.

To set the displayed text, use the command below, followed by the text you wish to be shown on the button:

/setcaptchatext <new button text>

By default, the text shown on the CAPTCHA button is "Click here to prove you're human". If at any time you wish to reset your unmute button text to this default string, issue the below command:

/resetcaptchatext

Note

Remember, only plaintext is allowed in your button text. This means you cannot use any markdown, and you also cannot use any variables such as {username}.

Other CAPTCHA settings

Using Join Requests

Telegram's join request feature allows for limiting access to your group such that only people that have been approved can see the group. And CAPTCHAs will work with this just fine!

All you need to do is to create an invitelink which has join requests enabled (also called "admin approval" on some clients), and Rose will handle the rest. Users that try to use this link will press "request to join" button, which will make Rose send them a message to solve the CAPTCHA. Once the CAPTCHA is solved, they'll be accepted into the group.

CAPTCHA kicks

If a user hasn't solved the CAPTCHA after a certain time, it may be a good idea to kick them. That way, you don't risk filling your member list with muted users. It also has the perk of forcing users that didn't notice the CAPTCHA to rejoin your group; maybe they'll pay more attention next time.

You can use this feature by enabling CAPTCHA kicks; to do so, use the following command:

/captchakick on

And to disable it, use:

/captchakick off

Once you've enabled CAPTCHA kicks, you may also want to change the duration after which to kick the user. The default duration is 5 minutes. You can do this with the following command:

/captchakicktime <time>

The <time> argument is set according to the following table:

Option Description
Xm Bans the user for X minutes
Xh Bans the user for X hours
Xd Bans the user for X days
Xw Bans the user for X weeks

CAPTCHA Rules

Something else you might want to do, is to make sure your users accept the rules before joining your group. And what better place than to make that part of your CAPTCHA?

Enabling CAPTCHA rules will show your rules to any new members as part of the CAPTCHA process. You can enable it like so:

/captcharules on

And disable it like so:

/captcharules off

CAPTCHA time

What if a user just doesn't see the message or button, but you still want to trust them? No problem at all! If a user still hasn't pressed the "unmute" button after a certain amount of time, you can have Rose automatically unmute them. To configure this, issue the below command:

/captchatime <time>

The <time> argument can be set following the below table:

Option Description
Xm Bans the user for X minutes
Xh Bans the user for X hours
Xd Bans the user for X days
Xw Bans the user for X weeks

Example

If you want to make sure that any user that has joined gets unmuted after 12 hours, you would issue the below command:

/captchatime 12h

If you want to disable this, and therefore make sure that users remain muted forever until they solve the CAPTCHA (the recommend option!), you can disable captchatime again as follows:

/captchatime off