# Comment créer un bot Discord

## Créer un bot

**Étape 1.** Créez une application ([suivez le lien](https://discord.com/developers/applications)).

**Étape 2.** Ajoutez un bot (cliquez sur le bouton "**Ajouter un bot"**).

<div data-with-frame="true"><figure><img src="/files/673dcdb32e7ae98666b4080c6d77dd1df4ada19e" alt=""><figcaption></figcaption></figure></div>

**Étape 2.1.** Dans l’onglet **Installation** section, sélectionnez **Définir Installation Link → None**.

<div data-with-frame="true"><figure><img src="/files/cfb0f8c6a084cfc8dc24fa5c00a05728fa49c888" alt=""><figcaption></figcaption></figure></div>

**Étape 2.2.** Dans l’onglet **Bot** section, désactivez **Bot public**, puis activez les **Intents**:

* **Intent du contenu des messages**
* **Intent des membres du serveur**

Vous pouvez également activer **Intent de présence** pour une utilisation future.

<div data-with-frame="true"><figure><img src="/files/9095bae9c3088840eed3cf7d52f94098cb2006d8" alt=""><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/3f89dfe5749222ba8056fe521c71384f1e2f653e" alt=""><figcaption></figcaption></figure></div>

**Étape 3.** Obtenez le jeton (**Réinitialiser le jeton**).

**Étape 4.** Ajoutez le bot au serveur :

* Accédez à **OAuth2 → Générateur d’URL**.
* Dans **Scopes**, sélectionnez **bot**.
* Dans **Autorisations du bot**, choisissez **Envoyer des messages**, **Lire l’historique des messages**, ainsi que toute autre autorisation requise.

Ouvrez ensuite le lien généré, sélectionnez le serveur où vous souhaitez ajouter le bot, puis confirmez l’autorisation.

<div data-with-frame="true"><figure><img src="/files/65703a002994c850ef54b715b8a8fb0f1503c9dc" alt=""><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/8a41fac24463208021f81abd503adac990d6c667" alt=""><figcaption></figcaption></figure></div>

Pour obtenir le webhook complet depuis Discord, attribuez simplement n’importe quelle valeur à la **save\_webhook** variable.

Si la variable est définie, le webhook sera enregistré dans **discord\_webhook**.

## Connexion du bot Discord dans MaviBot

Allez maintenant dans la section **« Messagers »** de votre projet dans **MaviBot**:

<div data-with-frame="true"><figure><img src="/files/a75cede5e1dcbd9767d1fc861cfbcbdf931e5d1e" alt=""><figcaption></figcaption></figure></div>

Collez ensuite le jeton copié depuis **Discord**.

<div data-with-frame="true"><figure><img src="/files/25e6c20e23c43af30b15040820d841c5a4166aa5" alt=""><figcaption></figcaption></figure></div>

Cliquez sur le bouton **Terminé** .

## Fonctions de calcul

### Répondre à un message

discord\_reply\_to\_message(message\_id, text) - Cette fonction est utilisée pour **répondre à un message**.

| Paramètres                                            | Description                                          |
| ----------------------------------------------------- | ---------------------------------------------------- |
| <mark style="color:$danger;">**!**</mark> message\_id | Le **ID du message** auquel vous souhaitez répondre. |
| <mark style="color:$danger;">**!**</mark> text        | Le **texte du message de réponse**.                  |

### Supprimer un message

discord\_delete\_message(message\_id) - Cette fonction est utilisée pour **supprimer un message.**&#x20;

| Paramètres                                            | Description                       |
| ----------------------------------------------------- | --------------------------------- |
| <mark style="color:$danger;">**!**</mark> message\_id | Le **ID du message** à supprimer. |

### Modifier un message

discord\_edit\_message(message\_id, text) - Cette fonction est utilisée pour **modifier un message**.

| Paramètres                                            | Description                      |
| ----------------------------------------------------- | -------------------------------- |
| <mark style="color:$danger;">**!**</mark> message\_id | Le **ID du message** à modifier. |
| <mark style="color:$danger;">**!**</mark> text        | Le **nouveau texte du message**. |

### Épingler un message

discord\_pin\_message(message\_id) - Cette fonction est utilisée pour **épingler un message.**

| Paramètres                                            | Description                      |
| ----------------------------------------------------- | -------------------------------- |
| <mark style="color:$danger;">**!**</mark> message\_id | Le **ID du message** à épingler. |

### Désépingler un message

discord\_unpin\_message(message\_id) - Cette fonction est utilisée pour **désépingler un message.**

| Paramètres                                            | Description                         |
| ----------------------------------------------------- | ----------------------------------- |
| <mark style="color:$danger;">**!**</mark> message\_id | Le **ID du message** à désépingler. |

### Envoyer une réaction à un message

discord\_send\_reaction(message\_id, reaction) - Cette fonction est utilisée pour **envoyer une réaction à un message.**

| Paramètres                                            | Description                                                                                                                                                                                                                   |
| ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <mark style="color:$danger;">**!**</mark> message\_id | Le **ID du message** à laquelle envoyer une réaction.                                                                                                                                                                         |
| <mark style="color:$danger;">**!**</mark> réaction    | Le **réaction à envoyer**. Vous pouvez fournir un seul emoji (par exemple, ❤️) ou l’ID d’un emoji personnalisé sur le serveur. Des informations sur la façon d’obtenir l’ID d’un emoji personnalisé sont fournies ci-dessous. |

### Supprimer une réaction d’un message dans un canal

discord\_delete\_reaction(message\_id, reaction, user\_id) - Cette fonction est utilisée pour **supprimer une réaction d’un message dans un canal.**

| Paramètres                                            | Description                                                                                                                                                                                                                     |
| ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <mark style="color:$danger;">**!**</mark> message\_id | Le **ID du message** duquel supprimer la réaction.                                                                                                                                                                              |
| <mark style="color:$danger;">**!**</mark> réaction    | Le **réaction à supprimer**. Vous pouvez fournir un seul emoji (par exemple, ❤️) ou l’ID d’un emoji personnalisé sur le serveur. Des informations sur la façon d’obtenir l’ID d’un emoji personnalisé sont fournies ci-dessous. |
| user\_id                                              | Le **ID de l’utilisateur** dont vous souhaitez supprimer la réaction. Ce paramètre est facultatif si vous souhaitez supprimer la réaction du bot actuel.                                                                        |

## Rappels

Lorsqu’un utilisateur envoie une réaction, un callback est reçu dans le chat au format suivant :

new\_like ❤️ uid413984787162726410

<div data-with-frame="true"><figure><img src="/files/68587f088b1bd65e0ac901f0ae6ccd06e1364c95" alt="" width="563"><figcaption></figcaption></figure></div>

Où `uid413984787162726410` est le **ID de l’utilisateur** qui a envoyé la réaction.

## Comment obtenir l’ID d’un emoji personnalisé

Si vous envoyez une réaction personnalisée à un message dans un canal Discord, un callback sera reçu au format suivant :

new\_like beer:1479419477396291696 uid413984787162726410

<div data-with-frame="true"><figure><img src="/files/e78f07ab368172a298ef2564b0137c6adac539fb" alt="" width="563"><figcaption></figcaption></figure></div>

Où `beer:1479419477396291696` est le **ID de la réaction**. Vous pouvez le copier pour l’utiliser dans les fonctions liées aux réactions.

## Comment obtenir l’ID du message

Vous pouvez obtenir l’ID du message du client depuis le webhook si **save\_webhook** est activé. Exemple :

`data = discord_webhook["data"]`\
`msg_id = data["id"]`\
`result = discord_reply_to_message(msg_id, "Ceci est une réponse à un message")`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/fr/chatbot/messageries/discord/chatbot.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
