Condividi tramite


Migliorare e gestire la qualità delle chiamate

Questo articolo presenta gli strumenti chiave che è possibile usare per monitorare, risolvere i problemi e migliorare la qualità delle chiamate in Servizi di comunicazione di Azure. I materiali seguenti consentono di pianificare la migliore esperienza utente.

Prima di leggere questo articolo, acquisire familiarità con le informazioni generali sulle chiamate:

Preparare la rete e classificare in ordine di priorità il traffico di rete importante usando QoS

Quando gli utenti iniziano a usare i Servizi di comunicazione di Azure per chiamate e riunioni, potrebbero riscontrare un disturbo nella voce del chiamante o un'interruzione di una chiamata o una riunione. Il video condiviso può bloccarsi o diventare pixelato, oppure semplicemente non essere visibile. Questo problema è dovuto ai pacchetti IP che rappresentano il traffico voce e il traffico video, che trovano la rete congestionata e non arrivano in sequenza oppure non arrivano affatto. Se ciò si verifica (oppure per evitare che si verifichi), usare QoS (Quality of Service) seguendo i consigli sulla rete.

Con QoS è possibile classificare in ordine di priorità il traffico di rete sensibile ai ritardi, ad esempio i flussi vocali o video. È possibile consentire al traffico di "saltare la fila" e passare davanti al traffico meno sensibile. Un esempio di traffico con priorità più bassa è scaricare una nuova app. In tal caso, se l'operazione richiedesse un secondo in più non sarebbe un grosso problema.

QoS identifica e contrassegna tutti i pacchetti in flussi in tempo reale usando oggetti Criteri di gruppo di Windows e una funzionalità di routing denominata Elenchi di controllo di accesso basati su porte. Questa funzionalità indica alla rete di dare a voce, video e condivisione dello schermo la propria larghezza di banda di rete dedicata.

Idealmente, si implementa QoS nella rete interna nel momento dell'implementazione della soluzione Servizi di comunicazione di Azure. Ma puoi farlo in qualsiasi momento. Se la rete è abbastanza piccola, potrebbe non essere necessario usare QoS.

Per materiale sussidiario dettagliato, vedere Ottimizzazione della rete.

Preparare la distribuzione per indagini sulla qualità e sull'affidabilità

La qualità ha definizioni diverse a seconda del caso d'uso delle comunicazioni in tempo reale e della prospettiva degli utenti. Molte variabili influiscono sulla qualità percepita di un'esperienza di chiamata in tempo reale. Migliorare una variabile può causare il peggioramento di un'altra. Ad esempio, aumentando la frequenza dei fotogrammi e la risoluzione di una chiamata video, aumenta l'utilizzo della larghezza di banda della rete e la potenza di elaborazione.

Determinare i casi d'uso e i requisiti del cliente prima di iniziare lo sviluppo. Ad esempio, un cliente che deve monitorare decine di feed di telecamere di sicurezza contemporaneamente, potrebbe non avere bisogno della risoluzione massima e della frequenza dei fotogrammi che ogni flusso video può fornire. In questo scenario è possibile usare la funzionalità API Vincoli video per limitare la larghezza di banda usata da ogni flusso video.

Implementare la registrazione su piattaforme native

L'implementazione della registrazione come descritto nell'esercitazione sul recupero dei file di log è fondamentale per raccogliere i dettagli per lo sviluppo nativo. I log dettagliati consentono di diagnosticare i problemi specifici dei modelli di dispositivo o delle versioni del sistema operativo. Si consiglia agli sviluppatori che iniziano a configurare l'API Logs di ottenere informazioni dettagliate sulla durata delle chiamate.

Implementare funzionalità di qualità e affidabilità esistenti prima della distribuzione

È consigliabile usare questi esempi di chiamate facili da implementare, perché sono già ottimizzati per offrire agli utenti la migliore qualità delle chiamate.

