Voice

O que é uma API de voz?

Uma API de voz permite que uma aplicação configure, controle ou inspecione chamadas telefônicas por meio de uma interface de software documentada.

Um callback, um menu telefônico e um assistente de voz usam partes diferentes de uma plataforma de chamadas.

O que uma API de voz pode controlar?

Uma API de voz pode expor configuração, controle de chamadas e relatórios, com as operações suportadas definidas pelo provedor.

Configuração abrange troncos, identidades de chamador, destinos e roteamento de números. Controle de chamadas abrange o comportamento dentro de uma conversa, como prompts ou entrada pelo teclado. Relatórios retornam o status da chamada, duração e outros resultados registrados.

Os provedores expressam o controle de chamadas de formas diferentes. O TwiML da Twilio, por exemplo, descreve ações por meio de instruções retornadas à Twilio. Migrar uma aplicação, portanto, significa mapear seu comportamento e expectativas de callback, não apenas substituir um hostname.

Um método que lê uma chamada não é uma operação que inicia uma.

Como uma API e SIP funcionam juntos?

Uma API de aplicação pode configurar ou controlar um serviço enquanto SIP estabelece a sessão telefônica por baixo.

SIP, o protocolo de sinalização de chamadas, cria, modifica e encerra sessões. Ele negocia como os participantes se conectam. RTP transporta mídia em tempo real, como áudio.

Os caminhos podem falhar de forma independente. Uma chamada pode tocar enquanto uma configuração de mídia ou caminho de rede impede que um participante ouça o outro. Teste o áudio em ambas as direções, além do toque e do desligamento.

Um PBX, o sistema telefônico corporativo que roteia chamadas, pode manter seu tratamento de chamadas enquanto usa troncos SIP de um provedor. Um runtime conversacional pode usar uma conexão semelhante enquanto fornece fala e ferramentas de negócio por conta própria.

O que posso consultar sobre uma chamada?

Um registro de chamada identifica a tentativa e reporta seu estado observado. Os campos disponíveis dependem da operação e do estágio da chamada.

  • Conexão: se a chamada foi admitida, tocou e recebeu uma resposta.
  • Mídia: se os participantes conseguiram ouvir e interagir entre si.
  • Resultado de negócio: se o agendamento, callback ou tarefa de suporte pretendida foi concluída.

Uma chamada telefônica atendida pode chegar a uma pessoa, à caixa postal ou a outro sistema automatizado. O registro de chamada sozinho não pode provar que um cliente concluiu uma tarefa.

Eventos ajudam sua aplicação a reagir a mudanças. Trate duplicatas e entregas atrasadas e, em seguida, reconcilie atualizações ausentes ou incertas com o estado registrado pelo provedor.

Como construo isso com Bird?

Você configura chamadas de saída com um tronco SIP, um caller ID verificado e um país de destino habilitado.

Alterações de configuração exigem voice_management no nível de escrita.

No tronco, outbound_enabled deve ser true. O domain é o endereço ao qual seu cliente SIP se conecta. A autenticação por chave API lista sua chave em allowed_api_key_ids; a chave precisa de voice no nível de escrita. Atualizar essa lista substitui todas as entradas, então mantenha chaves que outros clientes ainda usam.

Seu caller ID precisa de status: verified, que confirma que seu espaço de trabalho completou a chamada de verificação. O phone_number contém o número internacional, incluindo o + inicial.

O país de destino precisa de enabled: true e status: available. Habilitar um país não torna um destino não suportado alcançável.

O telefone no navegador também precisa de session_credentials_enabled: true no tronco e de MD5 na lista digest_algorithms do tronco.

Depois de uma chamada, você consulta status, rejection_reason e sip_response_code. As operações de listagem de trechos e leitura de um trecho retornam esses campos. Essas operações relatam tentativas. Seu aplicativo SIP as inicia.

Para um menu telefônico, você configura prompts e ramificações de teclado na aplicação conectada. Um runtime de voz com IA fornece fala, raciocínio e ferramentas de negócio para uma conversa.

Em resumo

  1. As APIs de voz expõem operações diferentes.

    Configuração, controle de chamadas e registros de chamadas são interfaces diferentes. Uma operação de leitura não implica uma forma de realizar uma chamada.

  2. Sinalização e áudio têm caminhos separados.

    SIP estabelece e altera a sessão. A mídia transporta o que os participantes ouvem, então uma sinalização bem-sucedida sozinha não prova que o áudio funciona.

  3. Uma chamada atendida não comprova a conclusão da tarefa.

    Uma chamada atendida pode chegar à caixa postal ou a outro sistema. A aplicação responsável pela tarefa confirma se ela foi concluída.

Coloque em prática.

Continue com a documentação, guias e exemplos sobre este tópico. Os recursos estão em inglês.

Obtenha um resumo de implementação

Construa na mesma rede.

Uma chave de API de teste é sua imediatamente. A produção é desbloqueada quando adicionar um método de pagamento e verificar um remetente.

Sua próxima ideia.
Pronta para conectar.