适用于直接路由的可幸存分支设备 (SBA)
有时,使用直接路由连接到Microsoft Teams 电话的客户站点可能会遇到 Internet 中断。
在此方案中,假设客户站点(称为分支)暂时无法通过直接路由连接到Microsoft云。 但是,分支内的 Intranet 仍完全正常运行,用户可以连接到提供 PSTN 连接的会话边界控制器 (SBC) 。
本文介绍如何将 Survivable Branch Appliance (SBA) 与 Teams 电话 配合使用,以支持在中断时拨打和接收公用电话交换网 (PSTN) 呼叫的连续性。
先决条件
SBA 是由Microsoft提供给 SBC 供应商的可分发代码,这些供应商随后将代码嵌入其固件或单独分发,以便让 SBA 在单独的 VM 或硬件上运行。
若要获取具有嵌入式 Survivable Branch 设备的最新会话边界控制器固件,请联系 SBC 供应商。 此外,还需要满足以下条件:
为媒体旁路配置 SBC,以确保分支站点中的Microsoft Teams 客户端可以直接与 SBC 一起流动媒体。
在 SBA VM OS 上启用了 TLS1.2。
端口 3443、4444 和 8443 由 Microsoft SBA 服务器用于与 Teams 客户端通信,并允许在防火墙上使用。
Microsoft SBA 服务器使用端口 5061 (或 SBC) 上配置的端口与 SBC 通信,并允许在防火墙上使用端口 5061。
UDP 端口 123 由 Microsoft SBA 服务器用于与 NTP 服务器通信,并允许在防火墙上使用。
Microsoft SBA 服务器使用端口 443 与 Microsoft 365 通信,并允许在防火墙上使用端口 443。
公有云的 Azure IP 范围和服务标记是根据以下文章中所述的准则定义的: https://www.microsoft.com/download/details.aspx?id=56519
支持的 Teams 客户端
以下Microsoft Teams 客户端支持 SBA 功能:
- Microsoft Teams Windows 桌面
- Microsoft Teams macOS 桌面
- Teams 电话
运作方式
在 Internet 中断期间,Teams 客户端会自动切换到 SBA,并且正在进行的呼叫会继续,不会中断。 用户无需执行任何操作。
一旦 Teams 客户端检测到 Internet 已启动,并且所有传出调用都已完成,客户端就会回退到正常操作模式,并连接到其他 Teams 服务。 SBA 将收集的呼叫数据记录上传到云。 将更新呼叫历史记录,供租户管理员查看。
SBA 的 Teams 客户端中断机制旨在确保在网络中断期间持续连接和服务可用性。
必须满足以下条件:
客户端策略检查:仅当设备启动时,才会为用户分配 Teams 客户端连接到的 SBA 的分支生存策略。
网络状态检查:当 Internet 断开连接时,Teams 客户端会连接到 SBA,但用户的设备仍连接到 SBA 设备。
满足这些条件后,Teams 客户端对 SBA 设备执行 ping 操作,客户端会检查策略。 如果同时满足这两个条件,则会发生以下情况:
分支生存策略:分支生存策略指向分配给用户/租户的 SBA URL。
连接到 Teams 客户端上的 SBA:Teams 客户端脱机且用户具有所需策略后,Teams 客户端将切换到设备模式,用户可在其中发出和接收 PSTN 呼叫。 将显示一个横幅,通知用户切换到 SBA。
切换到设备模式的唯一 UI 指示器是横幅。 如果横幅不存在,则用户不处于 SBA 模式,并且调用将不起作用。
SBA 模式仅在物理计算机上的桌面客户端上激活。 目前不支持 VM 和 Web 客户端。
当 Microsoft Teams 客户端处于脱机模式时,以下与调用相关的功能可用:
- 通过本地 SBA/SBC 进行 PSTN 呼叫,媒体流经 SBC。
- 通过本地 SBA/SBC 接收 PSTN 呼叫,媒体流经 SBC。
- 保留和恢复 PSTN 呼叫。
- 盲目传输。
- 呼叫转接到单个电话号码或 Teams 用户。
- 将未接听的呼叫转接到单个电话号码或 Teams 用户。
- 将传入 PSTN 呼叫重定向到呼叫队列或自动助理号码到本地代理。
- 将传入 PSTN 呼叫重定向到呼叫队列或自动助理号码到备用呼叫队列或自动助理号码。
- VoIP 回退。 如果无法发起 VoIP 呼叫,并且接收方具有 PSTN 号码,则会尝试 PSTN 呼叫
- 本地用户之间的 VoIP 呼叫。 如果两个用户都在同一 SBA 后面注册,则可以发起 VoIP 呼叫而不是 PSTN 呼叫,并且 SBA 将支持该呼叫。
配置
若要使 SBA 功能正常工作,Teams 客户端需要知道每个分支站点中有哪些 SBA 可用,以及哪些 SBA 分配给该站点中的用户。 配置步骤如下:
- 创建 SBA。
- 创建 Teams 分支生存能力策略。
- 将策略分配给用户。
- 使用 Microsoft Entra ID 注册 SBA 的应用程序。
所有配置都是使用 Teams PowerShell cmdlet 完成的。 (Teams 管理中心尚不支持直接路由 SBA 功能。)
有关配置 SBC 的信息以及指向 SBC 供应商文档的链接,请参阅 会话边界控制器配置。
创建 SBA
若要创建 SB,请使用 New-CsTeamsSurvivableBranchAppliance cmdlet。 此 cmdlet 具有以下参数:
参数 | 说明 |
---|---|
Identity | SBA 的标识 |
Fqdn | SBA 的 FQDN |
站点 | SBA 所在的 TenantNetworkSite |
说明 | 自由格式文本 |
例如:
C:\> New-CsTeamsSurvivableBranchAppliance -Fqdn sba1.contoso.com -Description "SBA 1"
Identity : sba1.contoso.com
Fqdn : sba1.contoso.com
Site :
Description : SBA 1
创建 Teams 分支生存策略
若要创建策略,请使用 New-CsTeamsSurvivableBranchAppliancePolicy cmdlet。 此 cmdlet 具有以下参数。 该策略可以包含一个或多个 SBA。
参数 | 说明 |
---|---|
Identity | 策略的标识 |
BranchApplianceFqdns | 站点中 SBA () 的 FQDN |
例如:
C:\> new-CsTeamsSurvivableBranchAppliancePolicy -Identity CPH -BranchApplianceFqdns "sba1.contoso.com","sba2.contoso.com"
Identity : Tag:CPH
BranchApplianceFqdns : {sba1.contoso.com, sba2.contoso.com}
可以使用 Set-CsTeamsSurvivableBranchAppliancePolicy cmdlet 在策略中添加或删除 SBA。 例如:
Set-CsTeamsSurvivableBranchAppliancePolicy -Identity CPH -BranchApplianceFqdns @{remove="sba1.contoso.com"}
Set-CsTeamsSurvivableBranchAppliancePolicy -Identity CPH -BranchApplianceFqdns @{add="sba1.contoso.com"}
向用户分配策略
若要将策略分配给单个用户,请使用 Grant-CsTeamsSurvivableBranchAppliancePolicy cmdlet。 此 cmdlet 具有以下参数:
参数 | 说明 |
---|---|
Identity | 用户的标识 |
PolicyName | 策略的标识 |
例如:
C:\> Grant-CsTeamsSurvivableBranchAppliancePolicy -PolicyName CPH -Identity user@contoso.com
可以通过授予$Null策略,从用户中删除策略,如下一个示例所示:
C:\> Grant-CsTeamsSurvivableBranchAppliancePolicy -PolicyName $Null -Identity user@contoso.com
使用 Microsoft Entra ID 注册 SBA 的应用程序
若要允许租户内使用的不同 SBA 从 Microsoft 365 读取所需数据,需要向 Microsoft Entra ID 注册 SBA 应用程序。
有关应用程序注册的详细信息,请参阅以下内容:
只需注册一个应用程序,供租户中的所有 SBA 使用。
对于 SBA 注册,需要注册创建的以下值:
- 应用程序 (客户端) ID
- 客户端密码
对于 SBA 应用程序,请记住以下事项:
- 名称可以是你决定的任何名称。
- 支持的帐户类型 = 仅限此组织目录中的帐户。
- Web 重定向 URI = https://login.microsoftonline.com/common/oauth2/nativeclient。
- 隐式授予令牌 = 访问令牌和 ID 令牌。
- API 权限 = Skype 和 Teams 租户管理员访问 -> 应用程序权限 -> application_access_custom_sba_appliance。
- 客户端密码:可以使用任何说明和过期时间。
- 请记住在创建客户端密码后立即复制它。
- “概述”选项卡上显示了“应用程序 (客户端) ID”。
然后按照以下步骤操作:
- 注册应用程序。
- 设置隐式授予令牌。
- 设置 API 权限。
- 创建客户端密码。
会话边界控制器配置
有关如何使用嵌入式 Survivable Branch 设备配置会话边界控制器的分步指南,请参阅 SBC 供应商提供的文档:
已知问题和注意事项
以下是已知问题和注意事项:
在 SBA 模式下
- SBA 支持过期的客户端身份验证令牌,自令牌过期起最多 7 天。
- 如果触发 Teams 客户端协商新令牌,则 Teams 客户端将无法连接到 SBA。 例如,如果用户退出并重启其 Teams 客户端或重启其设备。
- 在过去 24 小时内,Teams 客户端将无法使用之前未连接的 SBA 来验证自身。
在 SBA 模式下,不支持以下用户操作:
- 将 Teams 客户端切换到另一个租户
- 在紧急呼叫期间 (E911) 共享位置信息。 用户仍然可以进行紧急呼叫,但位置信息不会共享。
- SBA 不支持紧急呼叫路由策略。 EMER 拨号字符串绕过规范化,并且始终不带 +。 因此,如果客户没有将模式附加到与 EMER Dial 字符串匹配的常规语音路由策略,则紧急呼叫将通过 SBA 失败。
- 通过针对Microsoft Entra ID联系人的反向号码查找来联系其他 Teams 用户。 拨打的号码仍将由 SBA 处理,并通过 PSTN 路由。
如果租户使用持续访问评估 (CAE) 令牌,由于持续访问评估的性质,SBA 将仅运行约 30 分钟。 替代方法是为租户禁用 CAE。
添加新的 Survivable Branch 设备时,可能需要一段时间才能在 Survivable Branch Appliance 策略中使用它们。
将 Survivable Branch Appliance 策略分配给用户时,可能需要一段时间才能在 Get-CsOnlineUser 的输出中显示 SBA。
报告问题
向 SBC 供应商的支持组织报告任何问题。 报告问题时,请指示你已配置 Survivable Branch 设备。