Crear el WebSocket
En primer lugar, gestione el connection para que pueda informar cuando su servidor webhook está en línea y listo para recibir el audio de la llamada:
Al escribir audio en un WebSocket de la Voice API, se espera que el audio esté en un formato formato específico. Para ello, necesitarás una función que separe los datos binarios de audio en matrices del tamaño correcto:
A continuación, cree un manejador de rutas para el /socket ruta. Cuando se conecte el WebSocket, se llamará a esta ruta:
La ruta carga un archivo de audio desde el disco, puede descargar el mismo desde GitHubutiliza la biblioteca WaveFile para cambiar la frecuencia de muestreo y la profundidad de bits para la Voice API. A continuación, obtiene las muestras de audio del primer canal de audio y utiliza la función anterior para cambiar el tamaño de la matriz de datos binarios de audio. Por último, se itera sobre los datos binarios de audio y se envían a la llamada a través del WebSocket con la función send() función.
NOTA: Vonage sólo almacenará 3072 mensajes que debería ser suficiente para unos 60 segundos de audio, si tu archivo es más largo que esto deberías implementar un retardo de 18-19ms entre cada mensaje.
Reproducir audio en un WebSocket
Aprenda a conectar una llamada entrante de Voice API a un WebSocket y, a continuación, a reproducir audio con JavaScript.