Citrix Virtual Apps and Desktops

统一通信 SDK 优化

简介

Citrix Virtual Apps and Desktops 允许您将应用程序交付给各种终端设备上的用户。其中许多应用程序包含实时通信 (RTC) 功能,例如音频和视频会议。然而,在虚拟化环境中交付这些应用程序时可能会出现挑战。传统的交付方法会将媒体流(音频/视频)从客户端设备路由到数据中心的 VDI 服务器,然后再将其发送回终端。这种“回传”会给服务器带来不必要的流量和处理开销,尤其是在带宽密集型音频和视频通话中。

Citrix 统一通信 SDK (UCSDK) 是一项技术,允许技术供应商优化这些 RTC 应用程序,以便在 Citrix 环境中使用。当应用程序经过优化后,它可以提供与在本地桌面运行的应用程序相媲美甚至超越的用户体验。在当今世界,无缝的实时通信对于提高生产力和协作至关重要。在虚拟环境中运行应用程序时,音频和视频通话、屏幕共享和其他通信功能必须像在本地桌面一样流畅运行。优化的应用程序能够提供这种体验。

  • 本产品文档详细介绍了 Citrix 客户学习和部署 UCSDK 优化应用程序所需的所有信息。

工作原理

Citrix 为 VDI 中的实时通信应用程序提供了一种优化的交付方法。此方法利用统一通信 SDK (UCSDK) 将虚拟化应用程序拆分为两个部分:

  • 用户界面 (UI): 用户界面保留在虚拟主机中,并在虚拟桌面或应用程序窗口中无缝显示。
  • 媒体引擎: 媒体处理任务(音频和视频的编码/解码)被卸载到用户的本地设备。这最大限度地减少了服务器负载并优化了网络使用。

  • 通常,Citrix 会向实时通信领域的技术供应商提供 UCSDK,并与他们合作将 UCSDK 集成到这些应用程序中。一旦集成,任何使用 UCSDK 优化应用程序的 Citrix 客户都将获得增强的体验。在构建自定义内部应用程序的情况下,Citrix 客户也可以使用 Citrix UCSDK。然而,在大多数情况下,客户不需要使用和开发 UCSDK – 他们只需要配置 Citrix 环境和应用程序即可获得优化的体验。

  • 注意:

  • 提及 Citrix WebRTC SDK 或 HDX™ 优化应用程序均表示已与 Citrix UCSDK 集成,并且可以互换使用。

  • 新增功能

  • UCSDK 4.1.0 是技术供应商可以集成的最新通用版本。此外,还支持另外两个版本 – UCSDK 4.0.2 和 UCSDK 3.1.0。UCSDK 版本会引入新功能,技术供应商需要确保升级 SDK,以便客户能够获得这些功能。这样,Citrix 客户只需专注于升级获取新功能所需的 Citrix 组件即可。

随着 UCSDK 4.1.0 的发布,我们引入了关键的用户体验增强功能和全新功能,这将有助于与合作伙伴产品进行更深入的集成,并为我们的客户带来更多价值。

新功能

  • UCSDK 终端屏幕录制(技术预览版): 针对合规性录制中的一个关键空白,新的 UCSDK API 现在可以捕获终端上的内容,即使应用程序在 VDI 中运行。此功能目前处于 Windows 终端的预览阶段,允许技术供应商增强其应用程序以支持 Citrix 上的终端屏幕录制。请注意,此功能侧重于增强供应商应用程序,与 Citrix 会话录制不同。
  • 会话重新连接处理: 对 Bootstrap 的一项关键增强功能显著改善了浏览器应用程序体验,使其更接近基于 Electron 的桌面应用程序。使用 Bootstrap 的基于浏览器的应用程序现在可以动态处理 Citrix 会话断开连接,为最终用户提供无缝的用户体验。
  • 支持新方法: 增加了对重新启动 ICE 收集的支持,以及对 RTCConfigurationiceCandidatePoolSize 的支持。
  • 更好的错误处理和合规性改进: 改进了 getUserMedia 对 WebRTC 规范的合规性。改进了 CitrixPeerConnectionRtpSenderRtpReceivergetStats(),使其在错误条件下返回空报告而不是 void。

UCSDK 4.1.0 的完全兼容版本包括:

  • Citrix Virtual Apps and Desktops™ 2503
  • Citrix Workspace™ App for Windows 2503
  • Citrix Workspace App for Mac 2503
  • Citrix Workspace App for Linux 2503
    • 最新的 ChromeOS/HTML5 版本。
  • 注意:

  • Citrix 客户可以联系技术供应商升级 SDK 或添加对特定功能的支持,以应对新引入的功能可以实现的用例。

主要优势

