Tätigen Sie einen ausgehenden Anruf mit einem NCCO
Dieses Codeschnipsel tätigt einen ausgehenden Anruf und spielt eine
Text-to-Speech-Nachricht ab, wenn der Anruf angenommen wird. Sie müssen keinen
Server betreiben, der eine answer_url um dieses Codeschnipsel auszuführen, da Sie Ihren
NCCO als Teil der Anfrage
Beispiel
Ersetzen Sie die folgenden Variablen im Beispielcode:
| Schlüssel | Beschreibung |
|---|---|
VONAGE_VIRTUAL_NUMBER | Your Vonage Number. E.g. |
VOICE_TO_NUMBER | The recipient number to call, e.g. |
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 make-an-outbound-call-with-ncco.sh hinzu:
curl -X POST https://api.nexmo.com/v1/calls\
-H "Authorization: Bearer $JWT"\
-H "Content-Type: application/json"\
-d '{"to":[{"type": "phone","number": "'$VOICE_TO_NUMBER'"}],
"from": {"type": "phone","number": "'$VONAGE_VIRTUAL_NUMBER'"},
"ncco": [
{
"action": "talk",
"text": "This is a text to speech call from Vonage"
}
]}'
Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
npm install @vonage/server-sdk @vonage/voiceErstellen Sie eine Datei mit dem Namen make-an-outbound-call-with-ncco.js und fügen Sie den folgenden Code hinzu:
const { Vonage } = require('@vonage/server-sdk');
const { NCCOBuilder, Talk } = require('@vonage/voice');
const vonage = new Vonage({
applicationId: VONAGE_APPLICATION_ID,
privateKey: VONAGE_PRIVATE_KEY,
});Schreiben Sie den Code
Fügen Sie Folgendes zu make-an-outbound-call-with-ncco.js hinzu:
const builder = new NCCOBuilder();
builder.addAction(new Talk('This is a text to speech call from Vonage'));
vonage.voice.createOutboundCall({
ncco: builder.build(),
to: [
{
type: 'phone',
number: VOICE_TO_NUMBER,
},
{
type: 'phone',
number: VONAGE_VIRTUAL_NUMBER,
},
],
})
.then((result) => console.log(result))
.catch((error) => console.error(error));Fü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 OutboundTextToSpeechCallWithNcco 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 OutboundTextToSpeechCallWithNcco Folgendes hinzu:
val callEvent = client.voice.createCall {
toPstn(VOICE_TO_NUMBER)
from(VONAGE_VIRTUAL_NUMBER)
ncco(
talkAction("This is a text to speech call from Vonage")
)
}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 OutboundTextToSpeechCallWithNcco 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 OutboundTextToSpeechWithNcco 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 OutboundTextToSpeechWithNcco Folgendes hinzu:
Ncco ncco = new Ncco(TalkAction.builder("This is a text to speech call from Vonage").build());
client.getVoiceClient().createCall(new Call(VOICE_TO_NUMBER, VONAGE_VIRTUAL_NUMBER, ncco.getActions()));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 OutboundTextToSpeechWithNcco enthält:
Voraussetzungen
Install-Package VonageSchreiben Sie den Code
Fügen Sie Folgendes zu MakeCallWithNcco.cs hinzu:
var client = new VonageClient(creds);
var toEndpoint = new PhoneEndpoint() { Number = VOICE_TO_NUMBER };
var fromEndpoint = new PhoneEndpoint() { Number = VONAGE_VIRTUAL_NUMBER };
var extraText = "";
for (var i = 0; i < 50; i++)
extraText += $"{i} ";
var talkAction = new TalkAction() { Text = "This is a text to speech call from Vonage " + extraText };
var ncco = new Ncco(talkAction);
var command = new CallCommand() { To = new Endpoint[] { toEndpoint }, From = fromEndpoint, Ncco = ncco };
var response = await client.VoiceClient.CreateCallAsync(command);
Voraussetzungen
composer require vonage/clientSchreiben Sie den Code
Fügen Sie Folgendes zu index.php hinzu:
$keypair = new \Vonage\Client\Credentials\Keypair(
file_get_contents(VONAGE_APPLICATION_PRIVATE_KEY_PATH),
VONAGE_APPLICATION_ID
);
$client = new \Vonage\Client($keypair);
$outboundCall = new \Vonage\Voice\OutboundCall(
new \Vonage\Voice\Endpoint\Phone(TO_NUMBER),
new \Vonage\Voice\Endpoint\Phone(VONAGE_NUMBER)
);
$ncco = new NCCO();
$ncco->addAction(new \Vonage\Voice\NCCO\Action\Talk('This is a text to speech call from Nexmo'));
$outboundCall->setNCCO($ncco);
$response = $client->voice()->createOutboundCall($outboundCall);
var_dump($response);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 make-outbound-call-ncco.py hinzu:
from vonage import Auth, Vonage
from vonage_voice import CreateCallRequest, Phone, Talk, ToPhone
client = Vonage(
Auth(
application_id=VONAGE_APPLICATION_ID,
private_key=VONAGE_PRIVATE_KEY,
)
)
response = client.voice.create_call(
CreateCallRequest(
ncco=[Talk(text='This is a text to speech call from Vonage.')],
to=[ToPhone(number=VOICE_TO_NUMBER)],
from_=Phone(number=VONAGE_VIRTUAL_NUMBER),
)
)
pprint(response)Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
gem install vonageSchreiben Sie den Code
Fügen Sie Folgendes zu make-outbound-call-with-ncco.rb hinzu:
Fü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 die VOICE_TO_NUMBER wird angerufen, und wenn der Anruf entgegengenommen wird, ertönt eine Text-to-Speech-Nachricht.
Weitere Lektüre
- Sprachbenachrichtigungen - In diesem Leitfaden erfahren Sie, wie Sie eine Liste von Personen telefonisch kontaktieren, eine Nachricht übermitteln und sehen, wer den Erhalt der Nachricht bestätigt hat. Diese sprachbasierten kritischen Benachrichtigungen sind nachhaltiger als eine Textnachricht, so dass Ihre Nachricht mit größerer Wahrscheinlichkeit wahrgenommen wird. Durch die Bestätigung des Empfängers können Sie außerdem sicher sein, dass Ihre Nachricht angekommen ist.
- Konferenzanrufe - In diesem Leitfaden werden die beiden Concepts erläutert, die Vonage mit einem Anruf verbindet: ein Leg und ein Gespräch.
- Sprachbot mit Google Dialogflow - Dieser Leitfaden hilft Ihnen, mit einem Dialogflow-Beispielbot zu beginnen und mit ihm über Telefonanrufe zu interagieren, indem Sie die mitgelieferten Beispiel-Referenzcodes unter Verwendung der Vonage Voice API verwenden.