Avant de commencer

Qu'est-ce qu'un extrait de code ?

Les extraits de code sont de courts morceaux de code que vous pouvez réutiliser dans vos propres Applications. Les extraits de code utilisent du code provenant de exemples de dépôts.

Veuillez lire attentivement ces informations afin d'utiliser au mieux les extraits de code.

Conditions préalables

Avant d'aller plus loin, vous devez créer un Account Vonage pour gérer les Applications et les Numbers.

Créer une application

Aller à la page Applicationssur le tableau de bord, et définissez une page Name pour votre Applications.

An example of brand new application

Veillez à cliquer sur le bouton Générer une clé publique et une clé privée et conserver le fichier private.key autour.

Ensuite, activez l'option Voix capacité. Pour l'instant, laissez tout par défaut.

An example of enabling Voice capabilities

Enfin, cliquez sur Générer une nouvelle application au bas de la page.

Vérifier Démarrer avec l'interface de programmation de Vonage pour plus d'informations sur l'installation et la configuration de la CLI.

Utilisez la commande suivante pour créer une application Vonage :

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

Une fois que vous avez l'application, vous devez ajouter l'élément voice veillez à remplacer les URL des webhooks par les vôtres :

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

L'application est alors créée et dotée des capacités requises. La création d'une application et l'ajout de capacités d'application sont traités en détail dans la section Documentation relative à l'application.

Louer un Numbers

Dans le tableau de bord, allez dans la section Acheter des Numbers page. Veillez à cocher Voix dans le filtre de recherche, et sélectionnez le pays dans lequel vous souhaitez acheter un numéro. Dans certains pays, vous devrez peut-être demander un numéro, car des documents supplémentaires peuvent être exigés.

An example of number research

Vous pouvez ensuite cliquer sur le bouton Acheter à côté du numéro souhaité, et validez votre achat.

Félicitations à tous ! Votre numéro virtuel est désormais répertorié dans Vos Numbers.

Vous pouvez louer un numéro à l'aide de la CLI de Vonage. La commande suivante recherche un numéro disponible aux Etats-Unis :

vonage numbers search US

✅ Searching for numbers

There is 1 number available for purchase in United States

Number       Type    Features         Monthly Cost  Setup Cost
-----------  ------  ---------------  ------------  ----------
16127779311  Mobile  MMS, SMS, VOICE  €0.900.00

Use vonage numbers buy to purchase.
vonage numbers search US

✅ Searching for numbers

There is 1 number available for purchase in United States

Number       Type    Features         Monthly Cost  Setup Cost
-----------  ------  ---------------  ------------  ----------
16127779311  Mobile  MMS, SMS, VOICE0.900.00

Use vonage numbers buy to purchase.
vonage numbers search US ✅ Searching for numbers There is 1 number available for purchase in United States Number Type Features Monthly Cost Setup Cost ----------- ------ --------------- ------------ ---------- 16127779311 Mobile MMS, SMS, VOICE €0.90 €0.00 Use vonage numbers buy to purchase.

Utilisez cette commande pour acheter un nombre :

vonage numbers buy US 16127779311 
✅ Searching for numbers
Are you sure you want to purchase the number 16127779311 for0.90? [y/n] y

✅ Purchasing number
Number 16127779311 purchased

Number: 16127779311 
Country: 🇺🇸 United States
Type: Mobile
Features: MMS, SMS, VOICE
Monthly Cost: €0.90
Setup Cost: €0.00
Linked Application ID: Not linked to any application
Voice Callback: Not Set
Voice Callback Value: Not Set
Voice Status Callback: Not Set
vonage numbers buy US 16127779311 
✅ Searching for numbers
Are you sure you want to purchase the number 16127779311 for0.90? [y/n] y

✅ Purchasing number
Number 16127779311 purchased

Number: 16127779311 
Country: 🇺🇸 United States
Type: Mobile
Features: MMS, SMS, VOICE
Monthly Cost: €0.90
Setup Cost: €0.00
Linked Application ID: Not linked to any application
Voice Callback: Not Set
Voice Callback Value: Not Set
Voice Status Callback: Not Set
vonage numbers buy US 16127779311 ✅ Searching for numbers Are you sure you want to purchase the number 16127779311 for €0.90? [y/n] y ✅ Purchasing number Number 16127779311 purchased Number: 16127779311 Country: 🇺🇸 United States Type: Mobile Features: MMS, SMS, VOICE Monthly Cost: €0.90 Setup Cost: €0.00 Linked Application ID: Not linked to any application Voice Callback: Not Set Voice Callback Value: Not Set Voice Status Callback: Not Set

Préciser un autre code de pays à deux caractères pour acheter un numéro dans dans un autre pays.

Lier un numéro

Maintenant que vous disposez d'une application et d'un numéro, vous devez les relier entre eux.

Aller à la page Applications et cliquez sur l'application que vous avez créée précédemment.

An example of an application

Dans le cadre de la Voix cliquer sur la section Lien en regard du numéro que vous souhaitez relier.

Maintenant que vous disposez d'une application et d'un numéro, vous devez les relier entre eux.

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

Autres ressources :

Variables remplaçables

Générique remplaçable

Les informations remplaçables suivantes dépendent de la bibliothèque et de l'appel spécifique :

CléDescription
VONAGE_API_KEY

Your Vonage API key (see it on your dashboard).

VONAGE_API_SECRET

Your Vonage API secret (also available on your dashboard).

VONAGE_APPLICATION_PRIVATE_KEY_PATH

Private key path.

VONAGE_APPLICATION_PRIVATE_KEY

Private key.

VONAGE_APPLICATION_ID

The Vonage Application ID.

JWT

Used to authenticate your request. See Authentication for more information, including how to generate a JWT.

Numbers

Tous les numéros de téléphone sont au format E.164.

CléDescription
VONAGE_VIRTUAL_NUMBER

Your Vonage Number. E.g. 447700900000

VOICE_TO_NUMBER

The recipient number to call, e.g. 447700900002.

UUID

Les UUID sont généralement utilisés dans les extraits de code pour identifier un appel spécifique.

CléDescription
VOICE_CALL_ID

The UUID of the call leg.

Remplaçables/variables spécifiques

Certains extraits de code contiennent des variables plus spécialisées qui devront être remplacées par des valeurs réelles. remplacées par des valeurs réelles. Celles-ci peuvent être spécifiées pour chaque extrait de code.

Authentification

Voice API requiert une authentification à l'aide de JWT. Vous pouvez générer un JWT à l'aide de la fonction CLI Vonage ou le outil en ligne.

Crochets Web

Les principaux sont ceux que vous rencontrerez ici :

  • /webhooks/answer - Vonage fait une demande GET ici lorsque vous recevez un appel entrant. Vous répondez par un NCCO.
  • /webhooks/event - Vonage effectue des requêtes POST ici lorsqu'un événement se produit. Vous recevez un événement JSON.
  • /webhooks/recordings - Vonage effectue une requête POST ici lorsque l'enregistrement est disponible. Vous recevez un objet JSON avec les détails de l'enregistrement.
  • /webhooks/dtmf - Vonage POSTs l'entrée DTMF de l'utilisateur ici dans un objet JSON.

Si vous utilisez Ngrok, vous définirez les URL de votre webhook dans l'objet Application de Vonage comme suit quelque chose comme :

  • https://demo.ngrok.io/webhooks/answer
  • https://demo.ngrok.io/webhooks/event
  • https://demo.ngrok.io/webhooks/recordings
  • https://demo.ngrok.io/webhooks/dtmf

Changer demo dans ce qui précède avec ce qui s'applique à votre cas.