Jouer une tonalité de clavier

Permettez aux agents de jouer des tonalités DTMF pour interagir avec des systèmes téléphoniques automatisés et naviguer dans les menus.

Vue d’ensemble

L’outil de tonalités du clavier permet aux agents ElevenLabs de jouer des tonalités DTMF (Dual-Tone Multi-Frequency) lors d’appels téléphoniques. Ce sont les tonalités émises lorsque vous appuyez sur des chiffres de votre clavier. Les agents peuvent ainsi interagir avec des systèmes téléphoniques automatisés, naviguer dans des menus vocaux, saisir des extensions, entrer des codes PIN et effectuer d’autres opérations par tonalités qui exigeraient habituellement qu’un appelant humain appuie sur les touches de son téléphone.

Cet outil système prend en charge les tonalités DTMF standard (0-9, *, #), ainsi que des commandes de pause pour contrôler le minutage. Il fonctionne avec les intégrations téléphoniques Twilio et de trunking SIP, en générant automatiquement les tonalités audio adaptées à l’infrastructure de téléphonie sous-jacente.

Pour recueillir les chiffres saisis au clavier par les appelants, consultez la saisie DTMF.

Fonctionnalités

  • Tonalités DTMF standard : prend en charge tous les caractères standard du clavier (0-9, *, #)
  • Contrôle des pauses : inclut des commandes de pause pour un minutage précis (w = 0,5 s, W = 1,0 s)
  • Prise en charge de plusieurs fournisseurs : fonctionne avec les intégrations Twilio et de trunking SIP

Cet outil système permet de naviguer dans les menus téléphoniques, de saisir des extensions et des codes. Le LLM détermine quand et quelles tonalités jouer selon le contexte de la conversation.

La description par défaut de l’outil indique au LLM qui alimente la conversation qu’il peut jouer ces tonalités, et nous vous recommandons de mettre à jour le prompt système de votre agent pour préciser quand il doit appeler cet outil.

Paramètres :

  • reason (chaîne, facultatif) : la raison de la lecture des tonalités DTMF (par exemple, « navigation vers l’extension », « saisie du code PIN »)
  • dtmf_tones (chaîne, obligatoire) : la séquence DTMF à lire. Caractères valides : 0-9, *, #, w (pause de 0,5 s), W (pause de 1 s)

Format d’appel de fonction :

{
"type": "function",
"function": {
"name": "play_keypad_touch_tone",
"arguments": "{"reason": "Navigating to customer service", "dtmf_tones": "2"}"
}
}

DTMF hors bande

Par défaut, les tonalités DTMF sont envoyées comme signaux audio en bande dans le flux vocal. Toutefois, certains systèmes IVR (Interactive Voice Response) peuvent ne pas détecter ces tonalités en bande de manière fiable, en raison de la compression audio, des conditions réseau ou de la configuration du système.

Le DTMF hors bande (RFC 4733) envoie les tonalités sous forme de paquets RTP distincts plutôt que sous forme audio. Cette méthode est plus fiable pour les implémentations de trunking SIP lorsque les systèmes IVR destinataires peinent à détecter le DTMF en bande standard.

Pour activer le DTMF hors bande :

  1. Accédez à la configuration des outils de votre agent
  2. Sélectionnez l’outil Jouer une tonalité de clavier
  3. Cochez la case Utiliser le DTMF hors bande (RFC 4733)

Le DTMF hors bande est disponible uniquement pour les appels de trunking SIP. Ce paramètre sera ignoré pour les appels utilisant l’intégration native Twilio.

Caractères pris en charge

L’outil prend en charge les caractères et commandes DTMF suivants :

  • Chiffres : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
  • Tonalités spéciales : * (astérisque), # (dièse)
  • Commandes de pause :
    • w - Pause courte (0,5 seconde)
    • W - Pause longue (1,0 seconde)

Implémentation de l’API

Vous pouvez configurer l’outil système play_keypad_touch_tone lors de la création ou de la mise à jour d’un agent via l’API. Cet outil ne nécessite aucun paramètre de configuration supplémentaire au-delà de son activation.

from elevenlabs import AgentConfig, ConversationalConfig, ElevenLabs
elevenlabs = ElevenLabs(api_key="YOUR_API_KEY")
response = elevenlabs.conversational_ai.agents.create(
conversation_config=ConversationalConfig(
agent=AgentConfig(
first_message="Hi, I can help you navigate phone systems. How can I assist you today?",
prompt={
"prompt": "You are a helpful assistant that can interact with phone systems.",
"built_in_tools": {
"play_keypad_touch_tone": {
"type": "system",
"name": "play_keypad_touch_tone",
# Optional custom description
"description": "Play DTMF tones to interact with automated phone systems.",
"params": {"system_tool_type": "play_keypad_touch_tone"},
}
},
},
),
),
)

L’outil fonctionne uniquement pendant les appels téléphoniques actifs propulsés par Twilio ou le trunking SIP. Il renverra une erreur s’il est appelé en dehors du contexte d’une conversation téléphonique.