Se gli esempi non soddisfano le proprie esigenze e si decide di personalizzare la soluzione di chiamata di Servizi di comunicazione di Azure, implementare le funzionalità seguenti per supportare un'esperienza di chiamata di alta qualità. Gli strumenti per queste funzionalità consentono di impedire il verificarsi di problemi comuni di qualità e affidabilità e diagnosticare i problemi se si verificano. Tenere presente che alcuni dati delle chiamate non vengono creati o archiviati a meno che non si implementino queste funzionalità.

Le sezioni seguenti illustrano in dettaglio gli strumenti da implementare nelle fasi di una chiamata:

  • Prima di una chiamata: preparazione prechiamata.
  • Durante una chiamata: comunicazione in chiamata.
  • Dopo una chiamata: monitoraggio e risoluzione dei problemi relativi alla qualità e all'affidabilità delle chiamate.

Prima di una chiamata

Grazie ai controlli pre-chiamata forniti da Servizi di comunicazione di Azure, è possibile conoscere lo stato di connessione di un utente prima della chiamata e agire in modo preventivo da parte sua. Ad esempio, se la connessione di un utente è scarsa, si può suggerire di disattivare il video prima di partecipare alla chiamata, per avere una connessione audio migliore.

Strumento di diagnostica di rete

Lo strumento di diagnostica di rete offre agli sviluppatori un'esperienza ospitata per convalidare l'idoneità delle chiamate durante lo sviluppo. È possibile verificare se il dispositivo di un utente e la rete sono in condizioni ottimali per la connessione al servizio, per garantire un'esperienza di chiamata ottimale. Lo strumento esegue la diagnostica sulla rete, sui dispositivi e sulla qualità delle chiamate.

Usando lo strumento di diagnostica di rete, gli utenti possono essere incoraggiati a risolvere i problemi di affidabilità e migliorare la connessione di rete prima di partecipare a una chiamata.

Per altre informazioni, vedere Strumento di diagnostica di rete.

API di pre-chiamata per la diagnostica

È possibile creare uno strumento di diagnostica di rete personalizzato o eseguire un'integrazione più approfondita di questo strumento nell'applicazione. In tal caso, è possibile usare l'API pre-chiamata per eseguire lo strumento di diagnostica per l'SDK chiamante.

L'API pre-chiamata consente di personalizzare l'esperienza nell'interfaccia utente. È quindi possibile eseguire la stessa serie di test usati dallo strumento di diagnostica di rete per garantire la compatibilità, la connettività e le autorizzazioni del dispositivo con una chiamata di test. Si può scegliere il modo migliore per indicare agli utenti come correggere i problemi prima dell'inizio delle chiamate. È inoltre possibile eseguire controlli specifici durante la risoluzione dei problemi di qualità e affidabilità.

Ad esempio, se il test hardware di un utente presenta un problema, è possibile inviare una notifica agli utenti per gestire le aspettative e le modifiche per le chiamate future.

Per altre informazioni, vedere Diagnostica preliminare alla chiamata.

Client di chiamata in conflitto

Poiché le chiamate video e le chiamate voce di Servizi di comunicazione di Azure vengono eseguite sul web e nei browser di dispositivi mobili, gli utenti potrebbero avere più schede del browser che eseguono istanze separate di Servizi di comunicazione di Azure che chiama SDK. Questa situazione può verificarsi per vari motivi, come gli esempi seguenti:

  • L'utente ha dimenticato di chiudere una scheda precedente.
  • L'utente non è riuscito a partecipare a una chiamata senza che sia presente un organizzatore della riunione. L'utente prova di nuovo a selezionare il collegamento per partecipare alla riunione e si apre una scheda separata del browser per dispositivi mobili.

La presenza di più schede del browser di chiamata contemporaneamente causa interruzioni del comportamento audio e video nella chiamata a cui l'utente sta tentando di partecipare, ovvero la chiamata di destinazione. È necessario assicurarsi che non siano aperte più schede del browser prima dell'avvio di una chiamata e (tramite monitoraggio) durante l'intero ciclo di vita della chiamata. Si può decidere di inviare notifiche ai clienti affinché chiudano le schede in eccesso, o per fornire supporto per partecipare a una chiamata nel modo corretto, con messaggi utili se non sono in grado di partecipare a una chiamata inizialmente.

