.NET

Configure seus pré-requisitos

Existem alguns pré-requisitos que você precisa cumprir antes de poder seguir com este tutorial. Se você já tiver cumprido algum deles, fique à vontade para pular essa etapa.

Você pode criar um account na Vonage pelo Painel de controle.

No Painel de Controle, você pode criar Applications e adquirir Numbers da Vonage. Você também pode realizar essas tarefas usando o CLI da Vonage.

Siga as etapas descritas no Introdução ao Vonage CLI página para instalar e configurar a linha de comando.

Você deve tornar seu webhook acessível às APIs da Vonage pela Internet pública. Uma maneira simples de fazer isso durante o desenvolvimento, sem precisar configurar seu próprio servidor, é usar Ngrok. Para saber mais, leia nossa documentação sobre o Ngrok.

Baixe e instale o ngrok e, em seguida, execute o comando a seguir para expor seu aplicativo na porta 3000 para a Internet pública:

./ngrok http 3000

Se você for um assinante pago, pode digitar:

./ngrok http 3000 -subdomain=your_domain

NOTA: Neste exemplo, o Ngrok redirecionará os webhooks do Vonage que você especificou ao criar seu aplicativo do Vonage para localhost:3000. Embora a porta 3000 seja mostrada aqui, você pode usar qualquer porta livre que seja conveniente.

Existem dois métodos para criar um aplicativo Voice:

  1. Como usar a CLI da Vonage
  2. Como usar o painel

Cada um desses métodos é descrito nas seções a seguir.

Como criar um aplicativo de voz usando a CLI da Vonage

Para criar seu aplicativo usando a CLI da Vonage, digite o seguinte comando no shell, substituindo NGROK_HOST_NAME com o host do ngrok que você obteve ao configurar o ngrok:

Para criar seu aplicativo usando o CLI da Vonage, digite o seguinte comando:

vonage apps create 'Your application'

✅ Creating Application
Saving private key ... Done!
Application created

Name: Your application
Application ID: 00000000-0000-0000-0000-000000000000
Improve AI: Off
Private/Public Key: Set

Capabilities:
  None Enabled
vonage apps create 'Your application'

✅ Creating Application
Saving private key ... Done!
Application created

Name: Your application
Application ID: 00000000-0000-0000-0000-000000000000
Improve AI: Off
Private/Public Key: Set

Capabilities:
  None Enabled
vonage apps create 'Your application' ✅ Creating Application Saving private key ... Done! Application created Name: Your application Application ID: 00000000-0000-0000-0000-000000000000 Improve AI: Off Private/Public Key: Set Capabilities: None Enabled

Em seguida, adicione recursos de voz ao seu aplicativo (use o nome do host de ngrok em vez de example.com)

