Citrix Virtual Apps and Desktops

Optimización del SDK de Comunicaciones Unificadas

Introducción

Citrix Virtual Apps and Desktops te permite entregar aplicaciones a tus usuarios en una amplia variedad de dispositivos de punto final. Muchas de estas aplicaciones incluyen funciones de comunicación en tiempo real (RTC), como audioconferencias y videoconferencias. Sin embargo, pueden surgir desafíos al entregar estas aplicaciones en un entorno virtualizado. Los métodos de entrega tradicionales enrutan los flujos de medios (audio/video) desde el dispositivo cliente al servidor VDI en el centro de datos antes de enviarlos de vuelta al punto final. Este “hairpinning” (reencaminamiento) introduce tráfico y sobrecarga de procesamiento innecesarios en el servidor, especialmente para llamadas de audio y video que consumen mucho ancho de banda.

El SDK de Comunicaciones Unificadas (UCSDK) de Citrix es una tecnología que permite a los proveedores de tecnología optimizar estas aplicaciones RTC para su uso en entornos Citrix. Cuando una aplicación está optimizada, puede proporcionar una experiencia de usuario que iguala o incluso supera la de la aplicación ejecutándose en un escritorio local. En el mundo actual, la comunicación en tiempo real sin interrupciones es esencial para la productividad y la colaboración. Al usar aplicaciones en un entorno virtual, es crucial que las llamadas de audio y video, el uso compartido de pantalla y otras funciones de comunicación funcionen tan fluidamente como lo harían en un escritorio local. Las aplicaciones optimizadas ofrecen esta experiencia.

  • Esta documentación del producto detalla todo lo necesario para que los clientes de Citrix aprendan y desplieguen aplicaciones optimizadas con UCSDK.

Cómo funciona

Citrix ofrece un método de entrega optimizado para aplicaciones de comunicación en tiempo real dentro de los VDI. Este enfoque aprovecha el SDK de Comunicaciones Unificadas (UCSDK) para dividir la aplicación virtualizada en dos partes:

  • Interfaz de usuario (UI): La interfaz de usuario permanece dentro del host virtual, mostrándose sin problemas dentro del escritorio virtual o la ventana de la aplicación.
  • Motor de medios: Las tareas de procesamiento de medios (codificación/decodificación de audio y video) se descargan al dispositivo local del usuario. Esto minimiza la carga del servidor y optimiza el uso de la red.

  • Normalmente, Citrix ofrece el UCSDK a los proveedores de tecnología en el ámbito de las comunicaciones en tiempo real y trabaja con ellos para integrar el UCSDK en esas aplicaciones. Una vez integrado, cualquier cliente de Citrix que use una aplicación optimizada con UCSDK tendrá una experiencia mejorada. El UCSDK de Citrix también puede ser consumido por clientes de Citrix en casos en los que se esté desarrollando una aplicación interna personalizada. En la mayoría de los casos, sin embargo, los clientes no necesitan consumir y desarrollar con UCSDK; solo necesitan configurar el entorno Citrix y la aplicación para lograr una experiencia optimizada.

  • Nota:

  • Las referencias al SDK de WebRTC de Citrix (o) a una aplicación optimizada con HDX™ indican integración con el UCSDK de Citrix y pueden usarse indistintamente.

  • ¿Qué hay de nuevo?

  • UCSDK 4.1.0 es la última versión disponible de forma general que los proveedores de tecnología pueden integrar. Además, hay dos versiones más compatibles: UCSDK 4.0.2 y UCSDK 3.1.0. Se introducen nuevas funciones con las versiones de UCSDK y los proveedores de tecnología deben asegurarse de actualizar el SDK para que los clientes reciban las funciones. De esta manera, los clientes de Citrix pueden centrarse únicamente en actualizar los componentes de Citrix necesarios para obtener nuevas funciones.

Con el lanzamiento de UCSDK 4.1.0, presentamos mejoras críticas en la experiencia del usuario y funciones completamente nuevas que permitirán una integración más profunda con los productos de los socios y un mayor valor para nuestros clientes.

