Visão Geral
Os controles DTMF (Dual-Tone Multi-Frequency) permitem que seus agentes de IA enviem e capturem tons de teclado telefônico durante conversas. Isso permite que os agentes naveguem sistemas IVR, interajam com sistemas telefônicos legados e coletem entrada estruturada de chamadores através de toques de teclas - transformando seu agente de apenas voz para um sistema completo de automação telefônica. As capacidades DTMF são essenciais para integrar agentes de IA com infraestrutura telefônica empresarial existente, permitindo transferências sem costura através de menus IVR complexos e coletando entrada numérica precisa como números de conta, códigos PIN ou seleções de menu.O que é DTMF?
Compreendendo a Tecnologia DTMF
DTMF é o sinal gerado quando você pressiona teclas em um teclado telefônico. Cada tecla produz dois tons simultâneos em frequências diferentes - um alto e um baixo - criando um som único que os sistemas podem decodificar para identificar qual tecla foi pressionada. Teclas disponíveis:- Dígitos: 0-9 (entrada numérica)
- Asterisco: * (frequentemente usado como “voltar” ou “cancelar”)
- Sustenido/Cerquilha: # (frequentemente usado como “confirmar” ou “entrar”)
- Navegar menus IVR (“Pressione 1 para Vendas, 2 para Suporte”)
- Entrar números de conta ou PINs
- Confirmar ou cancelar ações
Capacidades DTMF
Duas Funções Principais
Envio de Tons
Captura de Tons
Casos de Uso de Envio de Tons
Navegação IVR
Navegação IVR
Autenticação
Autenticação
Integração de Sistemas
Integração de Sistemas
Casos de Uso de Captura de Tons
Seleção de Menu
Seleção de Menu
Coleta de Informações
Coleta de Informações
Entrada por Teclado
Entrada por Teclado
Configurando Controles DTMF
Acessando Configurações DTMF
Navegue para Configuração DTMF


Alternância Global DTMF
Ativar DTMF durante chamadas Permitir que o agente envie tons de teclado e colete dígitos de chamadores. Quando ativar:- Agente precisa navegar sistemas IVR
- Agente precisa coletar entrada numérica estruturada
- Integração requer interação DTMF
Configuração de Envio de Tons
Envio de Tons
Configure seu agente para enviar tons DTMF para sistemas externos. Alternância: Permitir que o agente envie tons de teclado Parâmetros:- Tempo de espera entre tons (segundos): 3 segundos (padrão)
- Duração do tom (ms): 120 ms (padrão)
- Intervalo entre tons (ms): 70 ms (padrão)
Parâmetros de Envio de Tons
Tempo de espera entre tons (segundos)
Tempo de espera entre tons (segundos)
- Aumentar (4-5s): Sistemas IVR lentos/legados perdendo tons
- Diminuir (1-2s): Sistemas modernos rápidos, reduzir tempo total de navegação
Duração do tom (ms)
Duração do tom (ms)
- Aumentar (150-200ms): Sistemas IVR não detectando tons de forma confiável
- Diminuir (80-100ms): Acelerar interações, reduzir latência
Intervalo entre tons (ms)
Intervalo entre tons (ms)
- Aumentar (100-150ms): IVR tratando tons rápidos como entrada única
- Diminuir (40-50ms): Acelerar sequências de múltiplos dígitos
Configurações Recomendadas por Caso de Uso
IVRs Modernos Rápidos
IVRs Modernos Rápidos
- Tempo de espera: 1-2 segundos
- Duração do Tom: 100ms
- Intervalo entre tons: 50ms
IVRs Padrão (Padrão)
IVRs Padrão (Padrão)
- Tempo de espera: 3 segundos (padrão)
- Duração do Tom: 120ms (padrão)
- Intervalo entre tons: 70ms (padrão)
IVRs Lentos/Problemáticos
IVRs Lentos/Problemáticos
- Tempo de espera: 4-5 segundos
- Duração do Tom: 150ms
- Intervalo entre tons: 100ms
Configuração de Captura de Tons
Modos de Captura
Escolha como seu agente recebe e interpreta entrada DTMF de chamadores.Menu (tecla única)
Coletor (múltiplos dígitos)
Modo Menu
Para seleções de menu estilo IVR O modo Menu captura uma única pressão de tecla e a envia imediatamente ao agente.