当您使用经 Citrix UCSDK 优化的应用程序时,您可以获得:

  • 通过将处理器密集型媒体编码/解码任务从 Citrix Virtual Delivery Agent (VDA) 卸载到客户端端点,增强媒体处理性能,从而提高最终用户的整体响应能力。
    • 降低 Citrix VDA 上的 CPU 和带宽使用率,使 IT 能够支持每个主机更多并发用户,并帮助企业经济高效地扩展 Citrix 虚拟桌面部署。
  • 降低企业的总拥有成本,因为优化的端点可延长旧版虚拟桌面的使用寿命并减少主机基础设施需求,从而随着时间的推移降低资本支出和运营成本。
    • 支持 Windows、Mac、Linux、ChromeOS 和 HTML5 端点平台。

用例

UCSDK 专为优化符合 WebRTC 标准的实时通信应用程序而构建。以下是可以使用/已在使用 UCSDK 的关键场景和基于 WebRTC 的应用程序类型。

  • 联络中心即服务 (CCaaS) / 云联络中心平台: 主要管理跨多个渠道的客户交互,优化座席工作流。
    • 示例:Amazon Connect、Twilio、Avaya Experience Platform、Talkdesk、Content Guru
  • 统一通信即服务 (UCaaS) / 云业务通信: 集成语音、视频、团队消息和状态,实现全面的业务通信。
    • 示例:Ring Central、8x8、Intermedia、Alcatel-Lucent Rainbow
  • 通信平台即服务 (CPaaS): 提供 API,用于将实时通信功能直接嵌入到自定义应用程序中。
    • 示例:Twilio、Ribbon Communications
  • 企业视频会议和协作: 专为高质量视频会议、电话会议和高级协作功能而设计的平台。
    • 示例:Pexip
  • 金融交易通信: 专为满足金融市场独特、高性能和合规的通信需求而设计。
    • 示例:IPC Unigy
  • 虚拟学习和培训平台: 专为交互式、高质量的虚拟课堂和培训体验而设计。
    • 示例:Vitero

Citrix UCSDK 的底层 WebRTC 基础意味着其优化功能可以扩展到任何基于 WebRTC 的通信应用程序。这为优化利用 WebRTC 进行实时交互的各种应用程序打开了大门,即使它们目前未被列为已通过 UCSDK 优化。我们鼓励客户就他们希望优化的任何用例或应用程序联系 Citrix。

  • UCSDK 体系结构

  • UCSDK 体系结构

  • 供应商应用程序:这可以是任何集成了 UCSDK 的第三方桌面或基于浏览器的实时通信应用程序。

  • UCSDK JS:UCSDK JS 提供 API,供供应商应用程序用于将音频/视频卸载到端点。

  • HdxRtcEngine:这是 Citrix Workspace 应用程序中嵌入的 WebRTC 媒体引擎,用于处理和管理卸载的音频/视频通话。

SDK 加载并使用后,如果重定向成功,则会在客户端端点上启动 HdxRtcEngine.exe 进程。一旦 HdxRtcEngine.exe 在客户端端点上启动,任何信令和有效负载数据都会从 Citrix VDA 流向客户端端点,到达云端,再返回到客户端端点,然后转发到 VDA。例如,完整的往返流可能如下所示:

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

  • 系统要求

系统要求指明了最新版本 UCSDK (4.1.0) 所需的各种 Citrix 组件版本。有关旧版 SDK 的兼容性详细信息和特定功能要求,请参阅下面的版本和功能矩阵表。

注意:

客户若要使用 UCSDK 中添加的任何功能,请确保供应商应用程序已集成相应的 UCSDK 版本并启用了该功能,并在您的环境中使用了相应的 VDA 和 CWA 版本。

完全兼容的版本

完全兼容的版本表示,通过将这些版本的 Citrix 组件与最新版 UCSDK 结合使用,客户可以利用所有可用功能。对于当前最新版 UCSDK – 4.1.0,Citrix 组件的完全兼容版本如下:

  • 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: 最新版本

配置

UCSDK 功能取决于三个因素:供应商已集成的 UCSDK 版本以及供应商已启用的功能、Citrix Virtual Apps and Desktops 以及正在使用的 Citrix Workspace 应用程序版本。

在 Citrix 端,请确保已配置以下内容,以便允许优化应用程序:

  1. 确保 Microsoft Teams 重定向策略已开启。有关详细信息,请参阅 多媒体策略设置。请注意,此策略默认处于开启状态。
  2. 默认情况下,不支持利用 CitrixWebrtc.js SDK 的第三方 Electron 或基于浏览器的应用程序。CtxHdxWebSocketService (WebSocketService.exe) 不允许来自不在允许列表中的应用程序的连接。必须将所需的应用程序二进制可执行文件名称添加到白名单注册表项。