Per verificare se l'utente dispone di più istanze di Servizi di comunicazione di Azure in esecuzione in un browser, vedere Come rilevare se un'applicazione che usa l'SDK di Servizi di comunicazione di Azure è attiva in più schede di un browser.

Durante una chiamata

Durante una chiamata, le condizioni di rete di un utente possono peggiorare o potrebbero verificarsi problemi di affidabilità e compatibilità. Queste situazioni possono comportare una scarsa esperienza di chiamata. Le sezioni seguenti consentono di applicare funzionalità per gestire i problemi in una chiamata e comunicare con gli utenti.

Diagnostica rivolta all’utente

Quando un utente è in una chiamata, è importante inviare notifiche in tempo reale sui problemi relativi alla chiamata. La funzionalità Diagnostica per utenti fornisce flag in tempo reale per i problemi che interessano l'utente, ad esempio la disattivazione del microfono durante la comunicazione o la scarsa qualità della rete.

È possibile personalizzare i messaggi dell'interfaccia utente per adattarsi al meglio agli scenari. Ad esempio:

  • Se un flag identifica un problema di rete, è possibile chiedere agli utenti di disattivare il video, modificare le reti o spostarsi in una posizione con una condizione o una connessione di rete migliore.
  • Se un flag identifica un problema del dispositivo, è possibile inviare all'utente il passaggio dei dispositivi.

Oltre alla messaggistica, è possibile agire per conto degli utenti e prendere in considerazione approcci proattivi per proteggere la larghezza di banda limitata di un utente. Se si scopre che gli utenti non disattivano sempre il video dopo aver ricevuto una notifica, è possibile disattivare in modo proattivo il video di un utente per dare priorità alla connessione audio. È anche possibile nascondere la funzionalità video ai clienti nell'interfaccia utente prima di partecipare a una chiamata.

Per maggiori informazioni, vedere Diagnostica rivolta all’utente.

Vincoli video

I flussi video utilizzano grandi quantità di larghezza di banda di rete. Se si sa che gli utenti hanno una larghezza di banda di rete limitata o condizioni di rete scadenti, è possibile controllare l'utilizzo della rete della connessione video di un utente usando vincoli video. Quando si limita la larghezza di banda che il flusso video di un utente può consumare, è possibile proteggere la larghezza di banda necessaria per una buona qualità audio in ambienti di rete scadenti.

Per maggiori informazioni, vedere Vincoli video.

Indicatore di volume

A volte gli utenti non riescono a sentirsi. Forse l'altoparlante ha un volume troppo basso, il dispositivo di chi ascolta non riceve i pacchetti audio o un problema del dispositivo audio sta bloccando il suono. Gli utenti non sanno quando l'altra persona non riesce a sentirli. È possibile usare l'indicatore di input e output per:

  1. Indicare se il volume di un utente è basso o assente.
  2. Chiedere all'utente di parlare più forte o analizzare un problema del dispositivo audio tramite l'interfaccia utente.

Per altre informazioni, vedere la guida introduttiva sull'aggiunta di un indicatore di volume alla chiamata Web.

Statistiche sulla qualità dei supporti

Poiché le condizioni di rete possono cambiare durante una chiamata, gli utenti possono segnalare qualità audio e video scarse anche se hanno avviato la chiamata senza problemi. La funzionalità di statistiche sulla qualità dei contenuti multimediali offre metriche di qualità dettagliate su ogni flusso audio, video e condivisione schermo in ingresso e in uscita. Queste informazioni dettagliate permettono di monitorare le chiamate in corso, mostrare agli utenti lo stato di qualità della rete durante una chiamata ed eseguire il debug di singole chiamate.

Le metriche di questa funzionalità consentono di indicare problemi nei flussi multimediali dell'SDK client di Servizi di comunicazione di Azure per l'invio e la ricezione. Ad esempio, è possibile monitorare attivamente il valore del flusso video in uscita availableBitrate, notare un calo permanente al di sotto dei 1,5 Mbps consigliati e informare l'utente che la qualità video è danneggiata.

