Gestion des applications avec le CLI de Vonage

Le CLI de Vonage vous permet de créer et de gérer vos applications Vonage. Pour obtenir de l'aide, tapez vonage apps --help une fois que une fois le CLI installé. Comme la plupart des commandes de vonage, vous pouvez utiliser la commande --json et --yaml pour pour que la sortie se fasse dans ces formats.

Liste de vos applications

Par défaut, lorsque vous exécutez vonage apps il exécutera la même sous-commande que vonage apps list. Il existe un certain nombre de drapeaux que vous pouvez passer pour affiner votre recherche :

vonage apps

✅ Loading applications... Done

App ID                                Name               Capabilities
------------------------------------  -----------------  ------------------------------------------------------
00000000-0000-0000-0000-000000000000  Application        None
00000000-0000-0000-0000-000000000000  voice Application  Messages, Voice
00000000-0000-0000-0000-000000000000  All enabled        Messages, Network APIs, RTC, VBC, Verify, Video, Voice

Afficher les détails de l'application

Les show vous permet d'obtenir les détails d'une application spécifique. Le format de la commande est le suivant vonage apps show <id><id> est l'UUID de l'application.

Remarque : cette opération n'affiche pas la clé publique. Si vous avez besoin d'afficher la clé publique, vous pouvez utiliser la commande --show-all, --jsonou --yaml drapeaux, qui n'expurgera aucune information.

vonage apps show 00000000-0000-0000-0000-000000000000

✅ Fetching application

Name: All enabled
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: [GET] https://example.com/voice/event
    Answer URL: [GET] https://example.com/voice/answer
    Fallback URL: [GET] https://example.com/voice/fallback
  
  MESSAGES:
    Authenticate Inbound Media: On
    Webhook Version: v1
    Status URL: [POST] https://example.com/meetings/status
    Inbound URL: [POST] https://example.com/meetings/inbound
  
  VERIFY:
    Webhook Version: v2
    Status URL: [POST] https://example.com/verify2/status
  
  RTC:
    Event URL: [POST] https://example.com/rtc/event
    Uses Signed callbacks: On
  
  VIDEO:
    Archive Status URL: [POST] https://example.com/video/archive-status
    Archive Status Signature Secret: archive status
    Broadcast Status URL: [POST] https://example.com/video/broadcast-status
    Broadcast Status Signature Secret: broadcast status
    Caption Status URL: [POST] https://example.com/video/caption-status
    Caption Status Signature Secret: caption-status
    Connection Created URL: [POST] https://example.com/video/connected-created
    Connection Created Signature Secret: connection created
    Connection Destroyed URL: [POST] https://example.com/video/connection-destroyed
    Connection Destroyed Signature Secret: connection destroyed
    Render Status URL: [POST] https://example.com/video/render-status
    Render Status Signature Secret: render status
    SIP Call Created URL: [POST] https://example.com/video/sip1
    SIP Call Created Signature Secret: Off
    SIP Call Destroyed URL: [POST] https://example.com/video/sip3
    SIP Call Destroyed Signature Secret: Off
    SIP Call Mute Forced URL: [POST] https://example.com/video/sip4
    SIP Call Mute Forced Signature Secret: Off
    SIP Call Updated URL: [POST] https://example.com/video/sip2
    SIP Call Updated Signature Secret: Off
    Stream Created URL: [POST] https://example.com/video/stream-created
    Stream Created Signature Secret: stream created
    Stream Destroyed URL: [POST] https://example.com/video/stream-destroyed
    Stream Destroyed Signature Secret: stream destroyed
  
    RECORDINGS STORAGE:
      Cloud Storage: On
      Storage Type: AmazonS3
      Credential: manchuck_aws_bucket
      End to End Encryption: On
      Server Side Encryption: On
  
  NETWORK APIS:
    Redirect URL: [GET] https://example.com/gnp/redirect
  
  NB: VBC capabilities is not supported through the command line.

Création d'une application

Les vonage apps create <name> vous permet de créer une application. Vous devez fournir un nom d'application, car l'interface de programmation n'en génère pas pour vous.

La commande dispose des drapeaux suivants :

Note : Si vous ne fournissez pas votre propre clé, Vonage en créera une pour vous. Cependant, si vous n'enregistrez pas la clé lors de la création de l'application, vous ne pourrez plus y accéder. Vous devrez régénérer la clé si vous la perdez.

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

Les versions précédentes de l'ITC vous permettaient également de définir les capacités de l'application, mais cette possibilité a été supprimée dans la version 3 de l'ITC - les raisons en sont expliquées. ci-dessous.

Mise à jour d'une application

vonage apps update <id> vous permet de mettre à jour le nom d'une application existante, de modifier le paramètre Improve AI ou de définir une nouvelle clé publique :

vonage apps update 00000000-0000-0000-0000-000000000000 `
  --name="New Application Name"
  
✅ Fetching Application
✅ Updating Application

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

Suppression d'une application

Vous pouvez supprimer une application avec la commande vonage apps delete <id>id est l'UUID de l'application :

vonage apps delete 00000000-0000-0000-0000-000000000000

✅ Fetching application
Delete application New Name (7d7133ab-de4e-4b7a-8e1e-376670077c71)? [y/n] 
✅ Deleting application

Gestion des capacités d'une application

Dans les versions précédentes de l'ILC, vous deviez transmettre toutes les valeurs lorsque vous souhaitiez modifier une capacité pour une application. Cela signifiait que vous deviez vous souvenir des valeurs actuelles et que si vous n'incluiez pas un drapeau ou si vous saisissiez une valeur incorrecte, la capacité ne fonctionnait pas comme prévu. La version 3 de l'interface de programmation résout ce problème résolu ce problème en créant une nouvelle sous-commande pour gérer les capacités de l'application. Le format de la commande est le suivant est le suivant : vonage apps capabilities <action> <id> <which> [flags].

Gestion des Numbers pour une Application

La version 3 du CLI vous permet de gérer facilement les numéros d'une application. Il existe deux commandes principales : vonage apps numbers list <id>et, vonage apps numbers <link|unlink> <id> <msisdn>. L'utilisation de ces commandes permet de s'assurer que les numéros sont correctement liés.

Liste des Numbers liés à une Applications

Pour dresser la liste de tous les Numbers liés à une application, exécutez vonage apps numbers list <id>id est l'UUID de l'application de l'application. Si vous transmettez l'identifiant --fail cette commande sortira avec le code 1 si l'application n'a pas soit messages ou voice des capacités.

Remarque : l'API est appelée en permanence pour récupérer tous les numéros que vous avez liés. Cela peut prendre un certain temps, en fonction du nombre de numéros que vous avez.

vonage apps numbers list 00000000-0000-0000-0000-000000000000

✅ Fetching Application
Fetching numbers linked to application Your application [==============] 1/1 100%

There is 1 number linked:

Number       Country             Type       Features       
-----------  ------------------  ---------  ---------------
16127779311  🇺🇸 United States    Mobile     MMS, SMS, VOICE

Lier/dissocier un numéro à une application

Les Numbers peuvent être reliés entre eux à l'aide de vonage apps <link|unlink> <id> <msisdn>id est l'UUID de l'application, et msisdn est le numéro à relier ou à dissocier.

Remarque : les options --app-id et --private-key sont ignorées pour cette commande.

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

Référence