在 VDA 上

  • 创建密钥路径:HKLM\Software\WOW6432Node\Citrix\WebSocketService
  • 密钥名称:ProcessWhitelist
  • 类型:MULTISZ
  • 密钥值:Mytestapp.exe

如果您有多个应用程序,请在新行中键入每个应用程序。请勿从文本文件复制粘贴或插入逗号。确保提供的名称与应用程序的可执行文件名称匹配。此注册表值不区分大小写。

如果应用程序是通过浏览器而不是成熟的桌面应用程序访问的,则需要在注册表值中允许,例如 chrome.exe

成功配置上述注册表后,请重新启动 VDA 或重新启动 CtxHdxWebSocketService 以完成白名单设置。

在客户端上

无需配置。只需安装 Citrix Workspace 应用程序。

每个供应商可能都有一个非常具体的应用程序名称。因此,请参阅 当前供应商支持 部分中链接的供应商文档,以确定 WebSocketService 中必须允许哪些应用程序名称。

功能参考

优化的叠加层剪裁可提升性能和用户体验

从 CVAD 2511 开始,HDX Microsoft Teams 优化和 UCSDK 优化等功能中处理重定向视频叠加层的机制已重新设计,以改善用户体验和服务器性能。

主要优势

  • 提高视觉准确性: 此增强功能解决了视觉故障,即应用程序元素(例如弹出菜单或通知)错误地出现在视频内容后面。新的逻辑确保所有组件都以正确的顺序呈现,从而提供更无缝和可预测的体验。

  • 增强性能: 此优化显著降低了 Virtual Delivery Agent 上的 CPU 利用率。通过用更高效的基于图形的方法取代旧的、资源密集型轮询方法,此更改提高了服务器可伸缩性并允许更高的用户密度。

注意:

此功能取决于未来版本的 Microsoft Teams(或其他 UCSDK 合作伙伴应用程序),并且需要适用于 Windows 2511 的 Citrix Workspace 应用程序。

版本和功能矩阵

由于版本更新频繁,请参阅 Citrix Virtual Apps and DesktopsCitrix Workspace 应用程序 产品生命周期页面,以确保特定版本受支持。对于许多旧功能,表中提到的版本是撰写本文时最后受支持的当前版本 (CR)。

功能 UCSDK 版本 VDA CWA Windows CWA Mac CWA Linux CWA ChromeOS/HTML5
音频/视频(点对点和会议) 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
屏幕共享 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
代理服务器支持 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
应用程序共享 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 N/A
动态 e911 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
多窗口 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
SDP 统一计划支持 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
流分辨率/同步广播 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2312
远程音频(带循环) 3.1.0 2203 LTSR Latest CU / 2311 CR 2402 LTSR Latest CU / 2311 CR 2311 2311 2405
基于浏览器的 UCSDK(引导支持) 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
重启 ICE 4.1.0 2203 LTSR Latest CU / 2311 CR 2503.2 2503 2503 2502.10
屏幕录制(预览)¹ 4.1.0 2503 2503.2 N/A N/A N/A

注意:

我们引入了一项新的屏幕录制策略,因此您需要 2503 版的交付控制器™,它随 CVAD 2503 提供。

当前供应商支持

多家第三方供应商已将统一通信 SDK 集成到其产品中。以下列出了当前的供应商及其支持文档:

供应商 文档
Sprinklr  
Microsoft Dynamics 365 Dynamics 365 Contact Center Documentation
Amazon Connect Optimize Amazon Connect audio for Citrix cloud desktops
Ring Central Using RingCentral in a Citrix VDI environment
Five9 Five9 WebRTC in Citrix Environments
Twilio Twilio Flex on Citrix VDI
Avaya Avaya Experience Platform Public Cloud VDI solution for Citrix
8x8 Citrix VDI Integration with 8x8 Work for Desktop & Web
Content Guru Content Guru Citrix Integration
Ribbon Communications Ribbon Communications Citrix WebRTC SDK
Intermedia Installing Intermedia Unite on Citrix Virtual Apps and Desktops
Alcatel-Lucent Rainbow Citrix Optimization for Rainbow Desktop Application
Talkdesk Talkdesk Agent Workspace VDI Connect
IPC IPC Unigy Soft Client Citrix VDI
Vitero Vitero Inspire for Citrix VDI
Pexip Deploying Connect desktop app in Citrix Pexip Infinity Docs

故障排除

有关故障排除信息,请参阅 针对使用 Citrix 统一通信 SDK 优化的应用程序的故障排除指南

已知问题与限制

本节将记录当前已知问题和限制(一旦识别)。

统一通信 SDK 优化