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"}'Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/server-sdkCré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,
});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 secondsExécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
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)
}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()Exécutez votre code
Nous pouvons utiliser le plugin Applications 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') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.voice par le paquet contenant 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();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);Exécutez votre code
Nous pouvons utiliser le plugin Applications 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') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.voice par le paquet contenant EarmuffCall:
Conditions préalables
Install-Package VonageRé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);Conditions préalables
composer require vonage/clientExécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
pip install vonage python-dotenvRé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)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
gem install vonageExécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
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.