You are viewing the Spanish (Mexico) site, but your language preference is set to English. Switch to English site →

Menu

Expand
Calificar esta página:

SDK de Voice para JavaScript: Twilio en el navegador

Estás viendo la documentación de la versión 2.X del SDK de Voice para JavaScript. Consulta la Guía de migración para aprender a migrar de 1.X a 2.X o consulta la documentación específica de 1.x.

El SDK de Twilio Client para JavaScript ahora se llama SDK de Twilio Voice para JavaScript.

Descripción general

El SDK de Twilio Voice para JavaScript te permite realizar llamadas de voz desde y hacia un navegador web y una aplicación Twilio TwiML Voice. Esto significa que puedes establecer conexiones de audio entrantes y salientes con Twilio para desarrollar teléfonos basados en software, intercomunicadores, llamadas de conferencia, sistemas de clic para hablar y mucho más, todo desde el navegador.

¿Deseas comenzar de inmediato? Dirígete directamente a una de nuestras guías de Inicio rápido sobre el SDK de Voice para JavaScript.

Intending to write back-end JavaScript with Twilio in Node.js to support your front-end client? Check out the Twilio Node.js SDK.

Cómo funciona

Configura el dispositivo y establece una conexión con Twilio. El audio del micrófono del dispositivo se envía a Twilio, y Twilio envía el audio que se reproduce a través de los altavoces del dispositivo, como en una llamada telefónica normal. La diferencia clave es que con el SDK de Twilio Voice para JavaScript, tu "teléfono" es un Twilio.Device, un "dispositivo de software" que proporciona conexiones con Twilio.

Voice JS SDK Diagram: Your application connects to Twilio, Twilio sends a webhook to your back end to get TwiML instructions, Twilio executes those instructions (e.g. calls a number).

Cuando inicias una llamada con el objeto Twilio.Device proporcionado por el SDK para JavaScript, no estás llamando a otro teléfono directamente. Más bien, estás conectándote con Twilio y pidiéndole que obtenga el TwiML de tu servidor para manejar la llamada. Esto es análogo a la forma en que Twilio maneja las llamadas entrantes desde un teléfono real.

El SDK para JavaScript utiliza los mismos verbos y sustantivos de TwiML que se utilizan para manejar las llamadas de Twilio Voice. También hemos agregado un sustantivo <Client> nuevo para marcar a un "cliente" (otra instancia de un Twilio.Device).

Aplicaciones TwiML

Como las llamadas realizadas con un Twilio.Device no se realizan a un número de teléfono específico, Twilio confía en una aplicación TwiML dentro de tu cuenta para que determine cómo interactuar con tu servidor. Una aplicación TwiML no es más que una forma práctica de almacenar un conjunto de direcciones URL, como VoiceUrl y SmsUrl de un número de teléfono, pero sin asociarlas con un número de teléfono específico. Esto hace que las aplicaciones TwiML sean perfectas para manejar las conexiones desde tu Twilio.Device, que es la razón por la que las creamos en primer lugar.

Cuando el Twilio.Device inicia una llamada a Twilio, se hace una solicitud a la propiedad VoiceUrl de una aplicación dentro de tu cuenta. Especifica la aplicación a la que te estás conectando con un Access Token (Token de acceso). Twilio utiliza la respuesta TwiML de tu solicitud a esa la VoiceUrl de esa aplicación para dirigir lo que sucede con la llamada del Twilio.Device.

Instalación

NPM

Te recomendamos utilizar npm para agregar el SDK de Voice como dependencia.

npm install @twilio/voice-sdk --save

A través de este método, puedes usar la palabra clave import para importar el SDK de Voice mediante la sintaxis de ES Module o TypeScript.

import { Device } from '@twilio/voice-sdk';

O mediante CommonJS:

const Device = require('@twilio/voice-sdk').Device;

CDN

A partir de la versión 2.0, el SDK de Twilio Voice ya no se aloja en una CDN.

GitHub

