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 bodyParser = require('body-parser')
const app = express()
const expressWs = require('express-ws')(app)

app.use(bodyParser.json())

app.get('/webhooks/answer', (req, res) => {
  let nccoResponse = [
    {
      "action": "talk",
      "text": "Please wait while we connect you to the echo server"
    },
    {
      "action": "connect",
      "from": "Vonage",
      "endpoint": [
        {
          "type": "websocket",
          "uri": `wss://${req.hostname}/socket`,
          "content-type": "audio/l16;rate=16000",
        }
      ]
    }
  ]

  res.status(200).json(nccoResponse)
})

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.