为直接路由配置呼叫路由

本文介绍如何为直接路由配置呼叫路由。 这是配置直接路由的以下步骤中的步骤 3:

有关设置直接路由所需的所有步骤的信息,请参阅 配置直接路由

呼叫路由概述

Teams 电话具有路由机制,允许根据以下条件将呼叫发送到特定会话边界控制器 (SBC) :

  • 调用的数字模式
  • 被调用号码模式加上进行呼叫的特定用户

SBC 可以指定为活动和备份。 当配置为活动状态的 SBC 不适用于特定呼叫路由时,呼叫将路由到备份 SBC。

呼叫路由由以下元素组成:

  • 呼叫路由策略 – 也称为语音路由策略。 PSTN 用法的容器,可以分配给一个用户或多个用户。

  • PSTN 用法 - 语音路由和 PSTN 用法的容器,可在不同的语音路由策略中共享。

  • 语音路由 - 号码模式和联机 PSTN 网关集,用于呼叫号码与模式匹配的呼叫。

  • 联机 PSTN 网关 - 指向 SBC 的指针,该指针还存储通过 SBC 发出呼叫时应用的配置,例如转发 P-Asserted-Identity (PAI) 或首选编解码器;可以添加到语音路由。

语音路由策略注意事项

如果用户具有通话套餐许可证,该用户的传出呼叫将通过 Microsoft 通话套餐 PSTN 基础结构自动路由。 如果配置联机语音路由策略并将其分配给通话套餐用户,则会检查该用户的传出呼叫,以确定拨出号码是否与联机语音路由策略中定义的号码模式匹配。 如果有匹配项,则通过直接路由中继路由呼叫。 如果没有匹配项,则通过呼叫计划 PSTN 基础结构路由呼叫。

谨慎

如果配置并应用全局 (组织范围的默认) 联机语音路由策略,则组织中所有启用语音的用户都将继承该策略,这可能会导致来自通话套餐和运营商 Connect 用户的 PSTN 呼叫无意中路由到直接路由中继。 如果不希望所有用户都使用全局联机语音路由策略,请配置自定义联机语音路由策略,并将其分配给支持语音的单个用户。

示例 1:使用一个 PSTN 的语音路由

下图显示了通话流中语音路由策略的两个示例。

