Ottimizzazione SDK per comunicazioni unificate
Introduzione
Citrix Virtual Apps and Desktops consente di distribuire applicazioni agli utenti su un’ampia varietà di dispositivi endpoint. Molte di queste applicazioni includono funzionalità di comunicazione in tempo reale (RTC), come le conferenze audio e video. Tuttavia, possono sorgere delle sfide quando si distribuiscono queste applicazioni in un ambiente virtualizzato. I metodi di distribuzione tradizionali instradano i flussi multimediali (audio/video) dal dispositivo client al server VDI nel data center prima di inviarli nuovamente all’endpoint. Questo “hairpinning” introduce traffico e overhead di elaborazione non necessari sul server, specialmente per le chiamate audio e video ad alta intensità di banda.
Il Citrix Unified Communications SDK (UCSDK) è una tecnologia che consente ai fornitori di tecnologia di ottimizzare queste applicazioni RTC per l’uso negli ambienti Citrix. Quando un’applicazione è ottimizzata, può fornire un’esperienza utente che eguaglia o addirittura supera quella dell’applicazione in esecuzione su un desktop locale. Nel mondo di oggi, la comunicazione in tempo reale senza interruzioni è essenziale per la produttività e la collaborazione. Quando si utilizzano applicazioni all’interno di un ambiente virtuale, è fondamentale che le chiamate audio e video, la condivisione dello schermo e altre funzionalità di comunicazione funzionino con la stessa fluidità che avrebbero su un desktop locale. Le applicazioni ottimizzate offrono questa esperienza.
Questa documentazione del prodotto descrive in dettaglio tutto ciò che è necessario affinché i clienti Citrix possano apprendere e distribuire applicazioni ottimizzate con UCSDK.
Come funziona
Citrix offre un metodo di distribuzione ottimizzato per le applicazioni di comunicazione in tempo reale all’interno dei VDI. Questo approccio sfrutta l’Unified Communications SDK (UCSDK) per dividere l’applicazione virtualizzata in due parti:
- Interfaccia utente (UI): L’interfaccia utente rimane all’interno dell’host virtuale, visualizzata senza interruzioni all’interno del desktop virtuale o della finestra dell’applicazione.
- Motore multimediale: Le attività di elaborazione multimediale (codifica/decodifica audio e video) vengono scaricate sul dispositivo locale dell’utente. Ciò riduce al minimo il carico del server e ottimizza l’utilizzo della rete.
In genere, Citrix offre UCSDK ai fornitori di tecnologia nel settore delle comunicazioni in tempo reale e collabora con loro per integrare UCSDK in tali applicazioni. Una volta integrato, qualsiasi cliente Citrix che utilizza un’applicazione ottimizzata con UCSDK avrà un’esperienza migliorata. Citrix UCSDK può anche essere utilizzato dai clienti Citrix nei casi in cui si stia creando un’applicazione interna personalizzata. Nella maggior parte dei casi, tuttavia, i clienti non hanno bisogno di utilizzare e sviluppare con UCSDK; devono solo configurare l’ambiente Citrix e l’applicazione per ottenere un’esperienza ottimizzata.
Nota:
I riferimenti a Citrix WebRTC SDK (o) a un’applicazione ottimizzata HDX™ indicano l’integrazione con Citrix UCSDK e possono essere usati in modo intercambiabile.
Vantaggi principali
Quando si utilizzano applicazioni ottimizzate con Citrix UCSDK, ci si può aspettare:
- Prestazioni di elaborazione multimediale migliorate scaricando la codifica/decodifica multimediale ad alta intensità di processore dal Citrix Virtual Delivery Agent (VDA) all’endpoint client, aumentando la reattività complessiva per gli utenti finali.
- Utilizzo ridotto di CPU e larghezza di banda su Citrix VDA, consentendo all’IT di supportare più utenti simultanei per host e alle aziende di scalare le distribuzioni di desktop virtuali Citrix in modo economicamente vantaggioso.
- Costo totale di proprietà inferiore per le aziende, poiché gli endpoint ottimizzati estendono la durata dei desktop virtuali legacy e riducono le esigenze di infrastruttura host, riducendo così le spese in conto capitale e i costi operativi nel tempo.
- Supporto per le piattaforme endpoint Windows, Mac, Linux, ChromeOS e HTML5.
Casi d’uso
UCSDK è stato progettato per ottimizzare le applicazioni di comunicazione in tempo reale che aderiscono allo standard WebRTC. Ecco gli scenari chiave e i tipi di applicazioni basate su WebRTC che possono/già utilizzano UCSDK.
-
Contact Center as a Service (CCaaS) / Piattaforme Cloud Contact Center: Gestiscono principalmente le interazioni con i clienti su più canali, ottimizzando i flussi di lavoro degli agenti.
- Esempi: Amazon Connect, Twilio, Avaya Experience Platform, Talkdesk, Content Guru
-
Unified Communications as a Service (UCaaS) / Comunicazioni aziendali cloud: Integrano voce, video, messaggistica di gruppo e presenza per una comunicazione aziendale completa.
- Esempi: Ring Central, 8x8, Intermedia, Alcatel-Lucent Rainbow
-
Communications Platform as a Service (CPaaS): Forniscono API per incorporare le funzionalità di comunicazione in tempo reale direttamente nelle applicazioni personalizzate.
- Esempi: Twilio, Ribbon Communications
-
Videoconferenze e collaborazione aziendale: Piattaforme dedicate per riunioni video di alta qualità, conferenze e funzionalità di collaborazione avanzate.
- Esempio: Pexip
-
Comunicazioni per il trading finanziario: Progettate per le esigenze di comunicazione uniche, ad alte prestazioni e conformi dei mercati finanziari.
- Esempio: IPC Unigy
-
Piattaforme di apprendimento e formazione virtuale: Progettate per esperienze interattive e di alta qualità in aule virtuali e formazione.
- Esempio: Vitero
La base WebRTC sottostante del Citrix UCSDK significa che le sue capacità di ottimizzazione possono estendersi a qualsiasi applicazione di comunicazione basata su WebRTC. Ciò apre la strada all’ottimizzazione di un’ampia gamma di applicazioni che utilizzano WebRTC per interazioni in tempo reale, anche se non sono attualmente elencate come ottimizzate con UCSDK. Incoraggiamo i clienti a contattare Citrix per qualsiasi caso d’uso o applicazione che desiderano vedere ottimizzata.
Architettura UCSDK

