统一通信 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 集成,并且可以互换使用。
主要优势
当您使用通过 Citrix UCSDK 优化的应用程序时,您可以期待:
-
通过将处理器密集型媒体编码/解码从 Citrix Virtual Delivery Agent (VDA) 卸载到客户端端点,增强媒体处理性能,从而提高最终用户的整体响应能力。
-
降低 Citrix VDA 上的 CPU 和带宽使用率,使 IT 能够支持每个主机更多并发用户,并使企业能够经济高效地扩展 Citrix 虚拟桌面部署。
-
降低企业的总拥有成本,因为优化的端点延长了传统虚拟桌面的使用寿命并减少了主机基础设施需求,从而随着时间的推移降低了资本支出和运营成本。
-
支持 Windows、Mac、Linux、ChromeOS 和 HTML5 端点平台。
用例
UCSDK 专为优化遵循 WebRTC 标准的实时通信应用程序而构建。以下是关键场景以及可以使用/已经使用 UCSDK 的基于 WebRTC 的应用程序类型。
-
联络中心即服务 (CCaaS) / 云联络中心平台: 主要管理跨多个渠道的客户交互,优化座席工作流程。
-
示例:亚马逊连接、Twilio、Avaya 体验平台、Talkdesk、内容大师
-
-
统一通信即服务 (UCaaS) / 云业务通信: 集成语音、视频、团队消息和状态,以实现全面的业务通信。
-
示例:Ring Central、8x8、Intermedia、阿尔卡特-朗讯彩虹
-
-
通信平台即服务 (CPaaS): 提供 API,用于将实时通信功能直接嵌入到自定义应用程序中。
-
示例:图利奥、瑞邦通信
-
-
企业视频会议和协作: 专为高质量视频会议、电话会议和高级协作功能而设计的平台。
-
示例:Pexip
-
-
金融交易通信: 专为满足金融市场独特、高性能且合规的通信需求而设计。
-
示例:IPC Unigy
-
-
虚拟学习和培训平台: 专为交互式、高质量的虚拟课堂和培训体验而设计。
-
示例:Vitero
-
Citrix UCSDK 的底层 WebRTC 基础意味着其优化能力可以扩展到任何基于 WebRTC 的通信应用程序。这为优化利用 WebRTC 进行实时交互的广泛应用程序打开了大门,即使它们目前未被列为已通过 UCSDK 优化的应用程序。我们鼓励客户就他们希望优化的任何用例或应用程序联系 Citrix。
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
系统要求
系统要求指明了所需的不同 Citrix 组件版本以及最新版本的 UCSDK - 5.0.0。有关旧版 SDK 的兼容性详细信息和特定功能要求,请参阅下面的 版本和功能矩阵 表。
注意:
客户若要使用添加到 UCSDK 的任何功能,请确保供应商应用程序已集成相应的 UCSDK 版本并启用了该功能,并在您的环境中使用相应的 VDA 和 CWA 版本。
完全兼容的版本
完全兼容的版本表示,通过使用这些版本的 Citrix 组件以及最新版本的 UCSDK,客户可以利用所有可用功能。对于当前最新版本的 UCSDK – 5.0.0,完全兼容的 Citrix 组件版本如下:
-
Citrix 虚拟应用和桌面: 2603
-
Citrix Workspace 应用程序 Windows: 2603
-
Citrix Workspace 应用程序 Mac: 待发布
-
Citrix Workspace 应用程序 Linux: 2603
-
Citrix Workspace 应用程序 ChromeOS/HTML5: 待发布
注意:
UCSDK 优化支持所有端点平台:Windows、Mac、Linux、ChromeOS 和 HTML5。如果上述列表显示某个特定端点平台为“待发布”,则表示尚未发布与最新 UCSDK 功能完全兼容的版本。因此,客户仍然可以使用旧版 Citrix Workspace 应用程序来继续使用现有功能,即使是与较新的 UCSDK 配合使用。
配置
UCSDK 功能取决于三个因素:供应商集成的 UCSDK 版本和供应商启用的功能、Citrix Virtual Apps and Desktops 以及正在使用的 Citrix Workspace 应用程序版本。
在 Citrix 端,请确保配置以下内容,以便允许优化应用程序进行优化:
-
确保 Microsoft Teams 重定向策略已开启。有关详细信息,请参阅 多媒体策略设置。请注意,此策略默认处于开启状态。
-
默认情况下,不支持使用
CitrixWebrtc.jsSDK 的第三方 Electron 或基于浏览器的应用程序。CtxHdxWebSocketService(WebSocketService.exe) 不允许来自不在允许列表中的应用程序的连接。必须将所需的应用程序二进制可执行文件名称添加到白名单注册表项中。
注意:
从 CVAD 2603 开始,使用 Citrix 统一通信 SDK (UCSDK) 的应用程序优化不再依赖于“Microsoft Teams 重定向”策略。管理员现在可以禁用 Microsoft Teams 优化,而不会影响其他集成 UCSDK 的应用程序。请注意,要使用此分离功能,供应商应用程序必须与 CVAD 2603 一起使用 Bootstrap 方法(首次在 UCSDK 4.0 中引入)。有关更多详细信息,请参阅 解耦 UCSDK 和 HDX Microsoft Teams 优化
在 VDA 上
-
创建密钥路径:
HKLM\Software\WOW6432Node\Citrix\WebSocketService -
密钥名称:
ProcessWhitelist -
类型:
MULTISZ -
密钥值:
Mytestapp.exe
如果您有多个应用程序,请在单独的行中键入每个应用程序。请勿从文本文件复制粘贴或插入逗号。请确保提供的名称与应用程序的可执行文件名称匹配。此注册表值不区分大小写。
如果应用程序是通过浏览器而不是功能齐全的桌面应用程序访问的,那么您需要在注册表值中允许,例如
chrome.exe。
成功配置上述注册表后,重新启动 VDA 或重新启动
CtxHdxWebSocketService 以完成白名单设置。
在客户端上
无需配置。只需安装 Citrix Workspace 应用程序即可。
每个供应商可能都有一个非常具体的应用程序名称。因此,请参阅当前供应商支持部分中链接的供应商文档,以确定WebSocketService中必须允许哪些应用程序名称。
功能参考
通过智能同步缩短呼叫连接时间
Smart Sync 功能在 UCSDK 5.0.0 中引入,通过简化 VDA 和客户端端点之间的通信来缩短呼叫连接时间。此增强功能全面加快了呼叫设置速度,为高延迟网络环境提供了最显著的性能改进。
Citrix 建议客户联系其应用程序供应商,升级到 UCSDK 5.0.0 以利用此功能。
注意:
此功能仅依赖于 UCSDK 5.0.0 和 Citrix Workspace 应用程序。有关确切的客户端版本,请参阅版本和功能矩阵。没有 VDA 版本依赖性,因此仍可使用较旧的受支持 VDA。
版本和功能矩阵
由于版本更新频繁,请参阅 Citrix Virtual Apps and Desktops 和 Citrix Workspace app 产品生命周期页面,以确保支持特定版本。对于许多较旧的功能,表中提到的版本是撰写本文档时最后支持的当前版本 (CR) 版本。
| 功能 | UCSDK 版本 | VDA | CWA 视窗 | 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 |
| 流分辨率 / 同播 | 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(引导支持) | 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 |
| 网络音频 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 |
| 智能同步 | 5.0.0 | 2203 LTSR 最新 CU / 2311 CR | 2603 | N/A | 2604 | N/A |
注意:
我们引入了屏幕录制的新策略,因此您需要 2503 版本的 delivery controller™,它随 CVAD 2503 提供。
当前供应商支持
几家第三方供应商已将统一通信 SDK 集成到其产品中。当前供应商及其支持文档列表如下:
| 供应商 | 文档 |
|---|---|
| 斯普林克勒 | 适用于语音呼叫的 Citrix 媒体卸载 - Sprinklr |
| 亚马逊 Connect | 优化 Citrix 云桌面上的 Amazon Connect 音频 |
| 铃盛 | 在 Citrix VDI 环境中使用 RingCentral |
| 飞五 | Citrix 环境中的 Five9 WebRTC |
| 特威利奥 | 在 Citrix VDI 上运行的 Twilio Flex |
| 阿瓦亚 | 适用于 Citrix 的 Avaya Experience Platform 公有云 VDI 解决方案 |
| 8x8 | Citrix VDI 与 8x8 Work 桌面版和网页版的集成 |
| 康腾古鲁 | 内容大师 Citrix 集成 |
| 瑞本通信 | 锐滨通信 Citrix WebRTC SDK |
| 英特媒体 | 在 Citrix 虚拟应用和桌面 上安装 Intermedia Unite |
| 阿尔卡特-朗讯 彩虹 | 适用于 Rainbow 桌面应用程序的 Citrix 优化 |
| 拓客台 | Talkdesk 代理工作区 VDI Connect |
| IPC | IPC Unigy 软客户端 Citrix VDI |
| 维特罗 | 适用于 Citrix VDI 的 Vitero Inspire |
| 派视 | 在 Citrix Pexip Infinity Docs 中部署 Connect 桌面应用程序 |
| 祖姆网络应用 | 为 Zoom Web App 配置 WebRTC 重定向 |
故障排除
有关故障排除信息,请参阅针对使用 Citrix 统一通信 SDK 优化的应用程序的故障排除指南。
已知问题和限制
本节将记录当前已识别的已知问题和限制。