Enviar e receber DTMF

O Dual Tone Multi Frequency (DTMF) é um tipo de sinalização utilizado por sistemas telefônicos para transmitir os dígitos 0-9 e o * e # caracteres. Normalmente, quem liga pressiona essas teclas no teclado do telefone, e o aparelho gera então um tom composto por duas frequências reproduzidas simultaneamente (daí o nome “Dual Tone”).

O DTMF é utilizado tanto para discar um número em um telefone fixo quanto para enviar sinais ao destinatário assim que a chamada é atendida. Normalmente, ele é usado para implementar um sistema de Resposta Interativa de Voz (IVR) ou para inserir informações, como um número PIN ou o código de acesso a uma teleconferência.

Este guia explica como enviar e receber entradas DTMF usando o Client SDK. Antes de começar, certifique-se de ter adicionado o Client SDK ao seu aplicativo e (Android, iOS, JS) e você consegue fazer ou receber chamadas.

Enviar DTMF

É possível enviar tons DTMF para uma chamada em andamento.

// After creating a session
client.sendDTMF(callId, "1234")
    .then(() => {
        console.log("Success sending DTMF.");
    })
    .catch(error => {
        console.error("Error sending DTMF: ", error);
    });

Durante uma chamada em andamento, em que seu backend implementou um NCCO com uma ação de entrada, o envio de um DTMF acionará o definido "eventUrl".

Receber DTMF

Sempre que um participante de uma chamada envia um evento DTMF, todos os demais participantes da chamada são notificados sobre esse evento.

// After creating a session
client.on("dtmf", (callId, legId, digits) => {
  console.log(`leg: ${legId}: has received DTMF digits ${digits}`);
});

Referência