I dati di log del server offrono solo un riepilogo generale della chiamata al termine. Le statistiche dettagliate sui supporti forniscono metriche di basso livello per tutta la durata della chiamata e successivamente per un'analisi più approfondita.

Per maggiori informazioni, vedere Statistiche sulla qualità degli elementi multimediali.

API Conteggio video ottimale

Durante una chiamata di gruppo con due o più partecipanti, la qualità video di un utente può variare a causa di variazioni delle condizioni di rete e delle limitazioni hardware specifiche. Usando l'API Conteggio video ottimale, si può migliorare la qualità delle chiamate di un utente comprendendo quanti flussi video l'endpoint locale può eseguire contemporaneamente, senza peggiorare la qualità.

Implementando tale funzionalità, è possibile mantenere la qualità delle chiamate e la larghezza di banda degli endpoint locali, che altrimenti tenterebbero di eseguire il rendering del video scadente. L'API espone la proprietà optimalVideoCount, che cambia dinamicamente in risposta alle funzionalità di rete e hardware di un endpoint locale. Queste informazioni sono disponibili in fase di runtime e vengono aggiornamente durante la chiamata, consentendo di adattare l'esperienza visiva di un utente man mano che cambiano le condizioni hardware e di rete.

Per implementare questa funzionalità, vedere le linee guida sulla piattaforma Web Gestire i video durante le chiamate.

Dopo una chiamata

Prima di rilasciare e ridimensionare la soluzione chiamante di Servizi di comunicazione di Azure, implementare le funzionalità di monitoraggio seguenti per la qualità e l'affidabilità, in modo da garantire la raccolta di log e metriche disponibili. I dati delle chiamate non vengono archiviati fino a quando non si implementano le funzionalità, quindi non è possibile monitorare ed eseguire il debug della qualità e dell'affidabilità delle chiamate senza di esse.

Per maggiori informazioni, vedere Log chiamate video e chiamate voce di Servizi di comunicazione di Azure.

Iniziare a raccogliere i log delle chiamate

Consultare questa documentazione per iniziare a raccogliere i log delle chiamate: abilitare i log tramite impostazioni di diagnostica in Monitoraggio di Azure.

Per visualizzare e analizzare i dati in Monitoraggio di Azure, è consigliabile scegliere il gruppo di categorie allLogs e scegliere il dettaglio di destinazione di Invia all'area di lavoro Log Analytics. Se non si dispone di un'area di lavoro Log Analytics a cui inviare i dati, crearne una.

Per considerazioni specifiche relative ai costi, è consigliabile monitorare i criteri di utilizzo e conservazione dei dati. Per altre informazioni, vedere Controllo dei costi.

Diagnosticare le chiamate tramite Diagnostica chiamate

Diagnostica chiamate è un'esperienza di Monitoraggio di Azure che offre informazioni dettagliate personalizzate tramite pagine di telemetria e di diagnostica specializzate, nel portale di Azure.

Dopo aver iniziato l'archiviazione dei dati di log nell'area di lavoro Log Analytics, è possibile visualizzare la propria ricerca di singole chiamate e i dati in Diagnostica chiamate. Nell'account di Monitoraggio di Azure passare alla risorsa di Servizi di comunicazione di Azure e individuare Diagnostica chiamata dal menu del servizio. Vedere Diagnostica chiamate per informazioni su come usare al meglio questa funzionalità.

Esaminare la qualità delle chiamate usando informazioni dettagliate vocali e video

Dopo aver abilitato i log, è possibile visualizzare le informazioni dettagliate sulle chiamate nella risorsa di Azure usando gli esempi di visualizzazione in Informazioni dettagliate voce e video.

È possibile modificare le cartelle di lavoro esistenti o anche crearne di personalizzate. Per altre informazioni, vedere Cartelle di lavoro di Azure.

Per esempi di analisi più approfondite suggerite, vedere i log delle chiamate di query.

Analizzare il sentiment dell'utente usando il sondaggio di fine chiamata