-
Applicazione del fornitore: Può essere qualsiasi applicazione di comunicazione in tempo reale di terze parti, basata su desktop o browser, che ha integrato UCSDK.
-
UCSDK JS: UCSDK JS fornisce le API che le applicazioni del fornitore utilizzano per scaricare l’audio/video sull’endpoint.
-
HdxRtcEngine: Questo è il motore multimediale WebRTC incorporato in Citrix Workspace App che elabora e gestisce la chiamata audio/video scaricata.
Una volta caricato e utilizzato l’SDK, il processo HdxRtcEngine.exe viene avviato sull’endpoint client se il reindirizzamento ha successo. Una volta che HdxRtcEngine.exe viene avviato sull’endpoint client, tutti i dati di segnalazione e payload fluiscono da Citrix VDA all’endpoint client, raggiungono il cloud, tornano all’endpoint client e vengono quindi inoltrati al VDA. Ad esempio, un flusso completo di andata e ritorno potrebbe essere:
Vendor App -> CitrxWebrtc.js SDK -> Citrix VDA components -> Citrix Client Endpoint components -> Cloud -> Citrix Client Endpoint components -> Citrix VDA components -> CitrxWebrtc.js SDK -> Vendor App
Requisiti di sistema
I requisiti di sistema indicano le varie versioni dei componenti Citrix necessarie con l’ultima versione di UCSDK - 5.0.0. Per i dettagli sulla compatibilità per le versioni precedenti dell’SDK e i requisiti specifici delle funzionalità, consultare la tabella Matrice delle versioni e delle funzionalità di seguito.
Nota:
Affinché i clienti possano utilizzare qualsiasi funzionalità aggiunta a UCSDK, assicurarsi che l’applicazione del fornitore abbia integrato la versione UCSDK appropriata e abilitato la funzionalità, e utilizzare le versioni VDA e CWA appropriate nel proprio ambiente.
Versioni completamente compatibili
Le versioni completamente compatibili indicano che, utilizzando queste versioni dei componenti Citrix insieme all’ultima versione di UCSDK, i clienti possono sfruttare tutte le funzionalità disponibili. Per l’attuale ultima versione di UCSDK – 5.0.0, le versioni completamente compatibili dei componenti Citrix sono le seguenti:
- Citrix Virtual Apps™ e Desktops: 2603
- Citrix Workspace App Windows: 2603
- Citrix Workspace App Mac: Da rilasciare
- Citrix Workspace App Linux: 2603
- Citrix Workspace App ChromeOS/HTML5: Da rilasciare
Nota:
L’ottimizzazione UCSDK è supportata su tutte le piattaforme endpoint: Windows, Mac, Linux, ChromeOS e HTML5. Se l’elenco precedente mostra Da rilasciare per una specifica piattaforma endpoint, significa semplicemente che una versione completamente compatibile con le ultime funzionalità UCSDK non è ancora stata rilasciata. Pertanto, i clienti possono comunque utilizzare versioni precedenti dell’app Citrix Workspace per continuare a utilizzare le funzionalità esistenti, anche con il nuovo UCSDK.
Configurazione
La funzionalità delle caratteristiche di UCSDK dipende da tre fattori: la versione di UCSDK che il fornitore ha integrato e le funzionalità che il fornitore ha abilitato, Citrix Virtual Apps and Desktops e la versione dell’app Citrix Workspace in uso.
Dal lato Citrix, assicurarsi che sia configurato quanto segue affinché l’applicazione ottimizzata possa essere ottimizzata:
- Assicurarsi che la policy di reindirizzamento di Microsoft Teams sia attivata. Per maggiori informazioni, fare riferimento a Impostazioni dei criteri multimediali. Si noti che questa policy è ATTIVA per impostazione predefinita.
- Le applicazioni di terze parti basate su Electron o browser che utilizzano l’SDK
CitrixWebrtc.jsnon sono supportate per impostazione predefinita. IlCtxHdxWebSocketService(WebSocketService.exe) non consentirà connessioni da applicazioni non presenti nell’elenco consentiti. Il nome dell’eseguibile binario dell’applicazione desiderata deve essere aggiunto a una chiave di registro della whitelist.
Sul VDA
- Creare un percorso chiave:
HKLM\Software\WOW6432Node\Citrix\WebSocketService - Nome chiave:
ProcessWhitelist - Tipo:
MULTISZ - Valore chiave:
Mytestapp.exe
Se si dispone di più applicazioni, digitare ciascuna applicazione su una nuova riga. Non copiare e incollare da un file di testo o inserire virgole. Assicurarsi che il nome fornito corrisponda al nome eseguibile dell’applicazione. Questo valore del Registro di sistema non fa distinzione tra maiuscole e minuscole.
Se l’applicazione viene acceduta tramite un browser anziché un’applicazione desktop completa, è necessario consentire, ad esempio, chrome.exe nel valore del Registro di sistema.
Una volta configurato correttamente il Registro di sistema di cui sopra, riavviare il VDA o riavviare CtxHdxWebSocketService per completare la configurazione della Whitelist.
Sul client
Non è necessaria alcuna configurazione. Basta installare l’app Citrix Workspace.
Ogni fornitore potrebbe avere un nome applicazione molto specifico. Pertanto, fare riferimento alla documentazione del fornitore collegata nella sezione Supporto fornitori attuale per determinare quale nome applicazione deve essere consentito nel WebSocketService.
Versioni e matrice delle funzionalità
Poiché gli aggiornamenti delle versioni avvengono frequentemente, fare riferimento alle pagine del ciclo di vita del prodotto Citrix Virtual Apps and Desktops e Citrix Workspace app per assicurarsi che una particolare versione sia supportata. Per molte delle funzionalità meno recenti, le versioni menzionate nella tabella sono le ultime versioni supportate di Current Release (CR) al momento della stesura di questo documento.
| Funzionalità | Versione UCSDK | VDA | CWA Windows | CWA Mac | CWA Linux | CWA ChromeOS/HTML5 |
|---|---|---|---|---|---|---|
| Audio/Video (p2p e conferenza) | 3.1.0 | 2203 LTSR Ultimo CU / 2311 CR | 2402 LTSR Ultimo CU / 2311 CR | 2311 | 2311 | 2312 |
| Condivisione schermo | 3.1.0 | 2203 LTSR Ultimo CU / 2311 CR | 2402 LTSR Ultimo CU / 2311 CR | 2311 | 2311 | 2312 |
| DTMF | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| Supporto server proxy | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| Condivisione app | 3.1.0 | 2203 LTSR Ultimo CU / 2311 CR | 2402 LTSR Ultimo CU / 2311 CR | 2311 | 2311 | N/D |
| e911 dinamico | 3.1.0 | 2203 LTSR Ultimo CU / 2311 CR | 2402 LTSR Ultimo CU / 2311 CR | 2311 | 2311 | 2312 |
| Multi-finestra | 3.1.0 | 2203 LTSR Ultimo CU / 2311 CR | 2402 LTSR Ultimo CU / 2311 CR | 2311 | 2311 | 2312 |
| Supporto piano unificato SDP | 3.1.0 | 2203 LTSR Ultimo CU / 2311 CR | 2402 LTSR Ultimo CU / 2311 CR | 2311 | 2311 | 2312 |
| Risoluzione stream / Simulcast | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| Audio remoto (con loop) | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2405 |
| UCSDK basato su browser (supporto Bootstrap) | 4.0.2 | 2407 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| Web HID API | 4.0.2 | 2203 LTSR Latest CU / 2311 CR | 2409.10 | 2411 | 2411 | 2505 |
| Web Audio API | 4.0.2 | 2203 LTSR Latest CU / 2311 CR | 2405 | 2405 | 2405 | N/A |
| Riavvia ICE | 4.1.0 | 2203 LTSR Ultimo CU / 2311 CR | 2503.2 | 2503 | 2503 | 2502.10 |
| Registrazione schermo (Anteprima)¹ | 4.1.0 | 2503 | 2503.2 | N/D | N/D | N/D |
| SmartSync | 5.0.0 | 2203 LTSR ultimo CU / 2311 CR | 2603 | N/D | 2604 | N/D |
Nota:
Abbiamo introdotto una nuova policy per la registrazione dello schermo, quindi è necessaria la versione 2503 del delivery controller™, che viene fornita con CVAD 2503.
Supporto attuale dei fornitori
Diversi fornitori di terze parti hanno integrato l’SDK di Unified Communications nei loro prodotti. L’elenco attuale dei fornitori e la relativa documentazione di supporto sono riportati di seguito:
| Fornitore | Documentazione |
|---|---|
| Amazon Connect | Ottimizzare l’audio di Amazon Connect per i desktop cloud Citrix |
| Ring Central | Utilizzo di RingCentral in un ambiente VDI Citrix |
| Five9 | Five9 WebRTC in ambienti Citrix |
| Twilio | Twilio Flex su VDI Citrix |
| Avaya | Soluzione VDI Avaya Experience Platform Public Cloud per Citrix |
| 8x8 | Integrazione VDI Citrix con 8x8 Work per desktop e web |
| Content Guru | Integrazione Citrix di Content Guru |
| Ribbon Communications | Ribbon Communications Citrix WebRTC SDK |
| Intermedia | Installazione di Intermedia Unite su Citrix Virtual Apps and Desktops |
| Alcatel-Lucent Rainbow | Ottimizzazione Citrix per l’applicazione desktop Rainbow |
| Talkdesk | Talkdesk Agent Workspace VDI Connect |
| IPC | IPC Unigy Soft Client Citrix VDI |
| Vitero | Vitero Inspire per Citrix VDI |
| Pexip | Distribuzione dell’app desktop Connect in Citrix Pexip Infinity Docs |
| Zoom Web App | Configurare il reindirizzamento WebRTC per l’app Web Zoom(https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0083142) |
Risoluzione dei problemi
Per informazioni sulla risoluzione dei problemi, vedere Guida alla risoluzione dei problemi per le app ottimizzate con Citrix Unified Communications SDK.
Problemi noti e limitazioni
Questa sezione documenterà i problemi noti e le limitazioni attuali man mano che vengono riconosciuti.