Set-CsVoiceNormalizationRule

 

上一次修改主题: 2012-03-27

修改语音规范化规则。语音规范化规则用于将电话拨号要求(例如,拨 9 可接入外线)转换为可供 Microsoft Lync Server 2010 使用的 E.164 电话号码格式。

语法

Set-CsVoiceNormalizationRule [-Identity <XdsIdentity>] [-Confirm [<SwitchParameter>]] [-Description <String>] [-Force <SwitchParameter>] [-IsInternalExtension <$true | $false>] [-Pattern <String>] [-Priority <Int32>] [-Translation <String>] [-WhatIf [<SwitchParameter>]]

Set-CsVoiceNormalizationRule [-Confirm [<SwitchParameter>]] [-Description <String>] [-Force <SwitchParameter>] [-Instance <PSObject>] [-IsInternalExtension <$true | $false>] [-Pattern <String>] [-Priority <Int32>] [-Translation <String>] [-WhatIf [<SwitchParameter>]]

详细说明

此 cmdlet 可修改命名语音规范化规则。这些规则是电话授权和呼叫路由所必需的部分。它们定义了将号码从内部 Lync Server 2010 格式转换为标准 (E.164) 格式的要求。了解正则表达式对定义要转换的号码模式会有所帮助。

使用此 cmdlet 修改的规则是拨号计划的一部分,这些规则不仅可以通过 Get-CsVoiceNormalizationRule cmdlet 访问,还可以通过调用 Get-CsDialPlan cmdlet 时所返回的 NormalizationRules 属性进行访问。

谁能运行此 cmdlet:默认情况下,以下各组的成员有权在本地运行 Set-CsVoiceNormalizationRule cmdlet:RTCUniversalServerAdmins。要返回分配了此 cmdlet 的所有基于角色的访问控制 (RBAC) 角色列表(包括您自己创建的任何自定义 RBAC 角色),请从 Windows PowerShell 提示符处运行以下命令:

Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Set-CsVoiceNormalizationRule"}

参数

参数 必需 类型 描述

Identity

可选

Xds 标识

规则的唯一标识符。指定的 Identity 必须包含作用域,后跟一个斜线,然后是名称;例如:site:Redmond/Rule1,其中 site:Redmond 是作用域,而 Rule1 是名称。

Instance

可选

NormalizationRule

允许您将对对象的引用传递到 cmdlet,而不是设置单个参数值。 此对象必须为 NormalizationRule 类型,并且可以通过调用 Get-CsVoiceNormalizationRule 来检索

Description

可选

字符串

规范化规则的易懂描述。

最大字符串长度:512 个字符。

IsInternalExtension

可选

布尔值

如果值为 True,则应用此规则产生的号码为企业内部号码。如果值为 False,则应用此规则将产生外部号码。如果关联的拨号计划的 OptimizeDeviceDialing 属性值设置为 False,则会忽略此值。

Priority

可选

Int32

规则应用的顺序。一个号码可能匹配多个规则。此参数设置了针对该号码测试这些规则时所采用的顺序。

Pattern

可选

字符串

一个正则表达式,所拨号码必须与该表达式匹配才能应用该规则。

Translation

可选

字符串

将应用于号码以便将其转换为 E.164 格式的正则表达式模式。

Force

可选

开关参数

在进行更改前取消可能另外显示的任何确认提示。

WhatIf

可选

开关参数

描述如果执行命令会发生什么情况(无需实际执行命令)。

Confirm

可选

开关参数

在执行命令之前提示您进行确认。

输入类型

Microsoft.Rtc.Management.WritableConfig.Policy.Voice.NormalizationRule 对象。接受通过管道传递的语音规范化规则对象的输入。

返回类型

Set-CsVoiceNormalizationRule 不会返回值或对象。此 cmdlet 会配置 Microsoft.Rtc.Management.WritableConfig.Policy.Voice.NormalizationRule 对象的实例。

示例

-------------------------- 示例 1 --------------------------

Set-CsVoiceNormalizationRule -Identity "site:Redmond/Prefix Redmond" -Description "Add a prefix to all numbers on site Redmond"

此示例将站点 Redmond 上的 Prefix Redmond 规则的描述设置为“Add a prefix to all numbers on site Redmond”。

-------------------------- 示例 2 --------------------------

Set-CsVoiceNormalizationRule -Identity global/SeattleFourDigit -Description "Translate an internal four-digit extension" -Translation '+1206556$1'

此示例修改 Identity 为 global/SeattleFourDigit 的语音规范化规则。指定了一个新的 Description 以反映对规则所做的修改。此外,指定了一个 Translation 值以修改规则,以便将与此规则的现有模式匹配的所有号码转换为带有前缀 +1206556 的同一号码。例如,如果现有模式与任何四位号码相匹配,而输入的号码为 1234,则此规则会将该分机转换为号码 +12065561234。

-------------------------- 示例 3 --------------------------

$a = Get-CsVoiceNormalizationRule -Identity global/RedmondFourDigit
$a.name = "RedmondRule"
Set-CsVoiceNormalizationRule -Instance $a

示例 3 更改规范化规则的名称。请记住,更改规范化规则的名称也会更改 Identity 的名称部分。Set-CsVoiceNormalizationRule cmdlet 没有 Name 参数,因此为了更改名称,首先调用 Get-CsVoiceNormalizationRule 检索 Identity 为 global/RedmondFourDigit 的规则,并将返回的对象分配给变量 $a。然后将字符串 RedmondRule 分配给该对象的 Name 属性。接下来,将该变量传递到 Set-CsVoiceNormalizationRule 的 Instance 参数进行永久性更改。