Python

Escriba su webhook de respuesta

Cuando Vonage reciba una llamada entrante en tu número virtual, realizará una solicitud a tus /webhooks/answer ruta. Esta ruta debe aceptar una dirección HTTP GET y devuelve un Objeto de control de llamadas Nexmo (NCCO) que le indica a Vonage cómo manejar la llamada.

Su OCN debe utilizar el text para saludar a la persona que llama, y la acción connect para conectar la llamada a su punto final webhook:

#!/usr/bin/env python3
from flask import Flask, request, jsonify
from flask_sock import Sock

app = Flask(__name__)
sock = Sock(app)


@app.route("/webhooks/answer")
def answer_call():
    ncco = [
        {
            "action": "talk",
            "text": "We will now connect you to the echo server, wait a moment then start speaking.",
        },
        {
            "action": "connect",
            "from": "Vonage",
            "endpoint": [
                {
                    "type": "websocket",
                    "uri": f"wss://{request.host}/socket",
                    "content-type": "audio/l16;rate=16000",
                }
            ],
        },
    ]

    return jsonify(ncco)

En type de endpoint es websocketEl uri es el /socket ruta donde su servidor WebSocket será accesible y el content-type especifica la calidad de audio.