Cos'è WebRTC?

Definizione

WebRTC è un insieme di standard web e protocolli che permettono a browser e app di inviare audio, video e dati in tempo reale direttamente tra dispositivi. Gestisce cifratura, attraversamento delle reti e trasporto dei media.

Leggi la guida completa: WebRTC vs WebSocket per l'IA vocale in tempo reale

Come funziona WebRTC

WebRTC sono due insiemi di specifiche: un’API JavaScript del W3C e un gruppo di protocolli dell’IETF di cui la RFC 8825 offre una panoramica. Insieme permettono a una pagina di catturare un microfono, stabilire una connessione e inviarvi audio.

Stabilire una connessione richiede tre parti. La segnalazione è il modo in cui i due lati si scambiano offerte e risposte, e WebRTC la lascia all’applicazione, quindi ogni app usa il proprio server. ICE trova un percorso di rete tra i due lati, anche attraverso router domestici e firewall, usando server ausiliari chiamati STUN e TURN quando un percorso diretto è bloccato. I media scorrono poi su UDP, cifrati con DTLS e SRTP, e trasportano audio codificato con Opus. La RFC 7874 richiede che gli endpoint WebRTC supportino Opus e G.711.

I browser aggiungono funzioni che contano per la voce: cancellazione dell’eco, soppressione del rumore e controllo automatico del guadagno, applicati al microfono prima dell’invio. Si adattano anche alla perdita di pacchetti e al jitter senza che l’applicazione debba fare nulla.

Perché conta per gli agenti vocali

Un agente vocale raggiunge chi chiama in due modi. Le telefonate arrivano tramite la PSTN e un trunk SIP, con audio telefonico a banda stretta. Le chiamate da un sito web o da un’app mobile possono usare WebRTC e mantenere audio a banda larga, il che aiuta il riconoscimento e suona meglio.

Il compromesso è operativo. WebRTC funziona su UDP e si riprende dalle perdite senza aspettare, il che si addice a una latenza bassa, ma richiede segnalazione e spesso server TURN, che costano denaro e aggiungono parti mobili. Un WebSocket trasporta l’audio su TCP, che è più semplice da costruire e può bloccarsi quando si perdono pacchetti. La guida li confronta in dettaglio.

Un agente vocale in un’app non riceve nemmeno un numero di telefono, quindi l’identificativo del chiamante e l’instradamento per numero non si applicano. È l’app a identificare l’utente.

Esempio

Una configurazione illustrativa: una pagina di assistenza ha un pulsante Parla con noi. Cliccandolo si chiede il permesso per il microfono, si apre una connessione WebRTC verso il server dell’agente e si trasmette audio Opus a 48 kHz in entrambe le direzioni. Lo stesso agente risponde anche al numero di telefono dell’azienda tramite un trunk SIP a 8 kHz.

Guide

Fonti

Inizia oggi

Parla con un esperto.

Contatta un membro del nostro team e scopri come Cartesia può aiutarti a creare esperienze vocali di altissimo livello.

Contatta il team commerciale

Inizia a sviluppare.

Accedi ai nostri modelli tramite API e porta un agente vocale in produzione in pochi minuti.

Prova Cartesia