Set-CsVoiceRoute
上一次修改主题: 2012-03-25
修改语音路由。语音路由包含一些说明,指示 Microsoft Lync Server 2010 如何将来自企业语音用户的呼叫路由到公用电话交换网 (PSTN) 或专用交换机 (PBX) 上的电话号码。
语法
Set-CsVoiceRoute [-Identity <XdsGlobalRelativeIdentity>] [-AlternateCallerId <String>] [-Confirm [<SwitchParameter>]] [-Description <String>] [-Force <SwitchParameter>] [-NumberPattern <String>] [-Priority <Int32>] [-PstnGatewayList <PSListModifier>] [-PstnUsages <PSListModifier>] [-SuppressCallerId <Nullable>] [-WhatIf [<SwitchParameter>]]
Set-CsVoiceRoute [-AlternateCallerId <String>] [-Confirm [<SwitchParameter>]] [-Description <String>] [-Force <SwitchParameter>] [-Instance <PSObject>] [-NumberPattern <String>] [-Priority <Int32>] [-PstnGatewayList <PSListModifier>] [-PstnUsages <PSListModifier>] [-SuppressCallerId <Nullable>] [-WhatIf [<SwitchParameter>]]
详细说明
使用此 cmdlet 可修改现有的语音路由。语音路由通过公用电话交换网 (PSTN) 用法与语音策略相关联。语音路由包括一个正则表达式,用于标识要通过给定语音路由进行路由的电话号码:与该正则表达式匹配的电话号码将通过该路由进行路由。
谁能运行此 cmdlet:默认情况下,以下各组的成员有权在本地运行 Set-CsVoiceRoute cmdlet:RTCUniversalServerAdmins。要返回分配了此 cmdlet 的所有基于角色的访问控制 (RBAC) 角色列表(包括您自己创建的任何自定义 RBAC 角色),请从 Windows PowerShell 提示符处运行以下命令:
Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Set-CsVoiceRoute"}
参数
参数 | 必需 | 类型 | 描述 |
---|---|---|---|
Identity |
可选 |
Xds 标识 |
语音路由的唯一标识。(如果路由名称中包含空格,例如“Test Route”,则必须用圆括号将整个字符串括起来。) |
Instance |
可选 |
路由 |
允许您将对对象的引用传递到 cmdlet,而不是设置单个参数值。 此对象的类型必须是 Microsoft.Rtc.Management.WritableConfig.Policy.Voice.Route,并且可以通过调用 Get-CsVoiceRoute 进行检索。 |
AlternateCallerId |
可选 |
字符串 |
如果 SuppressCallerId 参数设置为 True,会将 AlternateCallerId 参数的值显示给接收方,而不是呼叫者的实际号码。该号码应该是一个有效的号码,可以用来代表组织中的部门,例如技术支持部或人力资源部。 如果 SuppressCallerId 参数设置为 False,则将忽略 AlternateCallerId 参数。 该值必须与正则表达式 (\+)?[1-9]\d*(;ext=[1-9]\d*)? 匹配。换句话说,该值可以(但非必须)以一个加号 (+) 开头;必须包含任意位数字;可后跟一个由 ;ext= 开头并后接任意位数字的分机。(请注意,如果要包含一个分机,则必须用双引号将字符串括起来。) |
Description |
可选 |
字符串 |
该电话路由用途的描述。 |
NumberPattern |
可选 |
字符串 |
用于指定应用该路由的电话号码的正则表达式。将根据其余路由设置对与此模式匹配的号码进行路由。例如,默认号码模式 [0-9]{10} 指定一个由数字 0-9 组成的 10 位数号码。 |
Priority |
可选 |
Int32 |
数字可以解析为多个语音路由。如果可能有多个路由,则优先级确定将应用路由的顺序。 |
PstnGatewayList |
可选 |
PSListModifier |
一个 中介服务器 可以与多个网关关联。该参数包含由与此语音路由关联的网关组成的列表。该列表的每个成员必须是 PSTN 网关或 中介服务器 的服务标识。仅当为 Microsoft Office Communications Server 2007 或 Microsoft Office Communications Server 2007 R2 配置中介服务器时,该值才可以引用中介服务器。对于 Lync Server 2010,必须使用 PSTN 网关。服务标识是一个格式为 ServiceRole:FQDN 的字符串,其中 ServiceRole 是服务角色的名称 (PSTNGateway),FQDN 是池的完全限定域名 (FQDN) 或服务器的 IP 地址。例如,PSTNGateway:redmondpool.litwareinc.com。通过调用命令 Get-CsService | Select-Object Identity 可以检索服务标识。 如果更改语音路由并将 PstnGatewayList 列表留空,或者所做的更改会删除该列表中的所有项,您将收到警告消息,提示您用户将无法进行 PSTN 呼叫。 |
PstnUsages |
可选 |
可应用到该语音路由的 PSTN 用法(如 Local 或 Long Distance)的列表。PSTN 用法必须是现有用法。(可以通过调用 Get-CsPstnUsage cmdlet 来检索 PSTN 用法。) 如果更改语音路由并将 PstnUsages 列表留空,或者所做的更改会删除该列表中的所有 PSTN 用法,您将收到警告消息,提示您用户将无法进行 PSTN 呼叫。 |
|
SuppressCallerId |
可选 |
布尔值 |
确定是否在出站呼叫中显示呼叫者的 ID。如果此参数设置为 True,将隐藏呼叫者 ID。将在实际 ID 的位置显示 AlternateCallerId 的值。当 SuppressCallerId 设置为 True 时,必须为 AlternateCallerId 提供值。 |
Confirm |
可选 |
开关参数 |
在执行命令之前提示您进行确认。 |
Force |
可选 |
开关参数 |
在进行更改前取消可能另外显示的任何确认提示。 |
WhatIf |
可选 |
开关参数 |
描述如果执行命令会发生什么情况(无需实际执行命令)。 |
输入类型
Microsoft.Rtc.Management.WritableConfig.Policy.Voice.Route 对象。接受通过管道传递的语音路由对象的输入。
返回类型
Set-CsVoiceRoute 不会返回值或对象。此 cmdlet 会配置 Microsoft.Rtc.Management.WritableConfig.Policy.Voice.Route 对象的实例。
示例
-------------------------- 示例 1 --------------------------
Set-CsVoiceRoute -Identity Route1 -Description "Test Route"
此命令将语音路由 Route1 的 Description 设置为“Test Route”。
-------------------------- 示例 2 --------------------------
Set-CsVoiceRoute -Identity Route1 -PstnUsages @{add="Long Distance"}
此示例中的命令修改标识为 Route1 的语音路由,以将 PSTN 用法 Long Distance 添加到此语音路由的用法列表中。Long Distance 必须在全局 PSTN 用法列表中(可以通过调用 Get-CsPstnUsage 检索该列表)。
-------------------------- 示例 3 --------------------------
$x = (Get-CsPstnUsage).Usage
Set-CsVoiceRoute -Identity Route1 -PstnUsages @{replace=$x}
此示例修改名为 Route1 的语音路由,并使用组织的所有现有用法来填充该路由的 PSTN 用法列表。此示例中的第一个命令可检索全局 PSTN 用法的列表。请注意,对 Get-CsPstnUsage 的调用位于括号中,这意味着将首先检索包含 PSTN 用法信息的对象。(由于只有一个全局 PSTN 用法,因此只会检索一个对象。)然后,该命令检索此对象的 Usage 属性。该属性(包含 PSTN 用法列表)将被分配给变量 $x。在此示例的第二行中,调用 Set-CsVoiceRoute 以修改标识为 Route1 的语音路由。请注意传递给 PstnUsages 参数的值:@{replace=$x}。此值表示使用 $x 的内容替换该路由的 PstnUsages 列表中的所有内容,$x 包含在第 1 行中检索到的 PSTN 用法列表。
-------------------------- 示例 4 --------------------------
$x = Get-CsVoiceRoute -Identity Route1
$x.Name = "RouteA"
Set-CsVoiceRoute -Instance $x
这组命令将标识为 Route1 的语音路由的 Name 属性更改为 RouteA。更改 Name 属性将自动更改 Identity 属性,在此示例中,更改为 RouteA。
在第一行中,调用 Get-CsVoiceRoute 以检索标识为 Route1 的语音路由。返回的对象存储在变量 $x 中。接下来,为该对象的 Name 属性分配字符串值“RouteA”。最后,将该对象(包含在变量 $x 中)传递到 Set-CsVoiceRoute 的 Instance 参数,以执行更改。
-------------------------- 示例 5 --------------------------
$y = Get-CsVoiceRoute -Identity Route1
$y.PstnGatewayList.Add("PstnGateway:192.168.0.100")
Set-CsVoiceRoute -Instance $y
此示例修改名为 Route1 的语音路由,并使用标识为 PstnGateway:192.168.0.100 的网关的服务器角色来填充该路由的 PSTN 网关列表 (PstnGatewayList)。在此示例的第一行中,调用 Get-CsVoiceRoute 检索要修改的语音路由,在此示例中为 Route1。接下来,针对 Route1 的 PstnGatewayList 属性调用 Add 方法。将要添加的服务的 Identity 传递给 Add 方法。最后,调用 Set-CsVoiceRoute,将变量 $y 传递给 Instance 参数,该变量会使用新添加的 PSTN 网关更新 Route1(存储在 $y 中)。