创建并管理拨号计划

为组织计划拨号计划并找出需要为语音路由创建的所有规范化规则后,即可创建拨号计划。 使用具有有效 Teams 许可证的管理员帐户,可以使用 Microsoft Teams 管理中心或Windows PowerShell创建和管理拨号计划。

使用 Microsoft Teams 管理中心

创建拨号计划

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 语音>拨号计划

  2. 单击 “添加”,然后输入拨号计划的名称和说明。 显示用于创建拨号计划的“添加”页的屏幕截图。

  3. “拨号计划详细信息”下,如果用户需要拨打一个或多个其他前导数字 (,则指定外部拨号前缀,例如,9) 以获取外部行。 要执行此操作:

    1. “外部拨号前缀 ”框中,输入外部拨号前缀。 前缀最多可以是四个字符 (#,*,0-9) 。
    2. 打开 优化的设备拨号。 如果指定外部拨号前缀,则还必须启用此设置以应用前缀,以便可以在组织外部进行调用。
  4. 根据 规范化规则,为拨号计划配置和关联一个或多个 规范化规则 。 每个拨号计划必须至少有一个与之关联的规范化规则。 为此,请执行以下一个或多个操作:

    • 若要创建新的规范化规则并将其与拨号计划相关联,请单击 “添加”,然后定义规则。
    • 若要编辑已与拨号计划关联的规范化规则,请单击规则名称左侧选择规则,然后单击 “编辑”。 进行所需的更改,然后单击 “保存”。
    • 若要从拨号计划中删除规范化规则,请单击规则名称左侧选择规则,然后单击“ 删除”。
  5. 按所需顺序排列规范化规则。 单击 “向上移动 ”或 “向下移动 ”以更改规则在列表中的位置。

    注意

    Teams 从上到下遍历规范化规则列表,并使用与拨号号码匹配的第一个规则。 如果设置拨号计划以便拨号号码可以与多个规范化规则匹配,请确保将限制性更强的规则排在限制较少的规则之上。 如果设置了一个拨号计划来规范化没有“+”的拨号号码,则呼叫服务将尝试使用租户和区域拨号计划规则再次规范化号码。 为了避免双重规范化,建议所有规范化规则都以“+”开头的数字。 如果需要,直接路由客户可以使用 中继转换 规则删除“+”。

  6. 单击“保存”。

  7. 如果要测试拨号计划,请在 “测试拨号计划”下输入电话号码,然后单击“ 测试”。

编辑拨号计划

  1. 在 Microsoft Teams 管理中心的左侧导航中,转到 语音>拨号计划
  2. 单击拨号计划名称左侧,然后单击“ 编辑”,选择拨号计划。
  3. 进行所需的更改,然后单击 “保存”。

向用户分配拨号计划

你分配拨号计划的方式与分配策略的方式相同。 如果策略类型) 支持,则可以通过批处理分配 (直接向用户分配策略,或者向用户是 (成员的组(如果策略类型支持)直接分配策略) .To 了解可向用户分配策略的不同方式,请参阅 Teams 中的用户分配策略

使用 PowerShell

启动 PowerShell

  • 打开Windows PowerShell命令提示符并运行以下命令:
  # When using Teams PowerShell Module

   Import-Module MicrosoftTeams
   $credential = Get-Credential
   Connect-MicrosoftTeams -Credential $credential

创建和管理拨号计划

你可以使用单个 cmdlet 或 PowerShell 脚本创建和管理租户拨号计划。

使用单个 cmdlet

  • 要创建新的拨号计划,请运行:

    New-CsTenantDialPlan -Identity RedmondDialPlan -Description "Dial Plan for Redmond" -NormalizationRules <pslistmodifier> -ExternalAccessPrefix 9 -SimpleName "Dial-Plan-for-Redmond"
    

    有关其他示例和参数,请参阅 New-CsTenantDialPlan

  • 若要编辑现有拨号计划的设置,请运行:

    Set-CsTenantDialPlan -Identity RedmondDialPlan  -NormalizationRules <pslistmodifier> -ExternalAccessPrefix 9
      -SimpleName "Dial-Plan-for-Redmond"
    

    有关其他示例和参数,请参阅 Set-CsTenantDialPlan

  • 要向拨号计划中添加用户,请运行:

    Grant-CsTenantDialPlan -Identity amos.marble@contoso.com -PolicyName RedmondDialPlan
    

    有关其他示例和参数,请参阅 Grant-CsTenantDialPlan

  • 要查看拨号计划中的设置,请运行:

    Get-CsTenantDialPlan -Identity RedmondDialPlan
    

    有关其他示例和参数,请参阅 Get-CsTenantDialPlan

  • 要删除拨号计划,请运行:

    Remove-CsTenantDialPlan -Identity RedmondDialPlan -force
    

    有关其他示例和参数,请参阅 Remove-CsTenantDialPlan

  • 要查看有效拨号计划的设置,请运行:

    Get-CsEffectiveTenantDialPlan -Identity amos.marble@contoso.com
    

    有关其他示例和参数,请参阅 Get-CsEffectiveTenantDialPlan

  • 要测试拨号计划的有效设置,请运行:

    Test-CsEffectiveTenantDialPlan -DialedNumber 14255550199 -Identity amos.marble@contoso.com
    

    有关其他示例和参数,请参阅 Test-CsEffectiveTenantDialPlan

使用 PowerShell 脚本

运行此命令可删除与租户拨号计划关联的规范化规则,而无需先删除租户拨号计划:

$b1=New-CsVoiceNormalizationRule -Identity Global/NR4 -InMemory
Set-CsTenantDialPlan -Identity RedmondDialPlan -NormalizationRules @{add=$b1}
(Get-CsTenantDialPlan -Identity RedmondDialPlan).NormalizationRules
$b2=New-CsVoiceNormalizationRule -Identity Global/NR4 -InMemory
Set-CsTenantDialPlan -Identity RedmondDialPlan -NormalizationRules @{remove=$b2}

运行此脚本即可将下列规范化规则添加到名为 RedmondDialPlan 的现有租户拨号计划中。

$nr1=New-CsVoiceNormalizationRule -Parent Global -Description 'Organization extension dialing' -Pattern '^(\\d{3})$' -Translation '+14255551$1' -Name NR1 -IsInternalExtension $false -InMemory
Set-CsTenantDialPlan -Identity RedmondDialPlan -NormalizationRules @{add=$nr1}

运行此脚本即可将下列规范化规则从名为 RedmondDialPlan 的现有租户拨号计划中删除。

$nr1=New-CsVoiceNormalizationRule -Parent Global/NR1 -InMemory
Set-CsTenantDialPlan -Identity RedmondDialPlan -NormalizationRules @{remove=$nr1}

如果还想要检查现有规范化规则,确定要删除哪个规则,然后使用其索引将其删除,请运行以下命令。 该组规范化规则以索引 0 开头。 我们要删除 3 位数的规范化规则,则索引为 1。

Get-CsTenantDialPlan RedmondDialPlan).NormalizationRules
Description         : 4-digit
Pattern             : ^(\\d{4})$
Translation         : +1426666$1
Name                : NR2
IsInternalExtension : False