- Agente apresenta opções de menu
- Cliente pressiona tecla única (0-9, *, #)
- Agente recebe dígito imediatamente
- Agente responde baseado na tecla pressionada
- Captura pressão de tecla única
- Processa imediatamente
- Nenhuma tecla de terminação necessária
- Tecla limpar não disponível
Modo Coletor
Para coletar sequências como números de conta, PINs, números de telefone O modo Coletor armazena múltiplos dígitos até que o usuário pressione a tecla de terminação ou o timeout expire.

- Agente solicita entrada de múltiplos dígitos
- Cliente insere múltiplos dígitos
- Pressiona tecla de terminação (geralmente #) quando completo
- Agente recebe string completa de dígitos
- Dígitos mínimos: 1 (padrão)
- Dígitos máximos: 25 (padrão)
- Timeout (ms): 6000ms (6 segundos, padrão)
- Tecla de terminação: # (Sustenido)
- Tecla de limpar entrada: * (Asterisco)
Parâmetros do Modo Coletor
Dígitos mínimos
Dígitos mínimos
- Número de conta (10 dígitos): Definir para 10
- PIN (4 dígitos): Definir para 4
- Entrada flexível: Definir para 1 (qualquer comprimento aceito)
- Se cliente pressionar # antes do mínimo ser atingido → Erro, solicitar reinserção
- Se cliente atingir mínimo → Pode pressionar # para enviar antes
Dígitos máximos
Dígitos máximos
- Número de telefone: Definir para 10 (formato EUA)
- Número de conta: Definir para comprimento esperado
- Comprimento variável: Definir mais alto que máximo esperado
- Quando dígitos máximos inseridos → Envia automaticamente sem requerer #
- Tons após máximo são ignorados
Timeout (ms)
Timeout (ms)
- Timer inicia após cada pressão de dígito
- Reinicia com cada novo dígito
- Se timeout atingido → Tratar como completo ou solicitar mais
- Entrada rápida (PIN): 3000-4000ms (3-4 segundos)
- Entrada longa (número de conta): 6000-8000ms (6-8 segundos)
- Sistema paciente: 10000ms+ (10+ segundos)
Tecla de terminação
Tecla de terminação
Tecla de limpar entrada
Tecla de limpar entrada
Configurações Recomendadas do Coletor por Caso de Uso
Coleta de Número de Conta (10 dígitos)
Coleta de Número de Conta (10 dígitos)
- Dígitos mínimos: 10
- Dígitos máximos: 10
- Tecla de terminação: # (opcional, auto-envia em 10)
- Timeout: 6000ms (6 segundos)
- Tecla de limpar entrada: *
Coleta de PIN (4-6 dígitos)
Coleta de PIN (4-6 dígitos)
- Dígitos mínimos: 4
- Dígitos máximos: 6
- Tecla de terminação: #
- Timeout: 4000ms (4 segundos)
- Tecla de limpar entrada: *
Número de Telefone (Formato Variável)
Número de Telefone (Formato Variável)
- Dígitos mínimos: 7
- Dígitos máximos: 15
- Tecla de terminação: #
- Timeout: 6000ms (6 segundos)
- Tecla de limpar entrada: *
Entrada Numérica Flexível (Padrão)
Entrada Numérica Flexível (Padrão)
- Dígitos mínimos: 1 (padrão)
- Dígitos máximos: 25 (padrão)
- Tecla de terminação: #
- Timeout: 6000ms (6 segundos, padrão)
- Tecla de limpar entrada: *
Usando DTMF em Instruções
Solicitando Entrada DTMF
Exemplo de seleção de menu:Tratando Respostas DTMF
Processamento automático: Quando a captura DTMF está ativada, o agente automaticamente recebe dígitos coletados e pode responder a eles. Nenhuma configuração adicional necessária. Avançado: Usando a ferramenta wait_for_dtmf_input Para controle explícito em suas instruções de agente, você pode chamar a ferramentawait_for_dtmf_input. Ela retorna:
Fallback para Voz
Oferecendo alternativa de voz:Testando Configuração DTMF
Plano de Teste
Testar Envio de Tons (Navegação IVR)
- Configurar agente com ação de transferência para número de telefone com IVR
- Adicionar instruções para navegar IVR usando tons DTMF
- Iniciar chamada de teste
- Acionar ação de transferência
- Monitorar agente navegando IVR (verificar logs para tons enviados)
- Verificar que agente alcança destino correto
- Tons enviados em intervalos corretos
- IVR reconhece todos os tons
- Navegação completa com sucesso
- Sem tons perdidos ou mal interpretados
Testar Modo Menu (Captura de Tecla Única)
- Configurar DTMF em modo Menu
- Adicionar opções de menu às instruções
- Iniciar chamada de teste
- Ouvir opções de menu
- Pressionar tecla única (1, 2, 3, etc.)
- Verificar que agente reconhece e responde apropriadamente
| Tecla | Ação Esperada |
|---|---|
| 1 | Encaminhar para opção 1 |
| 2 | Encaminhar para opção 2 |
| 9 | Encaminhar para opção 9 |
| * | Lidar com tecla asterisco |
| # | Lidar com tecla sustenido |
| Inválida | Tratamento de erro |
Testar Modo Coletor (Múltiplos Dígitos)
- Configurar DTMF em modo Coletor
- Definir dígitos min/max apropriados, tecla de terminação
- Iniciar chamada de teste
- Solicitar agente para coletar dígitos
- Inserir várias sequências de dígitos:
- Exatamente dígitos mínimos + #
- Entre min e max dígitos + #
- Exatamente dígitos máximos (auto-envio)
- Usar tecla limpar (*) para corrigir erros
- Deixar entrada expirar
- Verificar que agente recebe string correta de dígitos
- Aplicação de dígitos mínimos funciona
- Auto-envio de dígitos máximos funciona
- Tecla de terminação finaliza entrada adequadamente
- Tecla limpar deleta corretamente último dígito
- Tratamento de timeout apropriado
Testar Casos Extremos
- Pressionar # imediatamente (sem dígitos)
- Deve rejeitar se min > 0
- Inserir dígitos parciais, aguardar timeout
- Verificar tratamento apropriado
- Inserir dígitos muito rapidamente
- Verificar que todos foram capturados corretamente
- Pressionar * em buffer vazio (deve ignorar)
- Pressionar * múltiplas vezes (deleta múltiplos dígitos)
- Inserir dígitos, limpar todos, inserir nova sequência
- Pressionar teclas em modo errado (ex: # em modo Menu)
- Segurar tecla por muito tempo
- Pressionar múltiplas teclas simultaneamente
Testar Integração com Instruções
- Agente solicita entrada DTMF adequadamente
- Agente aguarda entrada (não continua falando)
- Agente confirma recebimento de entrada
- Agente processa corretamente valor capturado
- Agente lida com entrada inválida graciosamente
- Agente oferece fallback de voz quando apropriado
Problemas Comuns de Teste
Tons Não Detectados
Tons Não Detectados
- Suporte DTMF não ativado globalmente
- Duração do tom muito curta para detecção
- Problemas de rede/codec degradando tons
- Instruções não lidando com variável DTMF
- Verificar que alternância de Suporte DTMF está LIGADA
- Aumentar duração do tom para 150-200ms
- Testar de telefone/rede diferente
- Verificar logs para confirmar que ferramenta
wait_for_dtmf_inputestá registrada e invocada - Verificar que
session.userdata.last_dtmf_inputestá sendo populado nos logs do worker
Dígitos Errados Capturados
Dígitos Errados Capturados
- Intervalo entre tons muito curto (tons misturando)
- Ruído de fundo criando tons falsos
- Cliente pressionando teclas muito rapidamente
- Aumentar intervalo entre tons para 100-150ms
- Testar em ambiente silencioso
- Aumentar timeout para desacelerar entrada do cliente
- Adicionar validação e confirmação em instruções
Navegação IVR Falhando
Navegação IVR Falhando
Tecla Limpar Não Funcionando
Tecla Limpar Não Funcionando
- Tecla limpar não configurada adequadamente
- Tecla limpar pressionada em modo Menu (não aplicável)
- * atribuído como tecla de terminação (conflito)
- Verificar que tecla limpar está definida como * no modo Coletor
- Garantir que modo é Coletor (tecla limpar só funciona em Coletor)
- Não usar * como tecla limpar e de terminação
Melhores Práticas
Sempre Ofereça Fallback de Voz
Sempre Ofereça Fallback de Voz
- Telefones móveis em áreas de sinal fraco
- Aplicativos VoIP sem teclado
- Necessidades de acessibilidade
- Preferência por interação de voz
Confirme Entrada Recebida
Confirme Entrada Recebida
Instruções Claras para Prompts DTMF
Instruções Claras para Prompts DTMF
- O que inserir (número de conta, PIN, seleção)
- Quantos dígitos (se comprimento fixo)
- Tecla de terminação (se aplicável)
- Método alternativo (voz)
Comece com Temporização Conservadora
Comece com Temporização Conservadora
- Começar com padrões recomendados
- Implantar para grupo de teste pequeno
- Monitorar erros DTMF em logs
- Ajustar temporização baseado em falhas reais
- Implementar configurações otimizadas
- Definir temporização muito rápida sem testar
- Assumir que todos os IVRs se comportam igualmente
- Otimizar para velocidade sobre confiabilidade
Lide com Tentativas Graciosamente
Lide com Tentativas Graciosamente
- Desistir após falha única
- Repetir exatamente as mesmas instruções (não é útil)
- Ficar preso em loop infinito de tentativas