适用于 Teams 的新 VDI 解决方案

适用于 Teams 的新 VDI 解决方案是用于优化虚拟桌面中多媒体工作负载交付的新体系结构。

组件

组件 角色 更新 大小 注释
新建 Teams vdiBridge 服务器端虚拟通道模块。 包含每个新 Teams 版本的新版本。 与新 Teams 捆绑在一起。
自定义虚拟通道 (VC) Microsoft Teams 拥有的自定义 VC。 稳定的 API - 未预见任何更新。 检查 Citrix Studio 策略 虚拟通道允许列表
插件 客户端 VC dll。 还负责 SlimCore 下载和清理。 不经常 (理想情况下没有更新) 。 大约 200 KB。 RD 客户端 1.2.5405.0 或 Windows App 1.3.252 或更高版本捆绑。 Citrix CWA 2402 或更高版本可以提取和安装插件。
SlimCore 媒体引擎 (特定于作系统,而不是 VDI 供应商特定的) 。 使用每个新 Teams 版本自动更新到新版本。 大约 50 MB。 托管在 Microsoft 的公共内容分发网络上的 MSIX 包

系统要求

要求 最低版本
新版 Teams 适用于 Azure 虚拟桌面的 24193.1805.3040.8975 (/citrix) Windows 365)
24295.605.3225.8804 (
Azure 虚拟桌面/Windows 365 Windows App:1.3.252
远程桌面客户端:1.2.5405.0
Citrix VDA:2203 长期服务版本 (LTSR) CU3 或 2305 当前发布
Citrix 工作区应用:2203 LTSR (任何累积更新) 、2402 LTSR 或 2302 CR。 仅支持
不在生命周期结束时的版本MsTeamsPluginCitrix:2024.41.1.1
Endpoint Windows 10 2019/2021 Windows 10 上的 Windows 企业版 LTSC 瘦客户端)
SlimCore 最低要求 1809 (或 Windows 11 2024 支持的
GPO 不得阻止 MSIX 安装 (请参阅步骤 3:SlimCore MSIX 暂存和在终结点上注册)
最小 CPU:Intel Celeron (或等效) @ 1.10 GHz、4 核、最小 RAM:4 GB

使用适用于 Teams 的新 VDI 解决方案进行优化

步骤 1:确认先决条件

  1. 请确保具有适用于 Azure 虚拟桌面/Windows 365) 的新 Microsoft Teams 版本 24193.1805.3040.8975 (或更高版本,以及 Citrix 的 24295.605.3225.8804 或更高版本。
  2. 如果特定用户组需要,请启用新的 Teams 策略, (默认在全局组织级别) 启用它。
  3. 对于 Citrix,必须按照本文的 Citrix 虚拟通道允许列表 部分所述配置 虚拟通道允许列表

步骤 2:在终结点上安装插件

  1. 对于 Azure 虚拟桌面和Windows 365,MsTeamsPluginAvd.dll 与适用于 Windows 1.2.5405.0 的远程桌面客户端或 Windows App 应用商店应用 1.3.252 或更高版本捆绑在一起。

    • 插件位于安装远程桌面客户端的同一文件夹位置。 可以在 AppData\Local\Apps\Remote Desktop 或 C:\Program Files (x86) 中找到该插件,具体取决于安装的模式。
    • Windows App应用商店应用(基于 MSIX)位于 C:\Program Files\WindowsApps 中。 对此文件夹的访问受到限制。
  2. 对于 Citrix 工作区应用 2402 或更高版本,可以安装 MsTeamsPluginCitrix.dll:

    • 安装 Citrix 工作区应用时使用用户界面:

      在“ 加载项 () ”页上,选中“ 安装Microsoft Teams VDI 插件 ”复选框,然后选择“ 安装”。

      同意弹出的用户协议并继续安装 Citrix 工作区应用。

      注意

      Citrix 工作区应用 2402 仅在全新安装时显示插件安装 UI。 若要提供此选项的就地升级,需要 Citrix 工作区应用 2405 或更高版本。

    • 通过命令行或托管设备的脚本,使用:

      C:\>CitrixWorkspaceApp.exe /installMSTeamsPlugin

    • 管理员还可以在任何受支持的现有 Citrix 工作区应用上手动安装插件, (请参阅系统要求) 使用SCCM (使用 Windows 应用包部署类型) 或Intune (使用业务线应用) 。

      管理员可以将 msiexec 与适当的标志一起使用,如 msiexec 中所述。

      重要

      Citrix 客户的插件 MSI 下载链接: aka.ms/plugin

插件 MSI 会自动检测 CWA 安装文件夹,并将 MsTeamsPluginCitrix.dll 放在该位置:

用户类型 安装文件夹 安装类型
Administrator 64 位:C:\Program Files (x86) \Citrix\ICA 客户端
32 位:C:\Program Files\Citrix\ICA 客户端
按系统安装
  • 插件不能降级,只能升级或重新安装 (修复) 。
  • 不支持按用户安装 CWA。
  • 如果在终结点上找不到 CWA,则停止安装。
发行说明版本 详细信息
2025.14.1.8 2025 年 5
月 - 插件现在可以下载 64 位的 SlimCore 包,从而提高性能。
2024.41.1.1 2024
年 10 月 - 在多监视器设置中使用 SlimCore 时,Citrix 用户无法共享整个屏幕或单个监视器。
-如果在建立虚拟通道后 SlimCoreVdi MSIX 包注册失败,则尝试 Reset-AppxPackage
2024.32.X.X 2024
年 8 月 - 如果缺少 AppExecution 别名,插件现在会尝试为 SlimCoreVdi MSIX 包 Reset-AppxPackage。

步骤 3:在终结点上进行 SlimCore MSIX 暂存和注册

插件以无提示方式执行此步骤,无需用户或管理员干预。 暂存和注册依赖于终结点上的应用就绪服务 (ARS) 。 由组策略或第三方工具设置的注册表项可能会阻止 MSIX 包安装。 有关适用注册表项的完整列表,请参阅组策略如何与打包的应用配合使用 - MSIX

以下注册表项可能会阻止新媒体引擎 MSIX 包安装:

重要

已启用 BlockNonAdminUserInstall 的托管终结点/瘦客户端仍可允许安装 SlimCore 包。 应用KB5052094 (Windows 11 23H2 和 22H2) 、KB5052093 (Windows 11 24H2) 、KB5055612 (Windows 10 22H2) 或任何后续 KB。 此安装在本地组策略 编辑器引入了名为“允许非管理员用户安装的包系列名称”的新组策略。

然后,管理员可以通过允许完整包 familyName ((例如,Microsoft.Teams.SlimCoreVdi.win-x64.2024.43_8wekyb3d8bbwe) )或使用 Regex ((例如,Microsoft.Teams.SlimCoreVdi.*_8wekyb3d8bbwe) )

可以在用户设备上的以下任一位置找到这三个注册表项:

  • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock
  • HKLM\SOFTWARE\Policies\Microsoft\Windows\Appx

某些策略可能会更改这些注册表项并阻止组织中的应用安装,因为管理员设置了限制性策略。 一些可能阻止安装的已知 GPO 策略包括:

  • 阻止非管理员用户安装打包的 Windows 应用。
  • 允许所有受信任的应用安装 (禁用) 。

注意

AppLockerWindows Defender 应用程序控制 还可以阻止 MSIX 包安装。

AppLocker 是一项深层防御安全功能,不被视为可防御的 Windows 安全功能。 如果目标是提供针对威胁的可靠保护,并且你期望没有设计限制来阻止安全功能实现此目标,请使用 Windows Defender 应用程序控制

重要

请确保没有阻止配置或策略,或者在“本地安全策略” - 应用程序控制>策略 -> AppLocker 中为 SlimCore MSIX 包添加异常。

与 Windows Defender 应用程序控制不同,AppLocker 无法处理尾随通配符。 由于 SlimCoreVdi 包包含特定于版本的 PackageFamilyName (例如 Microsoft.Teams.SlimCoreVdi.win-x64.2024.36_8wekyb3d8bbwe) ,因此客户可以通过依赖 PublisherID 8wekyb3d8bbwe 来添加 AppX 或 MSIX 排除项。

使用更精细的每个应用程序 “AllAppList” 来定义允许运行的应用程序列表的管理员需要以这种方式 (添加异常,因为 SlimCore 遵循 UWP 模型) :

<AppUserModelId=“Microsoft.Teams.SlimCoreVdi。<platform-architecture><>。<>release_version_8wekyb3d8bbwe!MsTeamsVdi“ />

例如: <App AppUserModelId=“Microsoft.Teams.SlimCoreVdi.win-x86.2025.12_8wekyb3d8bbwe!MsTeamsVdi“ />.

若要查找已发布的 SlimCore 包的列表,检查此表

验证终结点是否已优化

满足所有最低要求后,首次启动新 Teams 会发现它默认仍处于 WebRTC 优化模式。

重要

对于首次运行体验,需要重启两次应用才能获得新的优化。

可以在使用新体系结构优化的 Teams 客户端中检查,方法是转到顶部栏中的省略号 (三点 ...) ,然后选择“设置>关于”。 其中列出了 Teams 和客户端版本。

  • AVD SlimCore 媒体优化 = 基于 SlimCore 的新优化。
  • AVD 媒体优化 = 基于 WebRTC 的旧版优化。

插件 (MsTeamsPluginAvd.dll 或 MsTeamsPluginCitrix.dll) 负责最终下载媒体引擎和 SlimCore(MSIX 包)。 在 (示例中,它将以无提示方式安装,无需管理员权限或重新启动,具体路径) 而异:

C:\Program Files\WindowsApps\Microsoft.Teams.SlimCoreVdi.win-x64.2024.15_2024.15.1.5_x64__8wekyb3d8bbwe

远程桌面客户端下载 x64 或 x86 SlimCore 包,Citrix CWA 下载 x86 包。 此文件夹已锁定,因此用户无权访问它。 管理员修改 ACL 以取得所有权,但不建议执行此作。 请改用 PowerShell 列出终结点中的 MSIX 应用:

PowerShellCopy

Get-AppxPackage Microsoft.Teams.SlimCore*

运行此 PowerShell 可返回的结果示例为:

Name              : Microsoft.Teams.SlimCoreVdi.win-x64.2024.32
Publisher         : CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
Architecture      : X64
ResourceId        :
Version           : 2024.32.1.7
PackageFullName   : Microsoft.Teams.SlimCoreVdi.win-x64.2024.32_2024.32.1.7_x64__8wekyb3d8bbwe
InstallLocation   : C:\Program
                    Files\WindowsApps\Microsoft.Teams.SlimCoreVdi.win-x64.2024.32_2024.32.1.7_x64__8wekyb3d8bbwe
IsFramework       : False
PackageFamilyName : Microsoft.Teams.SlimCoreVdi.win-x64.2024.32_8wekyb3d8bbwe
PublisherId       : 8wekyb3d8bbwe
IsResourcePackage : False
IsBundle          : False
IsDevelopmentMode : False
NonRemovable      : False
IsPartiallyStaged : False
SignatureKind     : Developer
Status            : Ok

重要

Microsoft存储最多 12 个版本的 SlimCoreVdi 以实现兼容性。 我们存储这些版本,以防用户访问不同的 VDI 环境,例如永久、新 Teams 自动更新本身,以及禁用新 Teams 自动更新的非持久性环境。

如果已优化,可以看到 Azure 虚拟桌面/W365 (终结点上运行的 MsTeamsVdi.exe 作为 msrdc.exe) 的子进程,或者将 Citrix (作为 wfica32.exe) 的子进程运行。 使用“进程资源管理器”时,如果选择“msrdc.exe (”或“wfica32.exe) ”,请选择“视图”下的“显示下窗格”并切换到“DLL”选项卡,还可以看到加载的插件 (MsTeamsPluginAvd.dll 或 MsTeamsPluginCitrix.dll) 。 如果未获得新的优化,此作是一个有用的故障排除步骤。

如果启用底部窗格并切换到 DLL 选项卡,则还可以看到正在加载的插件。 如果未获得新的优化,此作是一个有用的故障排除步骤。

VDI 状态指示器

Microsoft Teams 显示有关优化状态的信息,帮助用户了解它们是否已优化。 它还显示他们使用的是旧版 WebRTC 优化还是基于 Slimcore 的新优化,方法是将光标悬停在 “优化 ”横幅上。

如果未优化Microsoft Teams,用户会看到一个警告图标。

Teams 应用的屏幕截图,显示它未优化。

用户可以选择三个点,然后选择 “优化虚拟桌面”,然后重启 以尝试修复。

此选择会触发 Teams 重启,这可以解决一些已知问题。 如果用户仍处于未优化状态,将显示错误代码,供 IT 管理员根据 连接错误表进行快速诊断。

用户会看到一个 链接 ,用于接收有关错误的详细信息,如果可作,他们可以尝试自我修正。

会话漫游和重新连接

新 Teams 在启动时加载 WebRTC 或 SlimCore。 如果虚拟桌面会话断开连接 (未注销,则 Teams 在虚拟机上保持运行状态) ,则除非重启,否则 Teams 无法切换优化堆栈。 因此,如果用户在不支持新优化体系结构的不同设备之间漫游,则他们可能处于回退模式 (未优化) 。 例如,BYOD 中使用的 MAC 设备 (在家办公时自带设备) ,并在办公室中引入企业管理的瘦客户端。 为了避免这种情况,Teams 会提示用户使用模式对话,要求重启应用。 重启后,用户将处于 WebRTC 优化模式。

此外,用户可以从仅支持 WebRTC 的设备漫游到支持 SlimCore 的设备。 在此方案中,Teams 还会提示用户使用模式对话,要求重启应用。 重启后,用户将处于 SlimCore 优化模式。

重新连接选项 如果当前优化为 WebRTC 如果当前优化为 SlimCore
从没有 MsTeamsPlugin 的终结点重新连接 然后是 WebRTC 经典优化。
(“AVD 媒体优化”) 。
(“Citrix HDX 媒体优化”) 。
然后重启对话提示。
重启后,用户将进行 WebRTC 经典优化。 否则,Teams 不会重启,并且用户处于回退模式, (服务器端呈现) 。
使用 MsTeamsPlugin 从终结点重新连接 然后重启对话提示。
重启后,用户将进行新的 SlimCore 优化。 否则,Teams 不会重启,并且用户仍在 WebRTC 中。
然后是新的基于 SlimCore 的优化。

网络注意事项

注意

MsTeamsVdi.exe 是与 Teams 中继/会议服务器或其他对等服务器建立所有 TCP/UDP 网络连接的过程。

SlimCore MSIX 清单将以下规则添加到防火墙: <Rule Direction="in" IPProtocol="TCP" Profile="all" /><Rule Direction="in" IPProtocol="UDP" Profile="all" />

确保用户的设备的网络连接 (UDP 和 TCP) 终结点 ID 11、12、47 和 127,如 Microsoft 365 URL 和 IP 地址范围中所述。

ID 类别 地址 端口 注释
11 需要优化 52.112.0.0/14, 52.122.0.0/15, 2603:1063::/38 UDP:3478、3479、3480、3481 媒体处理器和传输中继 3478 (STUN) 、3479 (音频) 、3480 (视频) 、3481 (屏幕共享)
12 需要允许 *.lync.com*.teams.microsoft.comteams.microsoft.com 52.112.0.0/14、 52.122.0.0/15、52.238.119.141/32、52.244.160.207/32、2603:1027::/48、2603:1037::/48、 2603:1047::/48、2603:1057::/48、2603::/38、2620:1ec:6::/48、2620:1ec:40::/42 TCP:443、80
47 默认必需 *.office.net TCP:443、80 用于 SlimCore 下载和后台效果
127 默认必需 *.skype.com TCP:443、80

网络体系结构

Teams VDI 2 的网络体系结构。

图中体系结构的演练:

  1. 启动新的 Teams。
  2. Teams 客户端向 Teams 服务进行身份验证。 租户策略向下推送到 Teams 客户端,相关配置将中继到应用。
  3. Teams 检测到它在虚拟桌面环境中运行,并实例化内部 vdibridge 服务。
  4. Teams 在服务器上打开一个安全虚拟通道。
  5. RDP 或 HDX 协议将请求传递到 RD 客户端或 Citrix 工作区应用,该应用以前加载了 MsTeamsPlugin (客户端虚拟通道组件) 。
  6. RD 客户端或 Citrix 工作区应用会生成一个名为 MsTeamsVdi.exe 的新进程,这是用于新优化的新媒体引擎 (SlimCore) 。
  7. 客户端) 上的 SlimCore 媒体引擎 (,虚拟桌面上的 msteams.exe () 现在具有双向通道,并且可以开始处理多媒体请求。

用户调用

  1. 对等方 A 选择呼叫按钮。 MsTeamsVdi.exe 与 Azure 中的 Microsoft Teams 服务通信,使用对等 B 建立端到端信号路径。MsTeamsVdi.exe 收集一系列支持的调用参数 (编解码器、分辨率等,这称为会话描述协议 (SDP) 提供) 。 然后,这些调用参数将使用信令路径中继到 Azure 中的 Microsoft Teams 服务,并从那里中继到另一个对等方。
  2. SDP 套餐/应答 (单通道协商) 通过信令通道进行,ICE 连接检查 (使用 STUN 绑定请求的 NAT 和防火墙遍历) 完成。 然后,安全实时传输协议 (SRTP) 媒体直接流 MsTeamsVdi.exe 与其他对等 (或 Teams 传输中继或会议服务器) 。

本文介绍了用于信号、媒体、背景效果和其他选项的 IP 块。

终结点上 SlimCore 处理的流量类型

  1. Teams 媒体流连接是使用标准 IETF 交互式连接建立 (ICE) STUN 和 TURN 过程实现的。
  2. 实时媒体。 实时传输协议中封装的数据 (RTP) ,支持音频、视频和屏幕共享工作负载。 通常,媒体流量对延迟高度敏感。 此流量必须尽可能采用最直接的路径,并使用 UDP 与 TCP 作为传输层协议,这是从质量角度来看交互式实时媒体的最佳传输。
    • 作为最后的手段,媒体可以使用 TCP/IP,也可以在 HTTP 协议中通过隧道,但由于质量不佳,我们不建议使用。
    • RTP 流使用 SRTP 进行保护,其中仅对有效负载进行加密。
  3. 信号。 终结点与 Teams 服务器或其他客户端之间的通信链接,用于控制活动 (例如,在) 发起调用时。 大多数信令流量使用 UDP 3478 并回退到 HTTPS,但在某些情况下 (例如,Microsoft 365 与会话边界控制器之间的连接) 它使用 SIP 协议。 请务必了解,此流量对延迟的敏感度要低得多,但如果终结点之间的延迟超过几秒钟,可能会导致服务中断或调用超时。

带宽消耗

Teams 旨在不受网络条件限制,提供最佳音频、视频和内容共享体验。 当带宽不足时,Teams 将优先处理音频质量,而优先于视频质量。 在带宽不受限制的情况下,Teams 可优化媒体质量,包括高保真音频、高达 1080p 的视频分辨率以及高达每秒 30 fps (帧的视频和内容) 。 若要了解详细信息,请阅读 带宽要求

服务质量 (QoS)

实现终结点和网络设备的 QoS 设置,并确定要如何处理通话和会议的媒体流量。

  • 作为先决条件,请在 Teams 管理员中心全局启用 QoS。 有关为实时媒体流量设置启用插入服务质量 (QoS) 标记的详细信息,请参阅在 Teams 管理中心配置 QoS

    建议的初始端口范围:

    媒体流量类型 客户端源端口范围 协议 DSCP 值 DSCP 类
    音频 50,000 - 50,019 TCP/UDP 46 加速转发 (EF)
    视频 50,020 - 50,039 TCP/UDP 34 保证转发 (AF41)
    应用或屏幕共享 50,040 = 50,059 TCP/UDP 18 保证转发 (AF41)
  • 有关为 Windows 终结点配置 DSCP 标记的信息,请参阅 在 Teams 客户端中实现 QoS

    注意

    任何基于终结点的标记都必须应用于 MsTeamsVdi.exe,该过程处理用户设备上的所有多媒体卸载。 有关 QoS 的详细信息,请参阅 Playbook 文档

  • 有关为路由器实现 QoS 的信息,请参阅制造商的文档。

  • 在网络设备上设置 QoS 可能包括以下部分或全部内容:

    • 使用基于端口访问控制 Lists (ACL)
    • 定义 QoS 队列
    • 定义 DSCP 标记

重要

建议使用终结点源端口以及源和目标 IP 地址“any”实现这些 QoS 策略。 这些策略同时捕获内部网络上的传入和传出媒体流量。

  1. VPN 网络。 不建议用于媒体流量。
  2. 数据包整形器。 不建议将任何类型的数据包探查器、数据包检查、代理或数据包整形器设备用于 Teams 媒体流量,并且可能会显著降低质量。

Microsoft Teams PowerShell 策略进行优化

CsTeamsVdiPolicy cmdlet 使管理员能够控制用户可以创建的会议类型,或者在专门在 VDI 环境中的会议中访问的功能,其中,使用 VDI 合作伙伴的策略引擎 (Citrix StudioVMware HTML5 ADMX 模板AVD 和Windows 365) 的此注册表项禁用了 WebRTC 优化。

默认策略配置包括:

  • DisableCallsAndMeetings: False
  • DisableAudioVideoInCallsAndMeetings: False

此策略现在有一个附加参数作为唯一的配置点,用于控制用户是否可以基于 SlimCore 获取新的优化模式。 换句话说,VDI 合作伙伴的策略引擎不会控制新的优化模式:

  • VDI2Optimization:已启用 (默认值)
名称 定义 示例 注释
New-CsTeamsVdiPolicy 允许管理员定义新的 VDI 策略,这些策略可以分配给用户,以控制与 VDI 环境中的会议相关的 Teams 功能。 PS C:\> New-CsTeamsVdiPolicy -Identity RestrictedUserPolicy -VDI2Optimization "Disabled" 此处显示的命令使用 New-CsTeamsVdiPolicy cmdlet 创建标识为 RestrictedUserPolicy 的新 VDI 策略。 此策略使用 VDI 策略的所有默认值,但 VDI2Optimization 除外。 在此示例中,无法使用 SlimCore 优化具有此策略的用户。
Grant-CsTeamsVdiPolicy 允许管理员在每用户范围内分配 Teams VDI 策略。 管理员可以控制用户可以创建的会议类型、可在未优化的 VDI 环境中访问的功能,以及用户是否可以使用基于 SlimCore 的新优化模式进行优化。 PS C:\> Grant-CsTeamsVdiPolicy -identity "Ken Myer" -PolicyName RestrictedUserPolicy 在此示例中,为标识为“Ken Myer”的用户分配了 RestrictedUserPolicy。
Set-CsTeamsVdiPolicy 允许管理员更新现有 VDI 策略。 PS C:\> Set-CsTeamsVdiPolicy -Identity RestrictedUserPolicy -VDI2Optimization "Disabled" 此处显示的命令使用 Set-CsTeamsVdiPolicy cmdlet 使用 Identity RestrictedUserPolicy 更新现有 VDI 策略。 此策略使用除以下值之外的所有现有值:VDI2Optimization;在此示例中,无法使用 SlimCore 优化具有此策略的用户。
Remove-CsTeamsVdiPolicy 允许管理员删除以前创建的 Teams VDI 策略。 没有显式分配策略的用户回退到组织中的默认策略。 PS C:\> Remove-CsTeamsMeetingPolicy -Identity RestrictedUserPolicy 在前面显示的示例中,命令从组织的策略列表中删除受限用户策略,并从分配了策略的用户中删除此策略的所有分配。
Get-CsTeamsVdiPolicy 允许管理员检索有关组织中配置的所有 VDI 策略的信息。 PS C:\> Get-CsTeamsVdiPolicy -Identity SalesPolicy 在此示例中,Get-CsTeamsVdiPolicy 用于返回具有 Identity SalesPolicy 的每用户会议策略。 由于标识是唯一的,因此此命令不会返回多个项。

具有新优化的功能列表

功能 适用于 SlimCore (Windows) 在 WebRTC (Windows) 上可用
1080p
终结点上的硬件加速 2
库视图 3x3 和 7x7
服务质量
噪声抑制 是 (AVD)
语音隔离
是 (AVD 和 Omnissa)
演示者模式
Teams 高级版 检查“Teams 高级版”页 检查“Teams 高级版”页
组织自定义背景 是 (Teams 高级版 需要许可证)
用户上传的背景效果 3
缩放 +/-
媒体旁路、基于位置的路由、作员连接 1
通话质量仪表板和 Teams 管理中心 有限
已发布的应用/远程应用
授予/获取控制权
应用共享
e911
Simulcast
共享系统音频
辅助响铃
背景模糊
组织者可以安排会议、网络研讨会和市政厅
组织者、演示者和与会者可以加入会议和网络研讨会
组织者和演示者可以加入市政厅
与会者可以加入市政厅
会议与网络研讨会组织者和演示者已优化
市政厅组织者和演示者已优化
会议与会者和网络研讨会与会者已优化
对市政厅与会者进行优化
附注 仅作为演示者。 4

1 印度使用手机号码的运营商连接需要从终结点的 OS 和本地 Internet 突破口进行纬度和经度访问。 使用线路号码进行连接的作员可以使用 IP 或子网映射到某个位置。 有关详细信息,检查印度的 Wireline 和 Wireless 号码类型2 图形硬件加速需要 DirectX 9 或更高版本,Windows 10 (使用 WDDM 2.0 或更高版本,对于Windows 10 Fall Creators Update) ,需要 WDDM 1.3 或更高版本。 3 如果你以来宾身份加入会议,则不支持此功能。 4 查看者将不会看到批注 (它们被传入视频窗口覆盖)

终结点上的 SlimCore 用户配置文件

VDI 的新解决方案将用户特定的数据存储在终结点上的以下位置,具体取决于你的供应商:

  • C:\users\<user>\AppData\Local\Microsoft\TeamsVDI\avd-default-<cloudname>\
  • C:\users\<user>\AppData\Local\Microsoft\TeamsVDI\citrix-default-<cloudname>\

重要

锁定的瘦客户端必须允许读取/写入这些位置。 否则,新的优化可能会失败。 对于较旧的 Windows 10 1809 瘦客户端 ((如 Dell Wyse 5070 和类似型号) ),SlimCore 配置文件的文件夹位置为 C:\Users\<user>\AppData\Local\Packages\Microsoft.Teams.SlimCoreVdi.win-<architecture>.<version>_8wekyb3d8bbwe\LocalCache\

(用于噪声抑制、带宽估计等的日志、配置和 AI 或 ML 模型,) 保存在此位置。 如果用户注销后清除这些文件夹 (例如,) 锁定了没有漫游配置文件的瘦客户端,MsTeamsVdi.exe 重新创建这些文件夹并下载用户特定的配置 (大约 12 MB 的数据) 。 特定于用户的数据可以增加到大约 100 MB (包括大约 60 MB 的日志) 。

锁定瘦客户端环境中的 SlimCore 安装和升级过程 (可选)

默认情况下,MsTeamsPlugin 会自动下载并安装正确的 SlimCore 媒体引擎版本,无需用户或管理员干预。 但分支机构中受限网络环境中的客户可以选择替代 SlimCore 分发过程,而无需终结点能够使用 https 从 Microsoft 的公共内容分发网络提取 SlimCore 包。

注意

有关与相应新 Teams 版本匹配的 SlimCore 包的更新列表,检查此表

重要

如果必须选择此方法,则必须保证:

  1. 在虚拟桌面中禁用 Teams 自动更新
  2. 在虚拟桌面中升级新 Teams 之前,会将 SlimCore 包预配到终结点的本地存储或网络共享。 任何较新的 Teams 版本都请求匹配的 SlimCore 新版本,如果插件找不到它,则用户 (服务器端呈现) 处于回退模式。

出现这种情况是因为新的 Teams 和 SlimCore 版本必须匹配。

配置步骤

  1. 在用户的终结点 (瘦客户端/fat 客户端) ,必须创建以下regkey:

    • Citrix 的位置:HKLM\SOFTWARE\WOW6432Node\Microsoft\Teams\MsTeamsPlugin
    • Azure 虚拟桌面/W365 的位置:HKLM\SOFTWARE\Microsoft\Teams\MsTeamsPlugin
    • 名称:MsixUrlBase
    • 类型:REG_SZ
    • 数据:本地存储或网络存储 UNC 路径,例如 file://C:/Temp 或 file://ComputerName/SharedFolder。

    regkey 定义基 URL。

  2. 此外,管理员必须从Microsoft的内容分发网络下载与你计划在将来部署的新 Teams 版本匹配的确切 SlimCore MSIX 包版本。

    重要

    MSIX 包需要匹配 Citrix Workspace 应用的体系结构或位数, (x86 仅) 、远程桌面或Windows App客户端:Microsoft.Teams.SlimCoreVdi.<platform>-<architecture>.msix

  3. 若要保留结构,请将 MSIX 置于特定文件夹中,其版本位于注册表项中指定的位置内。 例如,C:\Temp\2024.4.1.9\Microsoft.Teams.SlimCoreVdi.win-x86.msix 或 //ComputerName/SharedFolder/2024.4.1.9/。

    注意

    如果插件在本地或网络存储中找不到 SlimCore MSIX 包,则会自动尝试从Microsoft公共内容分发网络下载它作为回退。

统一写入筛选器 (UWF)

应用了 统一写入筛选器 的瘦客户端的客户应创建以下排除项,以允许预配 SlimCore MSIX 包:

  • uwfmgr.exe 文件 Add-Exclusion“C:\Program Files\WindowsApps”
  • uwfmgr.exe 文件 Add-Exclusion“C:\Users\User\AppData\Local\Packages”
  • uwfmgr.exe 文件 Add-Exclusion“C:\Users\User\AppData\Local\Microsoft\WindowsApps”
  • uwfmgr.exe 文件 Add-Exclusion“C:\Users\User\AppData\Local\Microsoft\TeamsVDI”

已知问题

  • 目前不支持 AVD RemoteApps 和 Citrix 发布的应用。
  • 屏幕捕获保护 (SCP) 会导致演示者的屏幕显示为黑屏,只有鼠标光标位于顶部 (接收方) 。 此问题已在 Teams 25060.205.3499.6849 和远程桌面客户端 1.2.6081 或 Windows 应用 2.0.379 中修复。
  • 如果在活动调用期间锁定虚拟机 (VM) ,则调用会断开连接。 此问题已在 25094.303.3554.9058 或更高版本中修复。
  • 如果用户从同一本地计算机启动虚拟桌面并登录到 Teams,则调用将丢弃在本地计算机上运行的 Teams,该计算机连接了 HID 外围设备。 如果用户有一个活动虚拟桌面,并启动了另一个虚拟桌面,该桌面安装了 Teams (或使用优化) 的其他统一通信应用,则也会发生此问题。
  • 目前不支持相机自我预览, (在“设置/设备”下或在通话时选择相机图标上的向下箭头时) 。
  • 在终结点的 控制面板/应用/已安装应用中,用户看到多个“Microsoft Teams VDI”条目, (每个安装) Slimcore 包的一个条目。
  • 执行完全监视屏幕共享时,呼叫监视器窗口对其他参与者可见, () 内没有任何视频内容。
  • 在 Citrix 中,如果演示者位于 VDA (虚拟传递代理) 版本 2402 和 CWA for Windows 2309.1 (或更高版本) 上,则其他参与者的应用共享会话可能会冻结。
    • 销毁视频元素时会出现此问题。
      • 例如,参与者在应用共享会话中间关闭其相机。
      • 如果有人只 打开 相机,则没有问题,因为视频元素已创建,而不是销毁。
      • 如果演示者最大化呼叫监视器 (这将破坏演示者共享) 的自我预览。
    • 停止并重新共享窗口应可解决此问题。
    • 此问题已在新的 Teams 24335.206.X.X 或更高版本中得到解决。
  • 如果你正在进行视频通话,并且打开虚拟机上的“开始”菜单,Teams 会议窗口中会显示一个空白屏幕,而不是视频源。
  • 在 CQD 中,VdiMode (x2xx) 表示 VDI SlimCore Optimized 和 Unoptimized 回退,这可能会导致通话质量不佳。

跨云协作

Microsoft公共、GCC (政府社区云) 、GCCH (政府社区云高) 和 DoD (国防部) 云中的组织现在可以通过新的优化 (此协作适用于公司内部和公司间) ,有效地相互协作。 此协作通常涉及访问需要经过身份验证的访问的共享内容。 以前,由于音频/视频缺乏优化,通过 Teams 跨云的协作受到限制。 借助新的基于 Teams 和 Slimcore 的优化,用户现在可以享受高清用户体验。 有关跨云的详细信息,检查此链接

支持以下方案:

  • 跨云匿名 允许用户在 Teams 中登录到云 A,并匿名加入其他云 B 中的会议的方案。 有关详细信息 ,请参阅管理对 Teams 会议、网络研讨会和市政厅的匿名参与者访问权限, (IT 管理员)
  • 跨云来宾访问 扩展了功能,允许用户在团队、频道、文档和 Teams 会议中参与丰富的协作体验,从而获得完整的体验,包括音频/视频优化、屏幕共享、文件共享以及 1:1 和 1:n 聊天。 有关详细信息,请查看 此处
  • 跨云身份验证的会议加入 使 Teams 用户能够在登录到主租户中的帐户时加入另一个云中的会议。 此功能使会议主持人能够验证会议参与者的身份,而无需向这些参与者授予对主持人租户的任何访问权限。

最低版本:Teams 25060.205.3499.6849。 远程桌面客户端 1.2.6186。 Citrix 插件 2024.41.1.1。

已知问题:

  • HID 仅适用于主云。
  • 从 Teams UI 静音不会在非主云中播放“静音/取消静音”语音命令。
  • 此处介绍了更多外围设备限制
  • (多云或跨云) 登录到多个云的任何用户都无法使用 WebRTC 进行优化。 如果用户漫游到不支持 SlimCore 的设备,则他们处于回退模式 (服务器端呈现) ,直到漫游回支持 SlimCore 的设备。 出现此问题的原因是 WebRTC 不支持任何跨云功能。
  • 如果跨云功能看起来不起作用,即使用户满足最低要求,你可以在使用 SlimCore) 进行优化后退出 Teams (,并尝试在以下路径中删除名为 ecs_settings.dat64 的文件:%localappdata%\packages\MSTeams_8wekyb3d8bbwe\LocalCache\microsoft\MSTeams。 重启 Teams。

Citrix 虚拟通道允许列表

CVAD 中的 虚拟通道允许列表 策略设置允许使用允许列表,该列表指定可在 ICA 会话中打开哪些虚拟通道。 启用后,必须声明除 Citrix 内置虚拟通道之外的所有进程。 因此,新的 Teams 客户端需要更多条目才能连接到客户端插件 (MsTeamsPluginCitrix.dll) 。

对于 Citrix 虚拟应用和桌面 2203 或更高版本, 默认启用虚拟通道允许列表。 这些默认设置拒绝访问新的 Teams 自定义虚拟通道,因为允许列表不包括新的 Teams main进程名称。

新的 Teams 客户端需要三个自定义虚拟通道才能正常运行:MSTEAMS、MSTEAM1和MSTEAM2。 Ms-teams.xes 访问这些频道。 可以使用通配符来允许 ms-teams.exe 可执行文件和自定义虚拟通道:

  • MSTEAMS,C:\Program Files\WindowsApps\MSTeams*8wekyb3d8bbwe\ms-teams.exe
  • MSTEAM1,C:\Program Files\WindowsApps\MSTeams*8wekyb3d8bbwe\ms-teams.exe
  • MSTEAM2,C:\Program Files\WindowsApps\MSTeams*8wekyb3d8bbwe\ms-teams.exe
  1. 通配符支持在以下方面提供:

    • VDA 2206 CR。
    • 从 CU2 开始的 VDA 2203 LTSR。
  2. 必须重新启动 VDA 计算机才能使策略生效。

屏幕共享

与未优化的 Teams 桌面客户端相比,在优化的 VDI 中,传出屏幕共享和应用共享的行为不同。 因此,这些活动需要采用用户设备资源的编码 (例如 CPU、GPU、RAM、网络等) 。 从网络的角度来看,共享直接在用户的设备与其他对等服务器或会议服务器之间完成。

完全监视屏幕共享捕获 Teams 呼叫监视器,并使它对其他参与者可见。 内部的视频元素不可见,而是显示为空白正方形。 执行应用共享时,只有共享的应用程序对其他参与者可见,并且不会捕获呼叫监视器。

Citrix 应用保护和Microsoft Teams 兼容性

启用应用保护的用户在使用新的优化时仍可以共享其屏幕和应用。 共享需要 VDA 版本 2402 或更高版本,以及适用于 Windows 2309.1 或更高版本的 CWA。 安装并启用应用保护模块时,较低版本的用户最终会共享黑屏。

AVD 屏幕捕获保护和Microsoft Teams 兼容性

启用 屏幕捕获保护 (SCP) 的用户在远程桌面客户端上阻止屏幕捕获 (客户端上的阻止屏幕捕获) 仍可以共享其屏幕和应用,同时使用新的基于 Microsoft Teams 的 SlimCore 优化。 共享需要以下最低版本:Teams 25060.205.3499.6849 和远程桌面客户端 1.2.6081 或 Windows App 2.0.379。

较低版本的用户最终在启用 SCP 的情况下共享黑屏。

VDI 中的外围设备

使用 SlimCore 优化 Teams 时,连接到物理设备的相机、麦克风和扬声器将映射到虚拟桌面。 Teams 枚举所有检测到的设备,将默认通信设备 (优先,如在用户设备) 上运行时 mmsys.cpl 面板中所示。 基于 SlimCore 的优化支持人机接口设备 (HID) ,适用于 Teams 认证头戴显示设备,允许用户直接从头戴显示设备自行静音/静音和增加/减少音量。 目前不支持经过认证的 Teams 设备上的“Microsoft Teams”按钮。

注意

对于某些外围设备,并排运行的两个统一通信应用可能会导致 HID 冲突,其中活动呼叫断开连接。

请参阅已知问题部分。

解决方法是,可以在 Teams 25060.205.3499.6849 或更高版本上通过注册表项禁用 HID,可在终结点上创建密钥。 (如果具有 2025.14.1.8 插件 (Citrix) 或远程桌面客户端 1.2.6275/Windows App 2.0.550.0) ,也可以在 VM 上创建密钥。

HKEY_CURRENT_USER\Software\Microsoft\Teams\HID

名称:DisableHidManagerV1

类型:DWORD

值:1 (设置为 1 时,它将禁用 HID) (如果设置为 0 或键不存在,则启用 HID)

监视 API

管理员可以创建自定义脚本来 查询 vdi_connection_info.json - 虚拟机中的此文件包含有关当前和最后一个会话的信息,例如优化状态、外围设备和不同组件的软件版本。

VDA 或 RD 主机) 中的位置 (:C:\Users<username>\AppData\Local\Packages\MSTeams_8wekyb3d8bbwe\LocalCache\Microsoft\MSTeams\tfw

监视 API 的典型用例包括:

  • 管理员在 VDA 或 RD 主机中部署自动化脚本,以检测客户端终结点作系统是否自上次连接以来发生了更改。 脚本使用 JSON 文件的内容来比较最后两个会话的值,并发出自己的警报/弹出消息。
  • 开发人员创建报告 VDI 优化连接的当前状态的第三方应用。 该脚本使用 JSON 文件的内容来检索当前 Teams 会话的所有可用连接、优化和设备信息。

Json 文件结构:

  • Timestamp - vdiConnectedState.timestamp 指示会话连接的时间戳
  • VDI 优化 - vdiConnectedState.vdiMode 指示优化版本 (在整个 VDI 会话中保持静态)
  • 连接状态 - connectedStack (remote = optimized,local = not optimized) (在整个 VDI 会话中保持静态)
  • 终结点上的 SlimCore 版本 - remoteSlimcoreVersion
  • VM 上的 VdiBridge 版本 - bridgeVersion
  • 终结点上的 MS Teams 插件版本 - pluginVersion
  • Teams 版本 - vdiVersionInfo.teamsVersion
  • 客户端平台 - vdiVersionInfo.clientPlatform
  • VDI 客户端 (CWA 或 Windows App) 版本 - vdiVersionInfo.rdClientVersion
  • VM OS 版本 - vdiVersionInfo.vmVersion
  • 可用的外围设备 - devices.speakers.available、devices.cameras.available、devices.microphones.available (实时更新到 json 文件)
  • 选定的外围设备 - devices.speakers.selected、devices.cameras.selected、devices.microphone.selected (实时更新到 json 文件)
  • 辅助响铃 - devices.secondaryRinger (实时更新到 json 文件)

注意

在 WebRTC 优化中,仅填充 vdiConnectedState,指示会话当前处于哪个优化状态。 会话的 JSON 文件中没有存储 vdiVersionInfo 和设备信息。 如果没有可用的优化,则不会对 JSON 文件进行更新。

VDI 中的通话质量仪表板

呼叫质量仪表板 (CQD) 允许 IT 专业人员通过比较用户组的统计信息来确定趋势和模式,从而使用聚合数据来确定造成媒体质量问题的问题。 CQD 不专注于解决单个呼叫问题,而是专注于识别适用于许多用户的问题和解决方案。

VDI 用户信息现在通过许多维度和筛选器公开。 有关每个维度的详细信息,请查看 此页

注意

适用于 CQD 下载的 Power BI 查询模板中提供了新的体验质量 (QER) 模板。 版本 8 现在包括用于查看以客户端为中心的 VDI 指标的模板。

重要

在 CQD 中,VdiMode 值 (x2xx) 表示 VDI SlimCore Optimized 和 VDI SlimCore Not Connected (Unoptimized Fallback) 。 这种重复可能会导致误解,因为未优化的会话中的通话质量不佳可能是 VDI SlimCore 优化的问题。 我们正在努力解决遥测中的此限制。 目前,建议使用 Teams 日志来验证实际优化状态。

查询基础知识

格式正确的 CQD 查询/报表包含以下三个参数:

格式正确的查询的一些示例包括:

  1. “使用上个月 [筛选器] 的新优化 [维度] 为 VDI 用户显示差流 [度量]。”
  2. “按上个月和优化了第一个或第二个客户端 VDI 模式 [筛选器] 的总数Stream计数 [维度] 显示差应用共享 [度量]。”

还可以使用许多维度和度量值作为筛选器。 可以在查询中使用筛选器来消除信息,就像选择维度或度量以在查询中添加或包含信息一样。

UNION 的作用

默认情况下,筛选器允许使用 AND 运算符筛选条件。 但在某些情况下,你可能希望将多个筛选条件组合在一起,以获得类似于 OR作的结果。 例如:若要从 VDI 用户获取所有流,UNION 提供合并数据集的不同视图。 要使用“联合”,请在你要联合的两个筛选条件上的“联合”字段中插入普通文本。

调用方和被调用方位置

CQD 不使用“调用方”或“被调用方”字段,而是使用 “第一”“第二 ”,因为调用方和被调用方之间存在干预步骤。

  • 首先 始终是服务器终结点 (例如 AV MCU 或媒体处理器服务器) (如果流中涉及服务器)。
  • 第二 个始终是客户端终结点,除非它是服务器-服务器流。

如果两个终结点的类型相同, (例如) 人员对人呼叫,则基于用户代理类别的内部排序设置第一个与第二个,以确保排序一致。