Node.js
Schreiben Sie Ihre Antwort Webhook
Wenn Vonage einen eingehenden Anruf auf Ihrer virtuellen Nummer empfängt, stellt es eine Anfrage an Ihre /webhooks/answer Route. Diese Route sollte ein HTTP GET Anfrage und geben eine Nexmo Call Control Objekt (NCCO) die Vonage mitteilt, wie der Anruf behandelt werden soll.
Ihr NCCO sollte die text Aktion zur Begrüßung des Anrufers und die connect Aktion, um den Anruf mit Ihrem Webhook-Endpunkt zu verbinden:
'use strict'
const express = require('express');
const WaveFile = require('wavefile').WaveFile;
const fs = require('fs');
const app = express();
const expressWs = require('express-ws')(app);
const port = 3000;
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.get('/webhooks/answer', (req, res) => {
let nccoResponse = [
{
"action": "talk",
"text": "Please wait while we connect you to the echo server"
},
{
"action": "connect",
"from": "NexmoTest",
"endpoint": [
{
"type": "websocket",
"uri": `wss://${req.hostname}/socket`,
"content-type": "audio/l16;rate=16000",
}
]
}
]
res.status(200).json(nccoResponse);
});
app.listen(port, () => console.log(`Listening on port ${port}`));
Die type von endpoint ist websocketdie uri ist die /socket Route, über die Ihr WebSocket-Server erreichbar sein wird, und die content-type gibt die Audioqualität an.
Audio in einem WebSocket abspielen
Erfahren Sie, wie Sie einen eingehenden Voice API-Anruf mit einem WebSocket verbinden und dann mit JavaScript Audio abspielen.
Verfügbar am:
Schritte
1
Einleitung zu dieser Aufgabe2
Prerequisites3
Eine Vonage Nummer kaufen4
Erstellen einer Sprachanwendung5
Verknüpfen einer Vonage-Nummer6
Das Projekt erstellen7
Schreiben Sie Ihre Antwort Webhook8
Schreiben Sie Ihren Ereignis-Webhook9
Erstellen Sie den WebSocket10
Testen Sie Ihre Anwendung11
Was kommt als Nächstes?