Criar uma aplicação do Vonage Messages

Neste tópico, você aprenderá a criar uma aplicação da API da Vonage.

Use a CLI para criar um aplicativo Messages com o webhooks que será responsável por receber uma mensagem no seu número da Vonage (/webhooks/messages/inbound), e verificar as atualizações de status (/webhooks/mesages/status), respectivamente.

Esses webhooks precisam estar acessíveis aos servidores da Vonage; portanto, neste guia, você utilizará ngrok para disponibilizar seu ambiente de desenvolvimento local na Internet pública. Este artigo explica como instalar e executar ngrok e configurar o Vonage para enviar solicitações.

Se você não tiver uma aplicação, pode criar uma usando a CLI

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

O comando retorna um ID de aplicativo (que você deve anotar) e as informações da sua chave privada (que você pode ignorar sem problemas para os fins deste guia).

Correr ngrok usando o seguinte comando:

ngrok http 3000

Anote o nome de host temporário que ngrok fornece e use-o no lugar de example.com no seguinte comando:

vonage apps capabilities update 00000000-0000-0000-0000-000000000000 messages `
  --messages-inbound-url='https://example.com/webhooks/messages/inbound' `
  --messages-status-url='https://example.com/webhooks/messages/status' `
  --messages-version='v1' \
  --messages-authenticate-media                                                                                                                                                                                 [boolean]
  
✅ Fetching Application
✅ Adding messages 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:
 MESSAGES:
    Authenticate Inbound Media: On
    Webhook Version: v1
    Status URL: [POST] https://manchuck.com/meetings/status
    Inbound URL: [POST] https://manchuck.com/meetings/inbound

vonage apps capabilities update 00000000-0000-0000-0000-000000000000 messages ^
  --messages-inbound-url='https://example.com/webhooks/messages/inbound' ^
  --messages-status-url='https://example.com/webhooks/messages/status' ^
  --messages-version='v1' \
  --messages-authenticate-media                                                                                                                                                                                 [boolean]
  
✅ Fetching Application
✅ Adding messages 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:
 MESSAGES:
    Authenticate Inbound Media: On
    Webhook Version: v1
    Status URL: [POST] https://manchuck.com/meetings/status
    Inbound URL: [POST] https://manchuck.com/meetings/inbound

vonage apps capabilities update 00000000-0000-0000-0000-000000000000 messages \ --messages-inbound-url='https://example.com/webhooks/messages/inbound' \ --messages-status-url='https://example.com/webhooks/messages/status' \ --messages-version='v1' \ --messages-authenticate-media [boolean] ✅ Fetching Application ✅ Adding messages 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: MESSAGES: Authenticate Inbound Media: On Webhook Version: v1 Status URL: [POST] https://manchuck.com/meetings/status Inbound URL: [POST] https://manchuck.com/meetings/inbound