> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Entrée multimodale

## Présentation

Les paramètres d’entrée multimodale contrôlent les moyens supplémentaires dont disposent les utilisateurs pour envoyer des informations à l’agent, au-delà de la parole. Ils se trouvent dans l’onglet **Avancé** de l’agent, sous **Entrée multimodale**.

#### [Entrée de fichier](#file-input)

Permettez aux utilisateurs de joindre des images et des PDF dans le chat

#### [Entrée DTMF](#dtmf-input)

Collectez les chiffres saisis au clavier par les appelants lors de conversations téléphoniques

## Entrée de fichier

L’entrée de fichier permet aux utilisateurs d’envoyer des images et des PDF à l’agent dans le chat. L’agent peut lire ces fichiers lorsque le [modèle](/docs/fr/eleven-agents/customization/llm) sélectionné prend en charge les entrées d’images et/ou de documents.

> **Note**
>
> Les pièces jointes sont ignorées si le modèle ne prend pas en charge le type de fichier, même lorsque l’entrée de fichier est
> activée.

### Configuration

| Champ                        | Type      | Valeur par défaut | Description                                                                                                                                                                                                                                        |
| ---------------------------- | --------- | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `enabled`                    | `boolean` | `true`            | Lorsque la valeur est `true`, les utilisateurs peuvent joindre des images ou des PDF si le modèle prend en charge ce type d’entrée.                                                                                                                |
| `max_files_in_memory`        | `integer` | `10`              | Nombre de fichiers récemment importés pouvant être conservés simultanément en mémoire. Plage : de `1` à `10`. Lorsque la limite est atteinte, les anciens fichiers sont remplacés par un bref résumé.                                              |
| `max_files_per_conversation` | `integer` | `10`              | Nombre total de fichiers qu’un utilisateur peut importer dans une conversation. Les importations sont facturées par fichier. Utilisez `-1` pour ne définir aucune limite. La valeur doit être `-1` ou supérieure ou égale à `max_files_in_memory`. |

Les utilisateurs peuvent joindre des fichiers dans le [widget](/docs/fr/eleven-agents/customization/widget), les canaux de chat pris en charge tels que [Slack](/docs/fr/eleven-agents/customization/integrations/slack), ou via l’API [d’importation d’un fichier de conversation](/docs/fr/eleven-agents/api-reference/conversations/upload-file).

#### Mettre à jour via le Dashboard

#### Ouvrir Entrée multimodale

Ouvrez votre agent dans le Dashboard, vérifiez que le modèle sélectionné prend en charge les entrées d’images et/ou de PDF, puis accédez à l’onglet **Avancé**.

#### Activer les pièces jointes

Sous **Entrée multimodale**, activez **Autoriser les pièces jointes**.

#### Définir les limites de fichiers

Vous pouvez définir **Fichiers conservés en mémoire** et **Nombre maximal de fichiers par conversation**.

#### Enregistrer vos modifications

Enregistrez l’agent. Les utilisateurs peuvent alors joindre des images et des PDF dans le chat.

#### Mettre à jour via la CLI

#### Récupérer la configuration de l’agent

```bash
elevenlabs agents pull --agent agent_7101k5zvyjhmfg983brhmhkd98n6
```

#### Modifier la configuration de l’agent

Définissez `conversation_config.conversation.file_input` :

```json
{
  "conversation_config": {
    "conversation": {
      "file_input": {
        "enabled": true,
        "max_files_in_memory": 10,
        "max_files_per_conversation": 10
      }
    }
  }
}
```

#### Envoyer la configuration de l’agent

```bash
elevenlabs agents push --agent agent_7101k5zvyjhmfg983brhmhkd98n6
```

#### Mettre à jour via l’API

```python
from elevenlabs import ElevenLabs

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.agents.update(
    agent_id="agent_7101k5zvyjhmfg983brhmhkd98n6",
    conversation_config={
        "conversation": {
            "file_input": {
                "enabled": True,
                "max_files_in_memory": 10,
                "max_files_per_conversation": 10,
            }
        }
    },
)
```

```typescript
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.agents.update("agent_7101k5zvyjhmfg983brhmhkd98n6", {
  conversationConfig: {
    conversation: {
      fileInput: {
        enabled: true,
        maxFilesInMemory: 10,
        maxFilesPerConversation: 10,
      },
    },
  },
});
```

## Entrée DTMF

L’entrée DTMF permet aux appelants de saisir des chiffres sur le clavier de leur téléphone pendant un appel. Utilisez-la pour collecter des numéros de téléphone, des choix de menu et d’autres entrées numériques sans recourir à la reconnaissance vocale.

C’est l’inverse de l’outil système [jouer une tonalité de touche du clavier](/docs/fr/eleven-agents/customization/tools/system-tools/play-keypad-touch-tone), qui envoie des tonalités depuis l’agent.