vonage apps capabilities update 00000000-0000-0000-0000-000000000000 voice `
  --voice-answer-url='https://example.com/webhooks/voice/answer' `
  --voice-event-url='https://example.com/webhooks/voice/event' `
  --voice-fallback-url='https://example.com/webhooks/voice/fallback'
  
✅ Fetching Application
✅ Adding voice capability to application 00000000-0000-0000-0000-000000000000

Name: Your application
Application ID: 00000000-0000-0000-0000-000000000000
Improve AI: Off
Private/Public Key: Set

Capabilities:
 VOICE:
    Uses Signed callbacks: On
    Conversation TTL: 41 hours
    Leg Persistence Time: 6 days
    Event URL: [POST] https://example.com/webhooks/voice/event
    Answer URL: [POST] https://example.com/webhooks/voice/answer
    Fallback URL: [POST] https://example.com/webhooks/voice/fallback
vonage apps capabilities update 00000000-0000-0000-0000-000000000000 voice ^
  --voice-answer-url='https://example.com/webhooks/voice/answer' ^
  --voice-event-url='https://example.com/webhooks/voice/event' ^
  --voice-fallback-url='https://example.com/webhooks/voice/fallback'
  
✅ Fetching Application
✅ Adding voice capability to application 00000000-0000-0000-0000-000000000000

Name: Your application
Application ID: 00000000-0000-0000-0000-000000000000
Improve AI: Off
Private/Public Key: Set

Capabilities:
 VOICE:
    Uses Signed callbacks: On
    Conversation TTL: 41 hours
    Leg Persistence Time: 6 days
    Event URL: [POST] https://example.com/webhooks/voice/event
    Answer URL: [POST] https://example.com/webhooks/voice/answer
    Fallback URL: [POST] https://example.com/webhooks/voice/fallback
vonage apps capabilities update 00000000-0000-0000-0000-000000000000 voice \ --voice-answer-url='https://example.com/webhooks/voice/answer' \ --voice-event-url='https://example.com/webhooks/voice/event' \ --voice-fallback-url='https://example.com/webhooks/voice/fallback' ✅ Fetching Application ✅ Adding voice capability to application 00000000-0000-0000-0000-000000000000 Name: Your application Application ID: 00000000-0000-0000-0000-000000000000 Improve AI: Off Private/Public Key: Set Capabilities: VOICE: Uses Signed callbacks: On Conversation TTL: 41 hours Leg Persistence Time: 6 days Event URL: [POST] https://example.com/webhooks/voice/event Answer URL: [POST] https://example.com/webhooks/voice/answer Fallback URL: [POST] https://example.com/webhooks/voice/fallback

Este comando cria uma aplicação da Vonage com recursos de voz capacidade. Isso
configura as Applications com suas URLs de resposta e de webhook de eventos e gera um arquivo de chave privada private.key, que você deve salvar no diretório do seu projeto.

O comando retorna um ID de aplicativo exclusivo. Use esse ID de aplicativo para vincular seu número virtual da Vonage ao seu aplicativo, executando o seguinte:

vonage apps numbers link 00000000-0000-0000-0000-000000000000 16127779311

✅ Fetching Application
Fetching Owned numbers [===============================================] 1/1 100%

Number linked

Number: 16127779311
Country: 🇺🇸 United States
Type: Toll-free
Features: MMS, SMS, VOICE
Monthly Cost: Not Set
Setup Cost: Not Set
Linked Application ID: 00000000-0000-0000-0000-000000000000
Voice Callback: app
Voice Callback Value: 00000000-0000-0000-0000-000000000000
Voice Status Callback: Not Set
vonage apps numbers link 00000000-0000-0000-0000-000000000000 16127779311

✅ Fetching Application
Fetching Owned numbers [===============================================] 1/1 100%

Number linked

Number: 16127779311
Country: 🇺🇸 United States
Type: Toll-free
Features: MMS, SMS, VOICE
Monthly Cost: Not Set
Setup Cost: Not Set
Linked Application ID: 00000000-0000-0000-0000-000000000000
Voice Callback: app
Voice Callback Value: 00000000-0000-0000-0000-000000000000
Voice Status Callback: Not Set
vonage apps numbers link 00000000-0000-0000-0000-000000000000 16127779311 ✅ Fetching Application Fetching Owned numbers [===============================================] 1/1 100% Number linked Number: 16127779311 Country: 🇺🇸 United States Type: Toll-free Features: MMS, SMS, VOICE Monthly Cost: Not Set Setup Cost: Not Set Linked Application ID: 00000000-0000-0000-0000-000000000000 Voice Callback: app Voice Callback Value: 00000000-0000-0000-0000-000000000000 Voice Status Callback: Not Set

Isso vinculará esse Número Virtual da Vonage ao seu aplicativo, fazendo com que todos os eventos de voz relacionados a esse número sejam encaminhados para os URLs que você indicar.

Como criar um aplicativo de voz usando o Painel de Controle

Você pode criar Applications de voz no Painel de controle.

Para criar seu aplicativo usando o Painel:

  1. Sob Applications No Painel, clique no Criar um novo aplicativo botão.

  2. Sob Nome, digite o nome da Application. Escolha um nome que facilite a identificação futura.

  3. Clique no botão Gerar chave pública e chave privada. Isso criará um par de chaves pública/privada, e a chave privada será baixada pelo seu navegador. Salve a chave privada que foi gerada.

  4. Sob Recursos selecione o Voz botão.

  5. No URL da resposta na caixa, digite a URL do seu webhook de chamadas recebidas, por exemplo, http://example.com/webhooks/answer.

  6. No URL do evento na caixa, digite a URL do seu webhook de status de chamada, por exemplo, http://example.com/webhooks/events.

  7. Clique no Criar um novo pedido botão.

  8. Agora você será direcionado para a próxima etapa do procedimento de criação do aplicativo, na qual deverá vincular seu número da Vonage ao aplicativo.

Você já criou seu aplicativo.

NOTA: Antes de testar seu aplicativo, certifique-se de que seus webhooks estejam configurados e que seu servidor de webhooks esteja em funcionamento.