Nuevas funciones

  • Grabación de pantalla del punto final de UCSDK (vista previa técnica): Para abordar una brecha clave en la grabación de cumplimiento, las nuevas API de UCSDK ahora pueden capturar contenido en el punto final, incluso cuando las aplicaciones se ejecutan dentro de VDI. Esta función, actualmente en vista previa para puntos finales de Windows, permite a los proveedores de tecnología mejorar sus aplicaciones para admitir la grabación de pantalla del punto final en Citrix. Ten en cuenta que esta función se centra en mejorar las aplicaciones de los proveedores y es diferente de la grabación de sesiones de Citrix.
  • Gestión de reconexión de sesiones: Una mejora crítica de Bootstrap mejora significativamente la experiencia de la aplicación del navegador, acercándola a la de las aplicaciones de escritorio basadas en Electron. Las aplicaciones basadas en navegador que usan Bootstrap ahora pueden gestionar dinámicamente las desconexiones de sesiones de Citrix, proporcionando una experiencia de usuario fluida para los usuarios finales.
  • Compatibilidad con nuevos métodos: Se agregó compatibilidad para reiniciar la recopilación de ICE y compatibilidad con iceCandidatePoolSize en RTCConfiguration.
  • Mejor gestión de errores y mejoras de cumplimiento: Se mejoró el cumplimiento de la especificación WebRTC para getUserMedia. Se mejoró getStats() para CitrixPeerConnection, RtpSender y RtpReceiver para devolver un informe vacío en lugar de nulo en condiciones de error.

Las versiones totalmente compatibles con UCSDK 4.1.0 incluyen:

  • Citrix Virtual Apps and Desktops™ 2503
  • Citrix Workspace™ App para Windows 2503
  • Citrix Workspace App para Mac 2503
  • Citrix Workspace App para Linux 2503
    • La última versión de ChromeOS/HTML5.
  • Nota:

  • Los clientes de Citrix pueden contactar a los proveedores de tecnología para actualizar el SDK (o) agregar asistencia para funciones específicas en caso de que existan casos de uso que se puedan lograr con las funciones recién introducidas.

Ventajas clave

Cuando usas aplicaciones optimizadas con Citrix UCSDK, puedes esperar:

  • Rendimiento mejorado del procesamiento multimedia al descargar la codificación/decodificación multimedia intensiva en el procesador del Citrix Virtual Delivery Agent (VDA) al punto final del cliente, lo que aumenta la capacidad de respuesta general para los usuarios finales.
    • Uso reducido de CPU y ancho de banda en Citrix VDA, lo que permite a TI dar asistencia a más usuarios concurrentes por host y a las empresas escalar las implementaciones de escritorios virtuales de Citrix de manera rentable.
  • Menor costo total de propiedad para las empresas, ya que los puntos finales optimizados extienden la vida útil de los escritorios virtuales heredados y reducen las necesidades de infraestructura del host, lo que disminuye los gastos de capital y los costos operativos con el tiempo.
    • Asistencia para plataformas de punto final de Windows, Mac, Linux, ChromeOS y HTML5.

Casos de uso

UCSDK está diseñado específicamente para optimizar aplicaciones de comunicación en tiempo real que cumplen con el estándar WebRTC. Aquí tienes escenarios clave y los tipos de aplicaciones basadas en WebRTC que pueden usar / ya usan UCSDK.

  • Contact Center como servicio (CCaaS) / Plataformas de Contact Center en la nube: Gestionan principalmente las interacciones con los clientes a través de múltiples canales, optimizando los flujos de trabajo de los agentes.
    • Ejemplos: Amazon Connect, Twilio, Avaya Experience Platform, Talkdesk, Content Guru
  • Comunicaciones unificadas como servicio (UCaaS) / Comunicaciones empresariales en la nube: Integran voz, vídeo, mensajería de equipo y presencia para una comunicación empresarial completa.
    • Ejemplos: Ring Central, 8x8, Intermedia, Alcatel-Lucent Rainbow
  • Plataforma de comunicaciones como servicio (CPaaS): Proporcionan API para integrar capacidades de comunicación en tiempo real directamente en aplicaciones personalizadas.
    • Ejemplos: Twilio, Ribbon Communications
  • Videoconferencia y colaboración empresarial: Plataformas dedicadas para reuniones de vídeo de alta calidad, conferencias y funciones de colaboración avanzadas.
    • Ejemplo: Pexip
  • Comunicaciones para trading financiero: Diseñadas para las necesidades de comunicación únicas, de alto rendimiento y conformes de los mercados financieros.
    • Ejemplo: IPC Unigy
  • Plataformas de aprendizaje y formación virtual: Diseñadas para experiencias interactivas, de alta calidad en aulas virtuales y formación.
    • Ejemplo: Vitero