> **Warning**
>
> Seul le DTMF hors bande de
> [Twilio](/docs/fr/eleven-agents/phone-numbers/twilio-integration/native-integration), du [trunking SIP](/docs/fr/eleven-agents/phone-numbers/sip-trunking) (téléphonie) ou de
> [Genesys](/docs/fr/eleven-agents/phone-numbers/c-caa-s-integrations/genesys) est pris en charge. Les tonalités dans la bande
> du flux audio sont ignorées. Le widget web et les canaux de chat ne peuvent pas envoyer de DTMF.

Chaque pression sur une touche est mise en mémoire tampon jusqu’à ce que la séquence soit terminée. La fin d’une séquence crée un tour utilisateur.

1. L’appelant appuie sur une touche. Le premier chiffre interrompt l’agent s’il est en train de parler.
2. Les chiffres suivants sont ajoutés au même tampon.
3. La séquence se termine lorsque l’appelant appuie sur `#`, si la terminaison par dièse est activée, ou lorsqu’aucun autre chiffre n’arrive avant le délai d’expiration.
4. L’agent reçoit les chiffres collectés sous forme de tour utilisateur et répond.

`#` est un caractère de terminaison lorsque la terminaison par dièse est activée ; il n’est pas inclus dans la chaîne collectée. Un `#` saisi lorsque le tampon est vide est ignoré. Le tampon accepte `0-9`, `*`, `#` et `A-D`, jusqu’à 50 caractères.

### Configuration

`conversation_config.conversation.dtmf_input_settings` est `null` lorsque l’entrée DTMF est désactivée. Lorsqu’elle est activée, les valeurs par défaut sont les suivantes :

| Champ                | Type      | Valeur par défaut | Description                                                                                                                                              |
| -------------------- | --------- | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `dtmf_input_timeout` | `float`   | `2.0`             | Nombre de secondes d’attente après la dernière pression de touche avant de terminer la séquence. Plage : de `0.5` à `10.0`.                              |
| `hash_terminator`    | `boolean` | `true`            | Si la valeur est `true`, `#` termine immédiatement la séquence et n’est pas inclus dans les chiffres collectés.                                          |
| `redact_input`       | `boolean` | `false`           | Si la valeur est `true`, les saisies au clavier sont remplacées par `<REDACTED>` dans la transcription stockée, le journal de conversation et l’analyse. |

Le masquage s’applique au tour de saisie au clavier dans les données de conversation stockées. Il ne masque pas les chiffres pour l’agent pendant l’appel en direct et ne modifie pas les chiffres que l’agent prononce ou envoie à un outil. Cela est distinct du [masquage de l’historique des conversations](/docs/fr/eleven-agents/customization/privacy/conversation-history-redaction).

#### Mettre à jour via le Dashboard

#### Ouvrir Entrée multimodale

Ouvrez votre agent dans le Dashboard et accédez à l’onglet **Avancé**.

#### Activer l’entrée DTMF

Sous **Entrée multimodale**, activez **Activer l’entrée DTMF**.

#### Configurer le délai et le masquage

Vous pouvez définir **Délai d’expiration de l’entrée DTMF**, **Utiliser # pour terminer l’entrée DTMF** et **Masquer l’entrée DTMF**.

#### Enregistrer vos modifications

Enregistrez l’agent, puis passez un appel téléphonique et saisissez des chiffres sur le clavier.

#### Mettre à jour via la CLI

#### Récupérer la configuration de l’agent

```bash
elevenlabs agents pull --agent agent_7101k5zvyjhmfg983brhmhkd98n6
```

#### Modifier la configuration de l’agent

Définissez `conversation_config.conversation.dtmf_input_settings`. Omettez l’objet, ou définissez sa valeur sur `null`, pour désactiver l’entrée DTMF.

```json
{
  "conversation_config": {
    "conversation": {
      "dtmf_input_settings": {
        "dtmf_input_timeout": 2.0,
        "hash_terminator": true,
        "redact_input": false
      }
    }
  }
}
```

#### Envoyer la configuration de l’agent

```bash
elevenlabs agents push --agent agent_7101k5zvyjhmfg983brhmhkd98n6
```

#### Mettre à jour via l’API

```python
from elevenlabs import ElevenLabs

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.agents.update(
    agent_id="agent_7101k5zvyjhmfg983brhmhkd98n6",
    conversation_config={
        "conversation": {
            "dtmf_input_settings": {
                "dtmf_input_timeout": 2.0,
                "hash_terminator": True,
                "redact_input": False,
            }
        }
    },
)
```

```typescript
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.agents.update("agent_7101k5zvyjhmfg983brhmhkd98n6", {
  conversationConfig: {
    conversation: {
      dtmfInputSettings: {
        dtmfInputTimeout: 2.0,
        hashTerminator: true,
        redactInput: false,
      },
    },
  },
});
```

Mettez à jour le [prompt système](/docs/fr/eleven-agents/best-practices/prompting-guide) de l’agent afin qu’il sache quand demander une saisie au clavier. Par exemple :

```text
If you need the caller's phone number, ask them to type it on their keypad. Wait for the DTMF
input before continuing.
```