左侧) 调用流 1 (: 如果用户拨打 +1 425 XXX XX 或 +1 206 XXX XX,呼叫将路由到 SBC sbc1.contoso.com 或 sbc2.contoso.com。 如果 sbc1.contoso.com 和 sbc2.contoso.com 均不可用,则呼叫将被删除。

在右侧) 调用流 2 (: 如果用户拨打 +1 425 XXX XX 或 +1 206 XXX XX,则呼叫将首先路由到 SBC sbc1.contoso.com 或 sbc2.contoso.com。 如果两个 SBC 均不可用,则会尝试 (sbc3.contoso.com 优先级较低的路由并 sbc4.contoso.com) 。 如果 SBC 均不可用,则调用将被删除。

显示语音路由策略示例的屏幕截图。

在这两个示例中,虽然为语音路由分配了优先级,但路由中的 SBC 将按随机顺序进行尝试。

注意

除非用户还具有 Microsoft 通话套餐许可证,否则将删除对除匹配示例配置中模式 +1 425 XXX XX 或 +1 206 XXX XX XX 的号码以外的任何号码的调用。 如果用户具有通话套餐许可证,则会根据 Microsoft 通话套餐的策略自动路由呼叫。 Microsoft 通话套餐自动作为最后路由应用于具有 Microsoft 通话套餐许可证的所有用户,并且不需要其他呼叫路由配置。

在下图所示的示例中,添加了一个语音路由,以将呼叫发送到所有其他美国和加拿大号码, (呼叫转到呼叫号码模式 +1 XXX XXX XX XX) 。

显示具有第三个路由的语音路由策略的屏幕截图。

对于所有其他呼叫,如果用户同时具有 (Teams 电话和 Microsoft 通话套餐) 许可证,则使用自动路由。 如果没有任何内容与管理员创建的联机语音路由中的号码模式匹配,则通过 Microsoft 通话套餐路由呼叫。 如果用户只有 Teams 电话,则呼叫将被删除,因为没有可用的匹配规则。

注意

在这种情况下,路由“其他 +1”的优先级值并不重要,因为只有一个路由与模式 +1 XXX XXX XXX XX XX 匹配。 如果用户拨打 +1 324 567 89 89,并且 sbc5.contoso.com 和 sbc6.contoso.com 都不可用,则呼叫将被删除。

下表汇总了使用三个语音路由的配置。 在此示例中,所有三个路由都是同一 PSTN 用法的一部分,即“美国和加拿大”。 所有路由都与“美国和加拿大”PSTN 用法相关联,PSTN 用法与“仅限美国”语音路由策略相关联。

PSTN 用法 语音路由 号码模式 优先级 Sbc 说明
美国和加拿大 “Redmond 1” ^\+1 (425|206) (\d{7}) $ 1 sbc1.contoso.com
sbc2.contoso.com
被叫号码的活动路由 +1 425 XXX XX 或 +1 206 XXX XX XX
美国和加拿大 “Redmond 2” ^\+1 (425|206) (\d{7}) $ 2 sbc3.contoso.com
sbc4.contoso.com
被叫号码的备份路由 +1 425 XXX XX XX 或 +1 206 XXX XX XX
美国和加拿大 “其他 +1” ^\+1 (\d{10}) $ 3 sbc5.contoso.com
sbc6.contoso.com
被叫号码 +1 XXX XXX XX XX (路由,但 +1 425 XXX XX XX 或 +1 206 XXX XX XX)

注意

在呼叫转接或传入 PSTN 呼叫的呼叫转移的情况下,当入口 SBC 也列为潜在的出口 SBC 时,其优先级值将被忽略,并且优先于其他 SBC。 例如,在此表中,如果通过 sbc5.contoso.com 传入了转接的调用,则尝试出口的第一个 SBC 将 sbc5.contoso.com,即使其优先级值为 3 也是如此。

示例 1:配置步骤

以下示例演示如何:

  1. 创建单个 PSTN 用法。
  2. 配置三个语音路由。
  3. 创建语音路由策略。
  4. 将策略分配给 user1@contoso.com。

可以使用 Microsoft Teams 管理中心PowerShell 执行这些步骤。

使用 Microsoft Teams 管理中心

步骤 1:创建“美国和加拿大”PSTN 用法

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 “语音>直接路由”,然后在右上角选择“ 管理 PSTN 使用情况记录”。
  2. 选择“ 添加”,键入 “US”和“加拿大”,然后选择“ 应用”。

步骤 2: (Redmond 1、Redmond 2 和其他 +1) 创建三个语音路由

以下步骤介绍如何创建语音路由。 使用这些步骤使用前面表中概述的设置,为此示例创建名为 Redmond 1、Redmond 2 和 Other +1 的三个语音路由。

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 “语音>直接路由”,然后选择“ 语音路由 ”选项卡。
  2. 选择“ 添加”,然后输入语音路由的名称和说明。
  3. 设置优先级并指定拨号号码模式。
  4. 若要使用语音路由注册 SBC,请在“ 已注册 SBC (可选) ”下,选择“ 添加 SBC”,选择要注册的 SBC,然后选择“ 应用”。
  5. 若要添加 PSTN 使用情况记录,请在“ PSTN 使用情况记录 (可选) ”下,选择“ 添加 PSTN 用法”,选择要添加的 PSTN 记录,然后选择“ 应用”。
  6. 选择“保存”。

步骤 3:创建名为“仅限美国”的语音路由策略,并将“美国和加拿大”PSTN 用法添加到策略

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 “语音>路由策略”,然后选择“ 添加”。
  2. 键入 “仅 US ”作为名称并添加说明。
  3. “PSTN 使用情况记录”下,选择“ 添加 PSTN 使用情况”,选择“美国和加拿大”PSTN 使用情况记录,然后选择“ 应用”。
  4. 选择“保存”。

若要了解详细信息,请参阅 管理语音路由策略

步骤 4:将语音路由策略分配到 user1@contoso.com

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 “用户”,然后选择该用户。
  2. 选择“ 策略”,然后在“ 分配的策略”旁边选择“ 编辑”。
  3. 在“ 语音路由策略”下,选择“仅限美国”策略,然后选择“ 保存”。

若要了解详细信息,请参阅 管理语音路由策略

使用 PowerShell

步骤 1:创建“美国和加拿大”PSTN 用法

在 Teams 中的远程 PowerShell 会话中,键入:

Set-CsOnlinePstnUsage -Identity Global -Usage @{Add="US and Canada"}

通过输入以下命令验证是否已创建使用情况:

Get-CSOnlinePSTNUsage

这会返回可能被截断的名称列表:

Identity    : Global
Usage        : {testusage, US and Canada, International, karlUsage. . .}

以下示例演示运行 (Get-CSOnlinePSTNUsage).usage PowerShell 命令以显示全名的结果, (未截断) :

 testusage
 US and Canada
 International
 karlUsage
 New test env
 Tallinn Lab Sonus
 karlUsage2
 Unrestricted
 Two trunks

步骤 2: (Redmond 1、Redmond 2 和其他 +1) 创建三个语音路由

若要创建“Redmond 1”路由,请在 Teams 的 PowerShell 会话中输入:

New-CsOnlineVoiceRoute -Identity "Redmond 1" -NumberPattern "^\+1(425|206)
(\d{7})$" -OnlinePstnGatewayList sbc1.contoso.com, sbc2.contoso.com -Priority 1 -OnlinePstnUsages "US and Canada"

这将返回:

Identity                : Redmond 1
Priority                : 1
Description             :
NumberPattern           : ^\+1(425|206) (\d{7})$
OnlinePstnUsages        : {US and Canada}
OnlinePstnGatewayList   : {sbc1.contoso.com, sbc2.contoso.com}
Name                    : Redmond 1

若要创建 Redmond 2 路由,请输入:

New-CsOnlineVoiceRoute -Identity "Redmond 2" -NumberPattern "^\+1(425|206)
(\d{7})$" -OnlinePstnGatewayList sbc3.contoso.com, sbc4.contoso.com -Priority 2 -OnlinePstnUsages "US and Canada"

若要创建“其他 +1”路由,请输入:

New-CsOnlineVoiceRoute -Identity "Other +1" -NumberPattern "^\+1(\d{10})$"
-OnlinePstnGatewayList sbc5.contoso.com, sbc6.contoso.com -OnlinePstnUsages "US and Canada"

谨慎

请确保 NumberPattern 属性中的正则表达式是有效的表达式。 可以使用以下网站对其进行测试: https://www.regexpal.com

在某些情况下,需要将所有呼叫路由到同一 SBC;use -NumberPattern “.*”

将所有调用路由到同一 SBC。

Set-CsOnlineVoiceRoute -id "Redmond 1" -NumberPattern ".*" -OnlinePstnGatewayList sbc1.contoso.com

使用选项运行 Get-CSOnlineVoiceRoute PowerShell 命令,验证是否已正确配置路由,如下所示:

Get-CsOnlineVoiceRoute | Where-Object {($_.priority -eq 1) -or ($_.priority -eq 2) or ($_.priority -eq 4) -Identity "Redmond 1" -NumberPattern "^\+1(425|206) (\d{7})$" -OnlinePstnGatewayList sbc1.contoso.com, sbc2.contoso.com -Priority 1 -OnlinePstnUsages "US and Canada"

应返回:

Identity            : Redmond 1 
Priority               : 1
Description         : 
NumberPattern         : ^\+1(425|206) (\d{7})$
OnlinePstnUsages     : {US and Canada}     
OnlinePstnGatewayList    : {sbc1.contoso.com, sbc2.contoso.com}
Name             : Redmond 1
Identity        : Redmond 2 
Priority               : 2
Description         : 
NumberPattern         : ^\+1(425|206) (\d{7})$
OnlinePstnUsages     : {US and Canada}     
OnlinePstnGatewayList    : {sbc3.contoso.com, sbc4.contoso.com}
Name             : Redmond 2
    
Identity        : Other +1 
Priority               : 4
Description         : 
NumberPattern         : ^\+1(\d{10})$
OnlinePstnUsages     : {US and Canada}     
OnlinePstnGatewayList    : {sbc5.contoso.com, sbc6.contoso.com}
Name             : Other +1

在此示例中,路由“Other +1”已自动分配优先级 4。

步骤 3:创建名为“仅限美国”的语音路由策略,并将“美国和加拿大”PSTN 用法添加到策略

在 Teams 中的 PowerShell 会话中,键入:

New-CsOnlineVoiceRoutingPolicy "US Only" -OnlinePstnUsages "US and Canada"

此示例中显示了结果:

Identity            : Tag:US only
OnlinePstnUsages    : {US and Canada}
Description         :
RouteType           : BYOT

步骤 4:将语音路由策略分配到 user1@contoso.com

在 Teams 中的 PowerShell 会话中,键入:

Grant-CsOnlineVoiceRoutingPolicy -Identity "user1@contoso.com" -PolicyName "US Only"

输入以下命令验证策略分配:

Get-CsOnlineUser "user1@contoso.com" | select OnlineVoiceRoutingPolicy

该命令返回以下内容:

OnlineVoiceRoutingPolicy
---------------------
US Only

示例 2:具有多个 PSTN 用法的语音路由

在示例 1 中创建的语音路由策略仅允许呼叫美国和加拿大的电话号码,除非还向用户分配了 Microsoft 通话套餐许可证。

在下面的示例中,可以创建“无限制”语音路由策略。 该策略重复使用在示例 1 中创建的“美国和加拿大”PSTN 用法,以及新的“国际”PSTN 用法。 此策略将所有其他调用路由到 SBC sbc2.contoso.com 和 sbc5.contoso.com。

显示的示例将“仅限美国”策略分配给用户 user1@contoso.com,并将“无限制”策略分配给 user2@contoso.com ,以便按如下所示进行路由:

  • user1@contoso.com – 仅限美国策略。 只能拨打美国和加拿大号码。 调用 Redmond 号码范围时,必须使用特定的 SBC 集。 除非将通话套餐许可证分配给用户,否则不会路由非美国号码。

  • user2@contoso.com – 国际政策。 允许对任意号码进行调用。 调用 Redmond 号码范围时,必须使用特定的 SBC 集。 将使用 sbc2.contoso.com 和 sbc5.contoso.com 路由非美国号码。

显示分配给 的语音路由策略的 user1@contoso.com屏幕截图。

对于所有其他呼叫,如果用户同时具有 (Teams 电话和 Microsoft 通话套餐) 许可证,则使用自动路由。 如果没有任何内容与管理员创建的联机语音路由中的号码模式匹配,则使用 Microsoft 通话套餐路由呼叫。 如果用户只有 Teams 电话,则呼叫将被删除,因为没有可用的匹配规则。

显示分配给 的语音路由策略的 user2@contoso.com屏幕截图。

下表汇总了路由策略“无限制”用法指定和语音路由。

PSTN 用法 语音路由 号码模式 优先级 Sbc 说明
美国和加拿大 “Redmond 1” ^\+1 (425|206) (\d{7}) $ 1 sbc1.contoso.com
sbc2.contoso.com
被调用方号码的活动路由 +1 425 XXX XX XX 或 +1 206 XXX XX XX
美国和加拿大 “Redmond 2” ^\+1 (425|206) (\d{7}) $ 2 sbc3.contoso.com
sbc4.contoso.com
被调用方号码的备份路由 +1 425 XXX XX XX 或 +1 206 XXX XX XX
美国和加拿大 “其他 +1” ^\+1 (\d{10}) $ 3 sbc5.contoso.com
sbc6.contoso.com
被调用方号码 +1 XXX XXX XX XX (路由,但 +1 425 XXX XX XX 或 +1 206 XXX XX XX)
International International \d+ 4 sbc2.contoso.com
sbc5.contoso.com
任何数字模式的路由

注意

  • 语音路由策略中的 PSTN 用法顺序至关重要。 这些用法按顺序应用,如果在第一个用法中找到匹配项,则永远不会评估其他用法。 “国际”PSTN 用法必须放在“美国和加拿大”PSTN 用法之后。 若要更改 PSTN 用法的顺序,请 Set-CSOnlineVoiceRoutingPolicy 运行 命令。
    例如,若要将顺序从“美国和加拿大”和“国际”更改为反向顺序,请运行:
    Set-CsOnlineVoiceRoutingPolicy -id tag:"no Restrictions" -OnlinePstnUsages @{Replace="International", "US and Canada"}
  • 自动分配“其他 +1”和“国际”语音路由的优先级。 只要优先级低于“雷德蒙德 1”和“雷德蒙德 2”,它们就无关紧要。

示例 2:配置步骤

以下示例演示如何:

  1. 创建名为“国际”的新 PSTN 用法。
  2. 创建名为“国际”的新语音路由。
  3. 创建名为“无限制”的语音路由策略。
  4. 将策略分配给 user2@contoso.com。

可以使用 Microsoft Teams 管理中心PowerShell 执行这些步骤。

使用 Microsoft Teams 管理中心

步骤 1:创建“国际”PSTN 用法

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 “语音>直接路由”,然后在右上角选择“ 管理 PSTN 使用情况记录”。
  2. 单击“ 添加”,键入“ 国际”,然后单击“ 应用”。

步骤 2:创建“国际”语音路由

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 “语音>直接路由”,然后选择“ 语音路由 ”选项卡。
  2. 单击“ 添加”,输入“国际”作为名称,然后添加说明。
  3. 将优先级设置为 4,然后将拨号号码模式设置为 \d+。
  4. “已注册的 SBC (可选) ”下,单击“ 添加 SBC”,选择“sbc2.contoso.com 并 sbc5.contoso.com”,然后单击“ 应用”。
  5. “PSTN 使用情况记录 (可选) ”下,单击“ 添加 PSTN 使用情况”,选择“国际”PSTN 用法记录,然后单击“ 应用”。
  6. 单击“保存”。

步骤 3:创建名为“无限制”的语音路由策略,并将“美国和加拿大”和“国际”PSTN 用法添加到策略

在此语音路由策略中重复使用 PSTN 用法“美国和加拿大”,以保留对号码“+1 425 XXX XX XX”和“+1 206 XXX XX XX”作为本地或本地呼叫的呼叫的特殊处理。

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 “语音>路由策略”,然后单击“ 添加”。

  2. 键入 “无限制” 作为名称,并添加说明。

  3. “PSTN 使用情况记录”下,单击“ 添加 PSTN 使用情况”,选择“美国和加拿大”PSTN 使用情况记录,然后选择“国际”PSTN 使用情况记录。 单击“应用”。

    记下 PSTN 用法的顺序:

    • 如果调用号码“+1 425 XXX XX XX”,并按此示例中的用法配置,则调用遵循“美国和加拿大”用法中设置的路由,并应用特殊路由逻辑。 也就是说,首先使用 sbc1.contoso.com 和 sbc2.contoso.com 路由呼叫,然后 sbc3.contoso.com 和 sbc4.contoso.com 作为备份路由。

    • 如果“国际”PSTN 用法位于“美国和加拿大”之前,则对 +1 425 XXX XX XX 的呼叫将路由到 sbc2.contoso.com,sbc5.contoso.com 作为路由逻辑的一部分。

  4. 单击“保存”。

若要了解详细信息,请参阅 管理语音路由策略

步骤 4:将语音路由策略分配到 user2@contoso.com

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 “用户”,然后选择该用户。
  2. 选择“ 策略”,然后在“ 分配的策略”旁边选择“ 编辑”。
  3. 在“ 语音路由策略”下,选择“无限制”策略,然后选择“ 保存”。

结果是,应用于 的呼叫user2@contoso.com的语音策略不受限制,将遵循可用于美国、加拿大和国际呼叫的呼叫路由逻辑。

使用 PowerShell

步骤 1:创建“国际”PSTN 用法

在 Teams 中的远程 PowerShell 会话中,输入:

Set-CsOnlinePstnUsage -Identity Global -Usage @{Add="International"}

步骤 2:创建名为“International”的新语音路由

New-CsOnlineVoiceRoute -Identity "International" -NumberPattern ".*" -OnlinePstnGatewayList sbc2.contoso.com, sbc5.contoso.com -OnlinePstnUsages "International"

这将返回:

Identity                  : International
Priority                  : 5
Description               :
NumberPattern             : .*
OnlinePstnUsages          : {International}
OnlinePstnGatewayList     : {sbc2.contoso.com, sbc5.contoso.com}
Name                      : International

步骤 3:创建名为“无限制”的语音路由策略

在此语音路由策略中重复使用 PSTN 用法“Redmond 1”和“Redmond”,以保留对拨打“+1 425 XXX XX XX”和“+1 206 XXX XX XX”作为本地或本地呼叫的呼叫的特殊处理。

New-CsOnlineVoiceRoutingPolicy "No Restrictions" -OnlinePstnUsages "US and Canada", "International"

请注意 PSTN 用法的顺序:

  • 如果调用号码“+1 425 XXX XX XX”,并配置了以下示例中的用法,则调用将遵循“美国和加拿大”用法中设置的路由,并应用特殊路由逻辑。 也就是说,首先使用 sbc1.contoso.com 和 sbc2.contoso.com 路由呼叫,然后 sbc3.contoso.com 和 sbc4.contoso.com 作为备份路由。

  • 如果“国际”PSTN 用法位于“美国和加拿大”之前,则对 +1 425 XXX XX XX 的呼叫将路由到 sbc2.contoso.com,sbc5.contoso.com 作为路由逻辑的一部分。 输入命令:

New-CsOnlineVoiceRoutingPolicy "No Restrictions" -OnlinePstnUsages "US and Canada", "International"

这将返回:

    Identity              : International 
    OnlinePstnUsages : {US and Canada, International}     
    Description         :  
    RouteType               : BYOT

步骤 4:将语音路由策略分配到 user2@contoso.com

Grant-CsOnlineVoiceRoutingPolicy -Identity "user2@contoso.com" -PolicyName "No Restrictions"

然后使用 命令验证分配:

Get-CsOnlineUser "user2@contoso.com" | Select OnlineVoiceRoutingPolicy

这将返回:

OnlineVoiceRoutingPolicy
------------------------
No Restrictions

结果是,应用于 的呼叫user2@contoso.com的语音策略不受限制,并且将遵循可用于美国、加拿大和国际呼叫的呼叫路由逻辑。

运行自诊断工具

Microsoft 365 管理员用户有权访问可在租户中运行的诊断,以验证用户是否已正确配置直接路由。

注意

此功能不适用于 Microsoft 365 政府版、由世纪互联运营的 Microsoft 365版或 Microsoft 365 德国版。

选择“运行测试”,如下所示。 这将填充Microsoft 365 管理中心中的诊断。

诊断执行大量验证。

另请参阅

规划直接路由

配置直接路由