Description         : 3-digit
Pattern             : ^(\\d{3})$
Translation         : +14255551$1
Name                : NR12
IsInternalExtension : False

$nr1=(Get-CsTenantDialPlan RedmondDialPlan).NormalizationRules[1]
Set-CsTenantDialPlan -Identity RedmondDialPlan -NormalizationRules @{remove=$nr1}

运行此脚本即可找出所有已取得 RedmondDialPlan 租户拨号计划授权的用户。

Get-CsOnlineUser | Where-Object {$_.TenantDialPlan -eq "RedmondDialPlan"}

运行此命令可从具有 sipfed.online.lync.com HostingProvider 的所有用户中删除任何分配的 TenantDialPlan。

Get-CsOnlineUser -Filter {HostingProvider -eq "sipfed.online.lync.com"} | Grant-CsTenantDialPlan -policyname $null

运行这些脚本可为你的组织将名为 OPDP1 的本地拨号计划添加为租户拨号计划。 需要先将本地拨号计划保存到.xml文件,然后使用它创建新的租户拨号计划。

运行此操作可将本地拨号计划保存到.xml文件。

$DPName = "OPDP1"
$DPFileName = "dialplan.xml"
Get-CsDialplan $DPName | Export-Clixml $DPFileName

运行此脚本创建新的租户拨号计划。

$DPFileName = "dialplan.xml"
$dp = Import-Clixml $DPFileName
$NormRules = @()
ForEach($nr in $dp.NormalizationRules)
{
 $id1 = "Global/" + $nr.Name
 $nr2 = New-CsVoiceNormalizationRule -Identity $id1 -Description $nr.Description -Pattern $nr.Pattern -Translation $nr.Translation -IsInternalExtension $nr.IsInternalExtension -InMemory
 $NormRules += $nr2
}
New-CsTenantDialPlan -Identity $dp.SimpleName -ExternalAccessPrefix $dp.ExternalAccessPrefix -Description $dp.Description -OptimizeDeviceDialing $dp.OptimizeDeviceDialing -SimpleName $dp.SimpleName -NormalizationRules $NormRules