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

Menu

Expand
Classifique esta página:

SDK de JavaScript do Voice: Twilio no navegador

Você está visualizando a documentação da versão 2.X do Voice JavaScript SDK. Consulte o Guia de migração para saber como migrar do 1.X para o 2.X ou veja a documentação específica do 1.x.

O SDK do Twilio Client JavaScript foi renomeado para SDK do Twilio Voice JavaScript.

Visão geral

O SDK de JavaScript do Twilio Voice permite fazer chamadas de voz de e para um navegador da Web e um aplicativo da Twilio TwiML Voice. Isso significa que você pode abrir conexões de áudio de entrada e saída para o Twilio para a criação de softphones, walkie-talkies, chamadas em conferência, sistemas de clique para falar e muito mais, tudo a partir do navegador.

Quer começar agora mesmo? Acesse direto um de nossos Inícios rápidos do SDK de JavaScript do Voice.

Pretende escrever JavaScript de back-end com a Twilio em Node.js para dar suporte ao seu client (cliente) de front-end? Confira o SDK do Twilio Node.js.

Como funciona

Você configura seu dispositivo e estabelece uma conexão com a Twilio. O áudio do microfone do dispositivo é enviado para a Twilio, e a Twilio envia o áudio reproduzido pelos alto‐falantes do dispositivo, como em uma chamada telefônica normal. A principal diferença é que, com o SDK de JavaScript do Twilio Voice, seu "telefone" é um Twilio.Device, um "dispositivo de software" que fornece conexões a 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).

Ao iniciar uma chamada usando o objeto Twilio.Device fornecido pelo SDK de JavaScript, você não está chamando outro telefone diretamente. Em vez disso, você está se conectando ao Twilio e instruindo o Twilio a buscar o TwiML do seu servidor para lidar com a chamada. Isso é análogo à maneira como a Twilio lida com chamadas recebidas de um telefone real.

O SDK de JavaScript usa os mesmos verbos e substantivos TwiML usados para lidar com chamadas do Twilio Voice. Também adicionamos um novo substantivo <Client> para discagem a um "cliente" (outra instância de um Twilio.Device).

Aplicativos TwiML

Como as chamadas realizadas com um Twilio.Device não são feitas para um número de telefone específico, a Twilio conta com um aplicativo TwiML em sua conta para determinar como interagir com o servidor. Um aplicativo TwiML é apenas uma maneira conveniente de armazenar um conjunto de URLs, como VoiceUrl e SmsUrl em um número de telefone, mas sem bloqueá‐los para um número de telefone específico. Isso torna os aplicativos TwiML perfeitos para lidar com conexões do seu Twilio.Device, e é por isso que os criamos em primeiro lugar.

Assim, quando o Twilio.Device inicia uma chamada para a Twilio, uma solicitação é feita para a propriedade VoiceUrl de um aplicativo em sua conta. Você especifica o aplicativo ao qual está se conectando com um Access Token (Token de acesso). A Twilio usa a resposta do TwiML de sua solicitação para que o aplicativo VoiceUrl direcione o que acontece com a chamada do Twilio.Device.

Instalação

NPM

Recomendamos o uso do npm para adicionar o SDK do Voice como uma dependência.

npm install @twilio/voice-sdk --save

Usando esse método, você pode import o SDK do Voice usando o Módulo ES ou a sintaxe TypeScript:

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

Ou usando CommonJS:

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

CDN

A partir da 2.0, o SDK do Voice da Twilio não será mais hospedado via CDN.

GitHub

Embora seja recomendável usar npm para adicionar o SDK do Voice como uma dependência, você também pode obter o código do SDK do Voice da Twilio no GitHub e incluí‐lo diretamente em seu projeto. Para fazer isso, navegue até "Releases" (Versões) e encontre a versão mais recente ou a versão de versão específica que você gostaria de usar.

As versões marcadas com "-rc" são versões "Release Candidate" (Candidatas a liberação) e ainda estão sendo testadas. A menos que você saiba especificamente que deseja usar uma versão candidata à liberação, não deve usar uma versão com "-rc" no nome.

Faça download do zip ou do tar.gz e extraia os arquivos. Por exemplo, se você fez o download do tarball para a versão 2.0.0 , poderá extrair os arquivos com o comando tar :

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

Depois de extrair a pasta, os arquivos twilio.js e twilio.min.js que você pode incluir em seu projeto estarão no diretório /dist. twilio.min.js é a versão reduzida do código.

Você pode copiar o arquivo twilio.js ou o twilio.min.js em seu projeto e, em seguida, fornecer um link para ele em seu html. Por exemplo:

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

Usando esse método, você pode acessar o SDK por meio do navegador global:

const Device = Twilio.Device;

Navegadores compatíveis

A tabela a seguir indica os navegadores compatíveis pelo SDK de JavaScript do Twilio Voice. Oferecemos suporte às versões mais recentes (N) e às duas versões anteriores (N-2) desses navegadores, a menos que indicado de outra forma.

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

* O suporte WebRTC no Safari foi iniciado com o Safari versão 11.

** Oferecemos suporte apenas ao Edge baseado em Chromium. Edge legado não é compatível. Consulte este informe para obter mais detalhes.

Os navegadores para dispositivos móveis não têm a capacidade de receber ou manter a conectividade de chamadas enquanto estão em segundo plano e não permitem o tratamento da interrupção de chamadas GSM. Isso leva a uma experiência do usuário insatisfatória. Para criar a melhor experiência de usuário, a Twilio recomenda entender essas limitações ao criar aplicativos do Voice para dispositivos móveis. A Twilio também recomenda avaliar os SDKs de iOS e Android para criar aplicativos do Voice para dispositivos móveis.

Suporte a Electron

O SDK de JavaScript do Twilio Voice também é compatível na versão mais recente do Electron

Segurança

Canal Tipo
Sinalização TLS (WebSocket seguro)
Mídia DTLS-SRTP (AES_CM_128_HMAC_SHA1_80)

Versões atuais

A partir da versão 1.3, o SDK de JavaScript do Twilio Voice (anteriormente conhecido como SDK do JS do Twilio Client) segue estritamente o controle de versão semântica: atualizações de nível secundário contêm apenas atualizações de recursos e são totalmente compatíveis com versões anteriores do 1.3.0 e mais recentes.

Versões descontinuadas

O suporte para twilio.js 1.1 e 1.2 foi encerrado em 14 de fevereiro de 2018. Se você ainda estiver usando uma dessas versões, use o Guia de migração para atualizar para a versão mais recente.

Classifique esta página:

Precisa de ajuda?

Às vezes, todos nós precisamos; a programação é difícil. Receba ajuda agora da nossa equipe de suporte, ou confie na sabedoria da multidão navegando pelo Stack Overflow Collective da Twilio ou buscando a tag Twilio no Stack Overflow.

        
        
        

        Obrigado pelo seu feedback!

        Selecione o(s) motivo(s) para seu feedback. As informações adicionais que você fornece nos ajudam a melhorar nossa documentação:

        Enviando seu feedback...
        🎉 Obrigado pelo seu feedback!
        Algo deu errado. Tente novamente.

        Obrigado pelo seu feedback!

        thanks-feedback-gif