Citrix DaaS™

统一通信 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 收集和支持 RTCConfiguration 中的 iceCandidatePoolSize 的支持。
  • 更好的错误处理和合规性改进: 改进了 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 App 中嵌入的 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 app 版本。

在 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 app。

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

版本和功能矩阵

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

功能 UCSDK 版本 VDA CWA Windows CWA Mac CWA Linux CWA ChromeOS/HTML5
音频/视频 (点对点和会议) 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
屏幕共享 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
DTMF 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
代理服务器支持 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
应用程序共享 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 N/A
动态 e911 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
多窗口 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
SDP 统一计划支持 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
流分辨率 / Simulcast 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
远程音频 (带循环) 3.1.0 2203 LTSR 最新 CU / 2311 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2405
基于浏览器的 UCSDK (Bootstrap 支持) 4.0.2 2407 CR 2402 LTSR 最新 CU / 2311 CR 2311 2311 2312
Web HID API 4.0.2 2203 LTSR 最新 CU / 2311 CR 2409.10 2411 2411 2505
Web Audio API 4.0.2 2203 LTSR 最新 CU / 2311 CR 2405 2405 2405 N/A
重新启动 ICE 4.1.0 2203 LTSR 最新 CU / 2311 CR 2503.2 2503 2503 2502.10
屏幕录制 (预览)¹ 4.1.0 2503 2503.2 N/A N/A N/A

注意:

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

当前供应商支持

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

供应商 文档
Amazon Connect 优化 Citrix 云桌面上的 Amazon Connect 音频
Ring Central 在 Citrix VDI 环境中使用 RingCentral
Five9 Citrix 环境中的 Five9 WebRTC
Twilio Citrix VDI 上的 Twilio Flex
Avaya 适用于 Citrix 的 Avaya Experience Platform 公有云 VDI 解决方案
8x8 8x8 Work for Desktop & Web 与 Citrix VDI 集成
Content Guru Content Guru Citrix 集成
Ribbon Communications Ribbon Communications Citrix WebRTC SDK
Intermedia 在 Citrix Virtual Apps and Desktops 上安装 Intermedia Unite
Alcatel-Lucent Rainbow Rainbow 桌面应用程序的 Citrix 优化
Talkdesk Talkdesk Agent Workspace VDI Connect
IPC IPC Unigy 软客户端 Citrix VDI
Vitero 适用于 Citrix VDI 的 Vitero Inspire
Pexip 在 Citrix Pexip Infinity Docs 中部署 Connect 桌面应用程序

故障排除

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

已知问题和限制

本节将记录当前已识别的已知问题和限制。

统一通信 SDK 优化