Provedor de serviços de voz

O provedor do Voice permite que você receba webhooks do Voice API. Você também pode baixar as gravações das chamadas.

Funções

  • onCall - essa função permite que você retorne um NCCO para webhooks de chamadas recebidas usando a Voice API. Veja o trecho de código aqui.
  • onCallEvent - essa função permite que você gerencie webhooks de eventos de chamadas usando a Voice API. Veja o trecho de código aqui.
  • getCallRecording - essa função permite baixar a gravação de uma chamada assim que ela for concluída. Veja o trecho de código aqui.
  • uploadCallRecording - essa função auxiliar permite que você armazene diretamente as chamadas da Voice API com o Provedor de ativos. Veja o trecho de código aqui.

Observação: Use o vcr.verifyAuth método para verificar se as chamadas de retorno têm origem na Cloud Runtime Platform.

Inicializando o provedor de voz

Para usar o Voice Provider, é necessário criar uma instância do provedor por meio de uma sessão:

const session = vcr.createSession();
const voice = new Voice(session);

Regiões

As chamadas recebidas pela Voice API serão direcionadas aos data centers na mesma região que a aplicação especificada em seu vcr.yml. Por exemplo, aplicativos com aws.use1 no arquivo de configuração será tratado pelos EUA Centro de dados da Voice API. Você pode especificar qual região deseja que o provedor de voz utilize, fornecendo uma URL de região ao inicializador:

const session = vcr.createSession();
const voice = new Voice(session, 'https://api-us-3.vonage.com');

Para sua conveniência, os webhooks recebidos da Voice API terão um region_url propriedade que você pode passar diretamente para o inicializador do provedor do Voice:

{
    "conversation_uuid": "CON-6f25f6f9-aefc-4c63-bec9-c9f6246d9ff7",
    "from": "4471234567890",
    "region_url": "https://api-us-3.vonage.com",
    "to": "4471234567891",
    "uuid": "9ba07541b67ce06fd2a69432308d2a5a"
}

Caso de uso

Por exemplo, você pode usar o provedor de voz para atender uma chamada recebida pela Voice API:

const session = vcr.createSession();
const voice = new Voice(session);

await voice.onCall('onCall');

app.post('/onCall', async (req, res, next) => {
    res.json([
        {
            action: 'talk',
            text: 'Hello from Vonage!'
        }
    ]);
});
``