Ohrenschützer anrufen
Mit diesem Codeschnipsel können Sie einen Anruf abhören und wieder freigeben. Wenn ein Anruf mit Ohrstöpseln versehen ist, kann der Benutzer andere Teilnehmer nicht hören, aber andere Teilnehmer können den Benutzer hören.
Beispiel
Ersetzen Sie die folgenden Variablen im Beispielcode:
| Schlüssel | Beschreibung |
|---|---|
VOICE_CALL_ID | The UUID of the call leg. |
Voraussetzungen
Führen Sie den folgenden Befehl an Ihrer Terminal-Eingabeaufforderung aus, um die JWT für die Authentifizierung zu erstellen:
export JWT=$(nexmo jwt:generate $PATH_TO_PRIVATE_KEY application_id=$NEXMO_APPLICATION_ID)Schreiben Sie den Code
Fügen Sie Folgendes zu earmuff-a-call.sh hinzu:
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"}'Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
npm install @vonage/server-sdkErstellen Sie eine Datei mit dem Namen earmuff-a-call.js und fügen Sie den folgenden Code hinzu:
const { Vonage } = require('@vonage/server-sdk');
const vonage = new Vonage({
applicationId: VONAGE_APPLICATION_ID,
privateKey: VONAGE_PRIVATE_KEY,
});Schreiben Sie den Code
Fügen Sie Folgendes zu earmuff-a-call.js hinzu:
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 secondsFühren Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
Fügen Sie Folgendes zu build.gradle hinzu:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Erstellen Sie eine Datei mit dem Namen EarmuffCall und fügen Sie den folgenden Code in die Methode main ein:
val client = Vonage {
applicationId(VONAGE_APPLICATION_ID)
privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
}Schreiben Sie den Code
Fügen Sie der Methode main in der Datei EarmuffCall Folgendes hinzu:
val call = client.voice.call(VOICE_CALL_ID)
call.earmuff()
Thread.sleep(3000)
call.unearmuff()Führen Sie Ihren Code aus
Wir können das Applikation Plugin für Gradle verwenden, um die Ausführung unserer Anwendung zu vereinfachen. Aktualisieren Sie Ihre build.gradle mit dem Folgenden:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Führen Sie den folgenden Befehl gradle aus, um Ihre Anwendung auszuführen, und ersetzen Sie dabei com.vonage.quickstart.kt.voice durch das Paket, das EarmuffCall enthält:
Voraussetzungen
Fügen Sie Folgendes zu build.gradle hinzu:
implementation 'com.vonage:server-sdk:9.3.1'Erstellen Sie eine Datei mit dem Namen EarmuffCall und fügen Sie den folgenden Code in die Methode main ein:
VonageClient client = VonageClient.builder()
.applicationId(VONAGE_APPLICATION_ID)
.privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
.build();Schreiben Sie den Code
Fügen Sie der Methode main in der Datei EarmuffCall Folgendes hinzu:
client.getVoiceClient().earmuffCall(VOICE_CALL_ID);
Thread.sleep(3000);
client.getVoiceClient().unearmuffCall(VOICE_CALL_ID);Führen Sie Ihren Code aus
Wir können das Applikation Plugin für Gradle verwenden, um die Ausführung unserer Anwendung zu vereinfachen. Aktualisieren Sie Ihre build.gradle mit dem Folgenden:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Führen Sie den folgenden Befehl gradle aus, um Ihre Anwendung auszuführen, und ersetzen Sie dabei com.vonage.quickstart.voice durch das Paket, das EarmuffCall enthält:
Voraussetzungen
Install-Package VonageSchreiben Sie den Code
Fügen Sie Folgendes zu EarmuffCall.cs hinzu:
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);Voraussetzungen
composer require vonage/clientSchreiben Sie den Code
Fügen Sie Folgendes zu index.php hinzu:
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);Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
pip install vonage python-dotenvSchreiben Sie den Code
Fügen Sie Folgendes zu earmuff-a-call.py hinzu:
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)Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
gem install vonageFühren Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Probieren Sie es aus
Wenn Sie den Code ausführen, wird der durch die UUID identifizierte Anruf mit Ohrstöpseln versehen oder entstöpselt.
Weitere Lektüre
- Konferenzanrufe - In diesem Leitfaden werden die beiden Concepts erläutert, die Vonage mit einem Anruf verbindet: ein Leg und ein Gespräch.