Il feedback dei clienti è prezioso. Il sondaggio end-of call consente di comprendere in che modo gli utenti percepiscono la qualità e l'affidabilità complessive della soluzione per chiamate JavaScript o Web SDK.

È possibile modificare il sondaggio in vari formati se è già disponibile una soluzione di sondaggio. Dopo aver pubblicato i dati dei sondaggi, si possono visualizzare i risultati in Monitoraggio di Azure per l'analisi e i miglioramenti. Servizi di comunicazione di Azure usa anche i risultati dell'API del sondaggio per monitorare e migliorare la qualità e l'affidabilità della chiamata.

Per implementare la funzionalità, vedere Esercitazione: Usare il sondaggio di fine chiamata per raccogliere commenti e suggerimenti degli utenti. Dopo aver abilitato le impostazioni di diagnostica per acquisire i dati del sondaggio, è possibile usare le query di log delle chiamate di esempio in Azure Log Analytics per analizzare l'esperienza di qualità percepita dall'utente. I feedback degli utenti possono rivelare problemi di chiamata di cui non si era a conoscenza e aiutare a stabilire i miglioramenti qualitativi prioritari.

Per maggiori informazioni, vedere Panoramica del sondaggio di fine chiamata.

Analizzare i dati delle chiamate direttamente dal client

Raccogliendo dati delle chiamate, ad esempio Statistiche multimediali, Diagnostica per utenti e informazioni sull'API di pre-chiamata, è possibile esaminare le chiamate con scarsa qualità per eseguire l'analisi della causa radice durante la risoluzione dei problemi.

Si consideri una situazione ipotetica in cui, in una chiamata di un'ora, un utente segnali un audio scadente ad un certo punto della chiamata. La chiamata potrebbe aver attivato un flag di diagnostica rivolto all'utente che ha indicato un problema grave con la qualità di un flusso multimediale in ingresso o in uscita.

Archiviando le statistiche multimediali dettagliate della chiamata, è possibile esaminare quando si è verificato un flag Diagnostica per utenti, per verificare la presenza di perdite elevate di pacchetti, instabilità o latenza intorno allo stesso periodo, che indica una condizione di rete scarsa. Per esempio, è possibile verificare se la rete è stata interessata, ad esempio, dalla rete non gestita di un client esterno, da un traffico di rete non necessario a causa di criteri di definizione delle priorità di rete QoS (Quality of Service) non appropriati, o una rete privata virtuale (VPN) non necessaria.

Nota

Come regola, è consigliabile dare priorità di larghezza di banda alla connessione audio di un utente, piuttosto che alla connessione video. È consigliabile classificare in ordine di priorità sia l'audio che il video prima di altro traffico di rete. Quando una rete non è in grado di supportare audio e video insieme, è possibile disabilitare in modo proattivo il video di un utente oppure incoraggiare l'utente a disabilitare lui stesso il video.

Richiesta di supporto

Se si verificano problemi di qualità o affidabilità che non è possibile risolvere, è possibile inviare una richiesta di supporto tecnico. Più informazioni è possibile fornire nella richiesta, meglio è. (I log nativi sono fondamentali per ottimizzare il tempo di risposta). Tuttavia, è comunque possibile inviare richieste con informazioni parziali per avviare la richiesta. Per altre informazioni, vedere Creare una richiesta di supporto di Azure.

Se si riceve una notifica sui requisiti di licenza quando si cerca di richiedere supporto tecnico, potrebbe essere necessario scegliere un piano di supporto di Azure a pagamento più adatto alle proprie esigenze. Vedere Confrontare i piani di supporto.

Se si preferisce non acquistare supporto, è possibile sfruttare il supporto della community. Vedere Supporto della community di Azure.

Altre considerazioni

Se non si ha accesso al portale di Azure del cliente per visualizzare i dati associati all'ID risorsa di Azure, è possibile richiedere di eseguire query sulle aree di lavoro per migliorare la qualità per loro conto. Per altre informazioni, vedere Eseguire query sui dati in aree di lavoro, applicazioni e risorse di Log Analytics in Monitoraggio di Azure.