La base WebRTC subyacente de Citrix UCSDK significa que sus capacidades de optimización pueden extenderse a cualquier aplicación de comunicación basada en WebRTC. Esto abre la puerta a la optimización de una amplia gama de aplicaciones que usan WebRTC para interacciones en tiempo real, incluso si no están actualmente listadas como optimizadas con UCSDK. Animamos a los clientes a contactar a Citrix con cualquier caso de uso o aplicación que quieran ver optimizada.

  • Arquitectura de UCSDK

  • Arquitectura de UCSDK

  • Aplicación del proveedor: Puede ser cualquier aplicación de comunicación en tiempo real de terceros, basada en escritorio o en navegador, que haya integrado UCSDK.

  • UCSDK JS: UCSDK JS proporciona las API que las aplicaciones del proveedor usan para descargar el audio/vídeo al punto final.

  • HdxRtcEngine: Este es el motor multimedia WebRTC integrado en Citrix Workspace App que procesa y gestiona la llamada de audio/vídeo descargada.

Una vez que el SDK se carga y se usa, el proceso HdxRtcEngine.exe se inicia en el punto final del cliente si la redirección tiene éxito. Una vez que HdxRtcEngine.exe se inicia en el punto final del cliente, cualquier señalización y datos de carga útil fluyen desde Citrix VDA al punto final del cliente, llegan a la nube, regresan al punto final del cliente y luego se reenvían al VDA. Por ejemplo, un flujo de ida y vuelta completo podría ser:

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

  • Requisitos del sistema

Los requisitos del sistema indican las diversas versiones de los componentes de Citrix necesarios con la última versión de UCSDK - 4.1.0. Para obtener detalles de compatibilidad para versiones anteriores del SDK y requisitos de funciones específicas, consulta la tabla Matriz de versiones y funciones a continuación.

Nota:

Para que los clientes puedan usar cualquier característica que se agregue a UCSDK, asegúrate de que la aplicación del proveedor haya integrado la versión adecuada de UCSDK y haya habilitado la característica, y usa las versiones adecuadas de VDA y CWA en tu entorno.

Versiones totalmente compatibles

Las versiones totalmente compatibles indican que, al usar estas versiones de los componentes de Citrix junto con la última versión de UCSDK, los clientes pueden aprovechar todas las características disponibles. Para la versión más reciente actual de UCSDK (4.1.0), las versiones totalmente compatibles de los componentes de Citrix son las siguientes:

  • Citrix Virtual Apps™ and Desktops: 2503
  • Citrix Workspace App Windows: 2503
  • Citrix Workspace App Mac: 2503
  • Citrix Workspace App Linux: 2503
  • Citrix Workspace App ChromeOS/HTML5: Última versión

Configuración

La funcionalidad de las características de UCSDK depende de tres factores: la versión de UCSDK que el proveedor ha integrado y las características que ha habilitado, Citrix Virtual Apps and Desktops y la versión de la aplicación Citrix Workspace en uso.

En el lado de Citrix, asegúrate de que lo siguiente esté configurado para que se permita la optimización de la aplicación optimizada:

  1. Asegúrate de que la política de redirección de Microsoft Teams esté activada. Consulta Configuración de la política multimedia para obtener más información. Ten en cuenta que esta política está ACTIVADA de forma predeterminada.
  2. Las aplicaciones de terceros basadas en Electron o en navegador que utilizan el SDK CitrixWebrtc.js no son compatibles de forma predeterminada. El CtxHdxWebSocketService (WebSocketService.exe) no permitirá conexiones de aplicaciones que no estén en la lista de permitidos. El nombre del ejecutable binario de la aplicación deseada debe agregarse a una clave de registro de la lista de permitidos.

En el VDA

  • Crea una ruta de clave: HKLM\Software\WOW6432Node\Citrix\WebSocketService
  • Nombre de clave: ProcessWhitelist
  • Tipo: MULTISZ
  • Valor de clave: Mytestapp.exe

Si tienes varias aplicaciones, escribe cada aplicación en una nueva línea. No copies ni pegues de un archivo de texto ni insertes comas. Asegúrate de que el nombre proporcionado coincida con el nombre del ejecutable de la aplicación. Este valor de registro no distingue entre mayúsculas y minúsculas.

Si se accede a la aplicación a través de un navegador en lugar de una aplicación de escritorio completa, entonces debes permitir, por ejemplo, chrome.exe en el valor de registro.

Una vez que el registro anterior se haya configurado correctamente, reinicia el VDA o reinicia CtxHdxWebSocketService para finalizar la configuración de la lista de permitidos.

En el cliente

No se necesita ninguna configuración. Solo instala la aplicación Citrix Workspace.

Cada proveedor podría tener un nombre de aplicación muy específico. Por lo tanto, consulta la documentación del proveedor vinculada en la sección Soporte actual del proveedor para determinar qué nombre de aplicación debe permitirse en el WebSocketService.

Referencia de características

