Python

Rédigez votre réponse webhook

Lorsque Vonage reçoit un appel entrant sur votre numéro virtuel, il fait une demande à votre /webhooks/answer route. Cette route doit accepter un message HTTP GET et renvoie un Objet de contrôle d'appel Nexmo (NCCO) qui indique à Vonage comment traiter l'appel.

Votre BCN doit utiliser le text pour accueillir l'appelant, et l'action connect pour connecter l'appel à votre point de terminaison 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)

Les type de endpoint est websocket, le uri est le /socket où votre serveur WebSocket sera accessible et l'adresse content-type spécifie la qualité audio.