Récupérer les informations relatives à un appel

Un extrait de code qui montre comment récupérer des informations sur un appel. L'appel pour lequel des informations doivent être récupérées est identifié par un UUID.

Exemple

Remplacez les variables suivantes dans le code de l'exemple :

CléDescription
VOICE_CALL_ID

The UUID of the call leg.

Conditions préalables

Exécutez la commande suivante à l'invite de votre terminal pour créer le site JWT pour l'authentification :

export JWT=$(nexmo jwt:generate $PATH_TO_PRIVATE_KEY application_id=$NEXMO_APPLICATION_ID)

Rédiger le code

Ajouter ce qui suit à retrieve-info-for-a-call.sh:

curl "https://api.nexmo.com/v1/calls/"$VOICE_CALL_ID \
  -H "Authorization: Bearer $JWT" \

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

bash retrieve-info-for-a-call.sh

Conditions préalables

npm install @vonage/server-sdk

Créez un fichier nommé retrieve-info-for-a-call.js et ajoutez le code suivant :

const { Vonage } = require('@vonage/server-sdk');

const vonage = new Vonage({
  applicationId: VONAGE_APPLICATION_ID,
  privateKey: VONAGE_PRIVATE_KEY,
});

Voir la source complète

Rédiger le code

Ajouter ce qui suit à retrieve-info-for-a-call.js:

vonage.voice.getCall(VOICE_CALL_ID)
  .then((call) => console.log(call))
  .catch((error) => console.error(error));

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

node retrieve-info-for-a-call.js

Conditions préalables

Ajouter ce qui suit à build.gradle:

implementation 'com.vonage:server-sdk-kotlin:2.1.1'

Créez un fichier nommé RetrieveCallInfo et ajoutez le code suivant à la méthode main:

val client = Vonage {
    applicationId(VONAGE_APPLICATION_ID)
    privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
}

Voir la source complète

Rédiger le code

Ajouter ce qui suit à la méthode main du fichier RetrieveCallInfo:

val callDetails = client.voice.call(VOICE_CALL_ID).info()
println(callDetails)

Voir la source complète

Exécutez votre code

Nous pouvons utiliser le plugin application pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :

apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''

Lancez la commande suivante gradle pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.voice par le paquet contenant RetrieveCallInfo:

gradle run -Pmain=com.vonage.quickstart.kt.voice.RetrieveCallInfo

Conditions préalables

Ajouter ce qui suit à build.gradle:

implementation 'com.vonage:server-sdk:9.3.1'

Créez un fichier nommé RetrieveCallInfo et ajoutez le code suivant à la méthode main:

VonageClient client = VonageClient.builder()
        .applicationId(VONAGE_APPLICATION_ID)
        .privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
        .build();

Voir la source complète

Rédiger le code

Ajouter ce qui suit à la méthode main du fichier RetrieveCallInfo:

CallInfo details = client.getVoiceClient().getCallDetails(VOICE_CALL_ID);
System.out.println(details);

Voir la source complète

Exécutez votre code

Nous pouvons utiliser le plugin application pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :

apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''

Lancez la commande suivante gradle pour exécuter votre application, en remplaçant com.vonage.quickstart.voice par le paquet contenant RetrieveCallInfo:

gradle run -Pmain=com.vonage.quickstart.voice.RetrieveCallInfo

Conditions préalables

Install-Package Vonage

Rédiger le code

Ajouter ce qui suit à RetrieveInfoForCall.cs:

var credentials = Credentials.FromAppIdAndPrivateKeyPath(VONAGE_APPLICATION_ID, VONAGE_PRIVATE_KEY_PATH);
var client = new VonageClient(credentials);

var response = await client.VoiceClient.GetCallAsync(VOICE_CALL_ID);

Voir la source complète

Conditions préalables

composer require vonage/client

Rédiger le code

Ajouter ce qui suit à index.php:

require_once __DIR__ . '/../../vendor/autoload.php';

$keypair = new \Vonage\Client\Credentials\Keypair(file_get_contents(VONAGE_APPLICATION_PRIVATE_KEY_PATH), VONAGE_APPLICATION_ID);
$client = new \Vonage\Client($keypair);

$call = $client->voice()->get(VONAGE_CALL_UUID);
echo json_encode($call->toArray());

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

php index.php

Conditions préalables

pip install vonage python-dotenv

Rédiger le code

Ajouter ce qui suit à retrieve-info-for-a-call.py:

from vonage import Auth, Vonage
from vonage_voice import CallInfo

client = Vonage(
    Auth(
        application_id=VONAGE_APPLICATION_ID,
        private_key=VONAGE_PRIVATE_KEY,
    )
)

response: CallInfo = client.voice.get_call(VOICE_CALL_ID)
pprint(response)

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

python voice/retrieve-info-for-a-call.py

Conditions préalables

gem install vonage

Rédiger le code

Ajouter ce qui suit à retrieve-info-for-a-call.rb:

client = Vonage::Client.new(
  application_id: VONAGE_APPLICATION_ID,
  private_key: VONAGE_PRIVATE_KEY
)

response = client.voice.get(VOICE_CALL_ID)

Voir la source complète

Exécutez votre code

Enregistrez ce fichier sur votre machine et exécutez-le :

ruby retrieve-info-for-a-call.rb

Essayez-le

Vous devrez :

  1. Établissez un appel et obtenez l'UUID de l'appel. Pour ce faire, vous pouvez utiliser l'extrait de code "connecter un appel entrant".
  2. Récupérer les informations relatives à l'appel (cet extrait de code).