Recorte de superposición optimizado para un rendimiento y experiencia de usuario mejorados

A partir de CVAD 2511, el mecanismo para gestionar las superposiciones de vídeo redirigidas en funciones como la optimización de HDX Microsoft Teams y la optimización de UCSDK se ha rediseñado para mejorar tanto la experiencia del usuario como el rendimiento del servidor.

Beneficios esenciales

  • Precisión visual mejorada: Esta mejora resuelve los fallos visuales en los que los elementos de la aplicación, como los menús emergentes o las notificaciones, aparecían incorrectamente detrás del contenido de vídeo. La nueva lógica garantiza que todos los componentes se rendericen en el orden correcto, proporcionando una experiencia más fluida y predecible.

  • Rendimiento mejorado: Esta optimización reduce significativamente la utilización de la CPU en el Virtual Delivery Agent. Al reemplazar los métodos de sondeo antiguos y que consumían muchos recursos por un enfoque más eficiente basado en gráficos, este cambio mejora la escalabilidad del servidor y permite una mayor densidad de usuarios.

Nota:

La funcionalidad depende de una futura versión de Microsoft Teams (u otra aplicación asociada de UCSDK) y requiere Citrix Workspace App para Windows 2511.

Versiones y matriz de características

Dado que las actualizaciones de versión ocurren con frecuencia, consulta las páginas del ciclo de vida del producto Citrix Virtual Apps and Desktops y Citrix Workspace app para asegurarte de que una versión específica es compatible. Para muchas de las características más antiguas, las versiones mencionadas en la tabla son las últimas versiones de Current Release (CR) compatibles en el momento de redactar este documento.

Característica Versión UCSDK VDA CWA Windows CWA Mac CWA Linux CWA ChromeOS/HTML5
Audio / Vídeo (p2p y conferencia) 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
Compartir pantalla 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest 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
Compatibilidad con servidor proxy 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
Compartir aplicación 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 N/A
e911 dinámico 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
Multiventana 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
Compatibilidad con plan unificado SDP 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
Resolución de transmisión / Simulcast 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
Audio remoto (con bucle) 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2405
UCSDK basado en navegador (compatibilidad con Bootstrap) 4.0.2 2407 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
API Web HID 4.0.2 2203 LTSR Latest CU / 2311 CR 2409.10 2411 2411 2505
API Web Audio 4.0.2 2203 LTSR Latest CU / 2311 CR 2405 2405 2405 N/A
Reiniciar ICE 4.1.0 2203 LTSR Latest CU / 2311 CR 2503.2 2503 2503 2502.10
Grabación de pantalla (Vista previa)¹ 4.1.0 2503 2503.2 N/A N/A N/A

Nota:

Hemos introducido una nueva política para la grabación de pantalla, por lo que necesitas la versión 2503 del delivery controller™, que viene con CVAD 2503.

Compatibilidad actual con proveedores

Varios proveedores de terceros han integrado el SDK de comunicaciones unificadas en sus productos. La lista actual de proveedores y su documentación de soporte se detalla a continuación:

Proveedor Documentación
Sprinklr  
Microsoft Dynamics 365 Documentación del Centro de contacto de Dynamics 365
Amazon Connect Optimizar el audio de Amazon Connect para escritorios en la nube de Citrix
Ring Central Uso de RingCentral en un entorno VDI de Citrix
Five9 Five9 WebRTC en entornos Citrix
Twilio Twilio Flex en VDI de Citrix
Avaya Solución VDI de Avaya Experience Platform Public Cloud para Citrix
8x8 Integración VDI de Citrix con 8x8 Work para escritorio y web
Content Guru Integración de Content Guru con Citrix
Ribbon Communications SDK WebRTC de Citrix de Ribbon Communications
Intermedia Instalación de Intermedia Unite en Citrix Virtual Apps and Desktops
Alcatel-Lucent Rainbow Optimización de Citrix para la aplicación de escritorio Rainbow
Talkdesk Talkdesk Agent Workspace VDI Connect
IPC Cliente ligero Unigy de IPC para VDI de Citrix
Vitero Vitero Inspire para VDI de Citrix
Pexip Implementación de la aplicación de escritorio Connect en Citrix Pexip Infinity Docs

Solución de problemas

Para obtener información sobre la solución de problemas, consulta Guía de solución de problemas para aplicaciones optimizadas con el SDK de comunicaciones unificadas de Citrix.

Problemas conocidos y limitaciones

Esta sección documentará los problemas conocidos y las limitaciones actuales a medida que se identifiquen.

Optimización del SDK de Comunicaciones Unificadas