Ruby

Configura los requisitos previos

Hay algunos requisitos previos que debes cumplir antes de poder seguir este tutorial. Si ya has cumplido alguno de ellos, no dudes en saltarte ese paso.

Puedes crear una Account de Vonage a través de la página Panel de control.

Desde el panel de control puedes crear Applications y adquirir Numbers de Vonage. También puedes realizar estas tareas utilizando el CLI de Vonage.

Siga los pasos descritos en el Primeros pasos con la CLI de Vonage para instalar y configurar la línea de comandos.

Debes hacer que tu webhook sea accesible para las API de Vonage a través de la Internet pública. Una forma sencilla de conseguirlo durante la fase de desarrollo, sin necesidad de poner en marcha tu propio servidor, es utilizar Ngrok. Para obtener más información, Lee nuestra documentación sobre Ngrok.

Descarga e instala ngrok y, a continuación, ejecuta el siguiente comando para hacer que tu aplicación sea accesible desde Internet a través del puerto 3000:

./ngrok http 3000

Si eres suscriptor de pago, puedes escribir:

./ngrok http 3000 -subdomain=your_domain

NOTA: En este ejemplo, Ngrok desviará los webhooks de Vonage que especificó al crear su aplicación de Vonage a localhost:3000. Aunque aquí se muestra el puerto 3000, puedes utilizar cualquier puerto libre que te resulte más conveniente.

Hay dos métodos para crear una aplicación de Voice:

  1. Uso de la CLI de Vonage
  2. Uso del panel de control

Cada uno de estos métodos se describe en las secciones siguientes.

Cómo crear una aplicación de voz con la CLI de Vonage

Para crear tu aplicación utilizando la CLI de Vonage, introduce el siguiente comando en el intérprete de comandos sustituyendo a NGROK_HOST_NAME con el host ngrok que obtuvo cuando configuró ngrok:

Para crear su aplicación utilizando la función CLI de Vonageintroduzca el siguiente 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

A continuación, añada funciones de voz a su aplicación (utilice el nombre de host de ngrok en lugar 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 crea una Aplicación de Vonage con Voz capacidad. En
configura la Aplicación con sus URL de respuesta y de webhook de eventos y genera un archivo de clave privada. private.key, que deberá guardar en el directorio de su proyecto.

El comando devuelve un ID de aplicación único. Utiliza este ID de aplicación para vincular tu número virtual de Vonage a tu Application ejecutando lo siguiente:

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

De este modo, se vinculará ese número virtual de Vonage a tu aplicación, lo que hará que todas las llamadas que se reciban en ese número se redirijan a las URL que hayas indicado.

Cómo crear una aplicación de voz con el panel de control

Puede crear aplicaciones de voz en la sección Panel de control.

Para crear su aplicación utilizando el Panel de control:

  1. En Applications en el Panel de control, haga clic en el botón Crear una nueva aplicación botón.

  2. En NombreIntroduzca el nombre de la aplicación. Elija un nombre para facilitar futuras referencias.

  3. Pulse el botón Generar clave pública y privada. De este modo se creará un par de claves pública y privada, y tu navegador descargará la clave privada. Guarda la clave privada que se ha generado.

  4. En Capacidades seleccione el Voz botón.

  5. En el Respuesta URL introduzca la URL de su webhook de llamadas entrantes, por ejemplo, http://example.com/webhooks/answer.

  6. En el URL del evento introduzca la URL de su webhook de estado de llamada, por ejemplo, http://example.com/webhooks/events.

  7. Haz clic en el Generar nueva aplicación botón.

  8. Ahora pasarás al siguiente paso del procedimiento Crear solicitud, donde deberás vincular tu número de Vonage a la solicitud.

Ya ha creado su aplicación.

NOTA: Antes de probar su aplicación, asegúrese de que sus webhooks están configurados y de que su servidor webhook está en funcionamiento.