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 参数进行永久性更改。