O que é o WebRTC?

Definição

O WebRTC é um conjunto de padrões web e protocolos que permitem a navegadores e aplicativos enviar áudio, vídeo e dados em tempo real diretamente entre dispositivos. Cuida da criptografia, da travessia de redes e do transporte de mídia.

Leia o guia completo: WebRTC vs WebSocket para IA de voz em tempo real

Como o WebRTC funciona

O WebRTC são dois conjuntos de especificações: uma API JavaScript do W3C e um grupo de protocolos do IETF dos quais a RFC 8825 dá uma visão geral. Juntos, permitem que uma página capture um microfone, estabeleça uma conexão e envie áudio por ela.

Estabelecer uma conexão exige três partes. A sinalização é como os dois lados trocam ofertas e respostas, e o WebRTC a deixa a cargo da aplicação, então cada app usa seu próprio servidor. O ICE encontra um caminho de rede entre os dois lados, inclusive através de roteadores domésticos e firewalls, usando servidores auxiliares chamados STUN e TURN quando um caminho direto está bloqueado. A mídia então flui por UDP, criptografada com DTLS e SRTP, e carrega áudio codificado com Opus. A RFC 7874 exige que os endpoints WebRTC suportem Opus e G.711.

Os navegadores acrescentam recursos que importam para a voz: cancelamento de eco, supressão de ruído e controle automático de ganho, aplicados ao microfone antes do envio. Eles também se adaptam à perda de pacotes e ao jitter sem que a aplicação faça nada.

Por que importa para agentes de voz

Um agente de voz alcança quem liga de duas formas. As chamadas telefônicas chegam pela PSTN e por um tronco SIP, com áudio de telefonia de banda estreita. As chamadas de um site ou de um aplicativo móvel podem usar WebRTC e manter áudio de banda larga, o que ajuda o reconhecimento e soa melhor.

A troca é operacional. O WebRTC roda sobre UDP e se recupera de perdas sem esperar, o que serve a uma latência baixa, mas precisa de sinalização e muitas vezes de servidores TURN, que custam dinheiro e acrescentam peças móveis. Um WebSocket carrega áudio sobre TCP, que é mais simples de construir e pode travar quando pacotes se perdem. O guia os compara em detalhe.

Um agente de voz em um aplicativo também não recebe um número de telefone, então o identificador de chamadas e o roteamento por número não se aplicam. O aplicativo identifica o usuário no lugar.

Exemplo

Uma configuração ilustrativa: uma página de suporte tem um botão Fale conosco. Clicar nele pede permissão para o microfone, abre uma conexão WebRTC com o servidor do agente e transmite áudio Opus de 48 kHz nos dois sentidos. O mesmo agente também atende o número de telefone da empresa por um tronco SIP a 8 kHz.

Guias

Fontes

Comece hoje

Fale com um especialista.

Converse com alguém da nossa equipe e descubra como a Cartesia pode ajudar você a criar experiências de voz de alto nível.

Fale com vendas

Comece a criar.

Acesse nossos modelos por API e coloque um agente de voz em produção em minutos.

Experimente a Cartesia