> For the complete documentation index, see [llms.txt](https://docs.sharles.me/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sharles.me/fonctionnalites/captcha.md).

# Captcha

Protège ton serveur des raids en faisant passer une vérification à chaque nouveau membre

## Un captcha c'est quoi ? Et pourquoi le mettre en place ?

Si tu ne connais rien ou pas grand chose au système de vérification de Sharles, je te conseille de passer par ici 😉

{% content-ref url="/pages/-MZnlM6hI0ycoD6lssSH" %}
[Principe et avantages](/fonctionnalites/captcha/principe-et-avantages.md)
{% endcontent-ref %}

## Mise en place du captcha

Tu sais à présent comment fonctionne un captcha, à présent il est temps de le mettre en place. Pour y parvenir, une seule commande est nécessaire `captcha`.

<div align="left"><img src="https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MiYtCiFPZJf8k1zLwwR%2F-MiYvbY19KTNXmmYjSK2%2Fimage.png?alt=media&amp;token=828e2268-eec1-4cdf-92ae-d83e3f430776" alt=""></div>

On peut voir que différents paramètres sont manquant, et c'est normal, on va les créer automatiquement. On constate deux boutons :

:robot: **Configuration auto des salons et des permissions**\
C'est LE bouton qui va nous intéresser dans l'immédiat. C'est lui qui va s'occuper de tout paramétrer à notre place, et ça va nous simplifier la vie.

:closed\_lock\_with\_key: ***Activer le captcha*** \
Ce bouton est désactivé et c'est normal, la configuration n'est pas complète.

Allons-y, il est temps de laisser la magie opérer, tu peux presser le premier bouton.

<div align="left"><img src="https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MiYtCiFPZJf8k1zLwwR%2F-MiYxYFoDJJIcpqzgBJJ%2Fimage.png?alt=media&amp;token=e0d4e76c-2636-4c22-a033-5d78c3f47f80" alt=""></div>

Et nous voilà avec des paramètres fraichement remplis ! Deux salons et un rôle ont été créés.\
Examinons rapidement à quoi ils correspondent :

&#x20;👑 **Le rôle @En attente de vérification**\
Ce rôle sera donné aux membres qui rejoignent ton serveur, au début de la vérification. Il ne leur donne accès qu'au salon de vérification, là où ils doivent valider leur captcha.&#x20;

**✅ Le salon #vérification**\
C'est l'unique salon que les membres non vérifiés pourront voir. C'est donc ici qu'ils devront passer leur vérification.

**📖 Le salon #logs-vérification**\
Te permet de suivre l'avancement de la vérification des nouveaux membres. Différents messages y seront envoyés suivant la réussite ou non du membre en cours de validation.

Et si tu as l'œil, tu remarqueras que le bouton vert est activé ! Tu peux donc à présent **activer le captcha**.

<div align="left"><img src="https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MiYtCiFPZJf8k1zLwwR%2F-MiYyNCB9cxpGkmw_bKw%2Fimage.png?alt=media&amp;token=8fc60b22-8c07-4544-8c85-5ff5cb35fc14" alt=""></div>

{% hint style="info" %}
**Un problème avec les permissions ?** Tu peux réutiliser la commande `captcha` et recliquer sur le bouton bleu, si les rôles et salons apparaissent comme configurés, alors ils ne seront pas recréés.
{% endhint %}

{% hint style="success" %}
**Et c'est terminé !** En une commande et deux clics, tu as un système de vérification fonctionnel pour ton serveur. Si tu souhaites en savoir plus, tu peux continuer ta lecture !
{% endhint %}

## Les différents logs envoyés

**Sharles** propose d'accompagner ton système de vérification d'un salon où est envoyé l'avancement de la vérification de chaque nouveau membre.

**Arrivée sur le serveur, début du captcha**\
Le message est aux couleurs du rôle **@En attente de vérification**. Tu peux y retrouver le tag du membre, sa mention mais également l'âge de son compte. Le code à entrer est également envoyé dans le salon.

![](https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MZoO5JgPJh4-BFHxzzE%2F-MZoWit6GJb3Ha_8zbwv%2Fimage.png?alt=media\&token=b5024005-26a3-416b-9296-bef08a55e037)

**Mauvais code entré**\
En cas d'échec, sur la première capture d'écran le membre n'est pas expulsé. C'est la configuration initiale.

![](https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MZoO5JgPJh4-BFHxzzE%2F-MZoXt09x70UW4cBBnYE%2Fimage.png?alt=media\&token=c133515c-8127-491a-b1a8-c6327121c72d)

Sur la deuxième capture d'écran en revanche, le membre est expulsé. Pour procéder ainsi, rends toi sur le [**Dashboard**](https://sharles.herokuapp.com/), dans la catégorie **✔️ Captcha**, recherche **Expulser le membre si ce dernier échoue**.

![](https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MZoO5JgPJh4-BFHxzzE%2F-MZo_5x87EbmJA_TxmXu%2Fimage.png?alt=media\&token=ac42b5d4-8667-4f3c-ad73-45f5978df69d)

**Départ avant la fin du captcha** \
Il arrive que certains membres ne fassent pas beaucoup d'effort pour rejoindre un serveur. Dans le cas où ils viendraient à partir en pleine vérification, tu en serais informé.

![](https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MZoO5JgPJh4-BFHxzzE%2F-MZoYlvsbqZC4BHTYIoi%2Fimage.png?alt=media\&token=604da34b-1ea7-4e93-9f5d-6d0cf1bb870a)

**Code bon**\
Si tout est bon, que demander de plus ?

![](https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MZoO5JgPJh4-BFHxzzE%2F-MZoY3llXZwctV7Bsq8n%2Fimage.png?alt=media\&token=d3c691c2-3440-4770-9015-e10a8a3a2879)

**En cas de vérification manuelle**\
En cas de problème il est possible de vérifier manuellement un ou plusieurs membres passant la vérification. Si un administrateur fait usage de la validation manuelle, tu le verras parmi les logs.

![](https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MZoO5JgPJh4-BFHxzzE%2F-MZojT_0hsbD_dUL0DK8%2Fimage.png?alt=media\&token=1e23299b-fe37-4ef6-9dfd-e3694df4ae87)

## Vérification manuelle

Il peut arriver que tu ais besoin de vérifier manuellement un membre, soit parce qu'il a du mal à passer le captcha et que tu le connais, ou alors pour tout autre raison qui fait qu'il ne peut pas se vérifier tout seul.\
Dans ce cas là une commande existe.

```
/validate member @membre
```

{% hint style="warning" %}
**Permission requise par défaut :** `Administrateur`
{% endhint %}

Utilise la commande `validate` en mentionnant membre, ou en spécifiant `all`, afin de vérifier un groupe de personnes passant la vérification.

![](https://343792583-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MZNv30Ysts-trCw4lJr%2F-MZoO5JgPJh4-BFHxzzE%2F-MZoj7J359k9LOaGv-0r%2FImage1.png?alt=media\&token=5141f609-eb6e-42c3-aee6-32ef46c27698)

## Personnalisation

Tu peux personnaliser le système de vérification à l'image de ton serveur en passant par le [**Dashboard**](https://sharles.herokuapp.com/)**.**\
En te rendant dans la catégorie **✔️ Captcha**, tu pourras modifier :

* La **longueur** du captcha
* Le **message** qui accompagne le code dans le salon de vérification
* L'**expulsion** ou non du membre à l'échec du captcha

{% hint style="info" %}
**Tu pourras aussi modifier le rôle de vérification et les salons associés.** Pense seulement à utiliser de nouveau la commande `captcha` pour mettre à jour les permissions dans les nouveaux salons !
{% endhint %}

{% hint style="warning" %}
**Quelque chose ne marche pas ?** Le solution est peut-être là :
{% endhint %}
