Appel pour le protège-oreilles

Cet extrait de code permet d'atténuer et de supprimer le son d'un appel. Lorsqu'un appel est protégé, l'utilisateur ne peut pas entendre les autres participants, mais les autres participants peuvent entendre l'utilisateur.

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 à earmuff-a-call.sh:

curl -X PUT https://api.nexmo.com/v1/calls/$VOICE_CALL_ID \
  -H "Authorization: Bearer $JWT"\
  -H "Content-Type: application/json"\
  -d '{"action": "earmuff"}'

sleep 5s

curl -X PUT https://api.nexmo.com/v1/calls/$VOICE_CALL_ID \
  -H "Authorization: Bearer $JWT"\
  -H "Content-Type: application/json"\
  -d '{"action": "unearmuff"}'

Voir la source complète

Exécutez votre code

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

bash earmuff-a-call.sh

Conditions préalables

npm install @vonage/server-sdk

Créez un fichier nommé earmuff-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 à earmuff-a-call.js:

vonage.voice.earmuffCall(VOICE_CALL_ID)
  .then(() => console.log('Call earmuffed'))
  .catch((error) => console.error(error));

const unearmuff = () => {
  vonage.voice.unearmuffCall(VOICE_CALL_ID)
    .then(() => console.log('Unearmuffed call'))
    .catch((error) => console.error(error));
};

setTimeout(unearmuff, 3000); // delay 3 seconds

Voir la source complète

Exécutez votre code

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

node earmuff-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é EarmuffCall 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 EarmuffCall:

val call = client.voice.call(VOICE_CALL_ID)
call.earmuff()
Thread.sleep(3000)
call.unearmuff()

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 EarmuffCall:

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

Conditions préalables

Ajouter ce qui suit à build.gradle:

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

Créez un fichier nommé EarmuffCall 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 EarmuffCall:

client.getVoiceClient().earmuffCall(VOICE_CALL_ID);
Thread.sleep(3000);
client.getVoiceClient().unearmuffCall(VOICE_CALL_ID);

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 EarmuffCall:

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

Conditions préalables

Install-Package Vonage

Rédiger le code

Ajouter ce qui suit à EarmuffCall.cs:

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

var command = new CallEditCommand() { Action = CallEditCommand.ActionType.earmuff };
var response = await client.VoiceClient.UpdateCallAsync(VOICE_CALL_ID, command);

Console.WriteLine($"Earmuff Call Command succeeded: {response}");

Thread.Sleep(3000);

command = new CallEditCommand() { Action = CallEditCommand.ActionType.unearmuff };
response = await client.VoiceClient.UpdateCallAsync(VOICE_CALL_ID, command);

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);

$client->voice()->earmuffCall(UUID);
sleep(3);
$client->voice()->unearmuffCall(UUID);

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 à earmuff-a-call.py:

from vonage import Auth, Vonage

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

client.voice.earmuff(VOICE_CALL_ID)
sleep(3)
client.voice.unearmuff(VOICE_CALL_ID)

Voir la source complète

Exécutez votre code

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

python voice/earmuff-a-call.py

Conditions préalables

gem install vonage

Rédiger le code

Ajouter ce qui suit à earmuff-a-call.rb:

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

client.voice.earmuff(VOICE_CALL_ID)

sleep(3)

client.voice.unearmuff(VOICE_CALL_ID)

Voir la source complète

Exécutez votre code

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

ruby earmuff-a-call.rb

Essayez-le

Lorsque vous exécutez le code, l'appel identifié par l'UUID est mis en sourdine.

Pour en savoir plus

  • Conférence téléphonique - Ce guide explique les deux concepts que Vonage associe à un appel, un segment et une conversation.