Aunque recomendamos usar npm para agregar el SDK de Voice como una dependencia, también puedes obtener el código del SDK de Twilio Voice en GitHub e incluirlo directamente en tu proyecto. Para ello, dirígete a "Releases" (Versiones) y busca la versión más reciente o la versión concreta que deseas utilizar.

Las versiones con la etiqueta "-rc" son "Release Candidate" (Versiones candidatas) y siguen en la etapa de prueba. A menos que sepas específicamente que deseas utilizar una versión candidata, no debes utilizar una versión con la etiqueta "-rc" en el nombre.

Descarga el paquete zip o tar.gz y, a continuación, extrae los archivos. Por ejemplo, si descargaste el tarball de la versión 2.0.0, podrías extraer los archivos con el siguiente comando tar:

tar -xvzf twilio-voice.js-2.0.0.tar.gz
cd twilio-voice.js-2.0.0

Una vez que hayas extraído la carpeta, los archivos twilio.js y twilio.min.js que puedes incluir en el proyecto estarán en el directorio /dist. twilio.min.js es la versión minificada del código.

Puedes copiar el archivo twilio.js o twilio.min.js en el proyecto y, a continuación, proporcionar un enlace a él en el html. Por ejemplo:

<script type="text/javascript" src="twilio.min.js"></script>

Con este método, puedes acceder al SDK a través de la información global del navegador:

const Device = Twilio.Device;

Navegadores compatibles

En la siguiente tabla se indican los navegadores compatibles con el SDK de Twilio Voice para JavaScript. Admitimos las versiones más recientes (N) y las dos anteriores (N-2) de estos navegadores, a menos que se indique lo contrario.

Chrome Firefox Safari* Edge**
Android
iOS
Linux
macOS
Windows

* La compatibilidad de Safari con WebRTC comenzó en la versión 11 de dicho navegador.

** Solo es compatible con las versiones de Edge basadas en Chromium. No es compatible con versiones antiguas de Edge. Revisa este aviso para obtener más información.

Los navegadores móviles carecen de la capacidad de recibir o mantener la conectividad de llamadas mientras están en segundo plano y no permiten la gestión de interrupción de llamadas GSM. Esto provoca una mala experiencia de usuario. Para brindar la mejor experiencia de usuario, Twilio recomienda tener en cuenta estas limitaciones a la hora de crear aplicaciones móviles con Voice. Twilio también recomienda evaluar los SDK para iOS y Android a la hora de crear aplicaciones móviles con Voice.

Compatibilidad con Electron

El SDK de Twilio Voice para JavaScript también es compatible con la última versión de Electron

Seguridad

Canal Tipo
Señalización TLS (Web Socket seguro)
Medios DTLS-SRTP (AES_CM_128_HMAC_SHA1_80)

Versiones actuales

A partir de la versión 1.3, el SDK de Twilio Voice para JavaScript (antes conocido como SDK de Twilio Client para JS) ha seguido de forma estricta el control de versiones semántico: las actualizaciones de menor nivel solo contienen actualizaciones de características y son completamente compatibles con las versiones 1.3.0 y posteriores.

Versiones obsoletas

La compatibilidad con las versiones 1.1 y 1.2 de twilio.js cesó el 14 de febrero del 2018. Si aún utilizas alguna de estas versiones, usa la Guía de migración para actualizar la versión a una más reciente.

Calificar esta página:

¿Necesitas ayuda?

Todos la necesitamos a veces; la programación es difícil. Obtén ayuda ahora de nuestro equipo de soporte, o recurre a la sabiduría de la multitud visitando Stack Overflow Collective de Twilio o navegando por la etiqueta de Twilio en Stack Overflow.

        
        
        

        Gracias por tus comentarios.

        Selecciona los motivos de tus comentarios. La información adicional que nos brindas nos ayuda a mejorar nuestra documentación:

        Enviando tus comentarios…
        🎉 Gracias por tus comentarios.
        Se produjo un error. Inténtalo de nuevo.

        Gracias por tus comentarios.

        thanks-feedback-gif