Python

Escribe tu webhook de respuesta

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

Su OCN debe utilizar el text para saludar a la persona que llama, y la acción connect Acción para conectar la llamada a tu punto final de 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)

El type de endpoint es websocketEl uri es el /socket ruta desde la que se podrá acceder a tu servidor WebSocket y la content-type especifica la calidad de audio.