Condividi tramite


Test-CsVoiceRoute

 

Ultima modifica dell'argomento: 2012-03-26

Prova un numero telefonico rispetto ad un formato numero di route vocale e restituisce un valore booleano (true/false) che indica se il numero fornito corrisponde al formato numero della route. Il formato numero è solo una delle proprietà utilizzate dalle route vocali per comunicare a Microsoft Lync Server 2010 come instradare le chiamate effettuate da utenti di VoIP aziendale a numeri di telefono della rete PSTN (Public Switched Telephone Network) o di un centralino (PBX, Private Branch Exchange).

Sintassi

Test-CsVoiceRoute -Route <Route> -TargetNumber <PhoneNumber> [-Force <SwitchParameter>]

Descrizione dettagliata

Una route vocale include un'espressione regolare che identifica quali numeri di telefono saranno instradati attraverso una route vocale specifica: i numeri di telefono corrispondenti all'espressione regolare saranno instradati attraverso questa route. Questo cmdlet verifica se un determinato numero di telefono verrà instradato su una route vocale specifica in base al formato del numero della route (la proprietà NumberPattern). Questo cmdlet può essere utilizzato per la risoluzione dei problemi di routing o semplicemente per testare numeri di telefono rispetto a route specifiche per essere certi di ottenere i risultati desiderati.

Utenti autorizzati a utilizzare questo cmdlet: per impostazione predefinita, il cmdlet Test-CsVoiceRoute può essere utilizzato localmente dai membri dei seguenti gruppi: RTCUniversalServerAdmins. Per ottenere un elenco di tutti i ruoli RBAC (controllo dell'accesso basato sui ruoli) a cui è stato assegnato questo cmdlet (inclusi eventuali ruoli RBAC personalizzati), utilizzare il seguente comando dal prompt di Windows PowerShell:

Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Test-CsVoiceRoute"}

Parametri

Parametro Obbligatorio Tipo Descrizione

Route

Obbligatorio

Route

Un oggetto contenente un riferimento alla route vocale su cui si desidera testare il numero specificato nel parametro DialedNumber. Per recuperare un oggetto route vocale, utilizzare il cmdlet Get-CsVoiceRoute.

Tipo di dati completi: Microsoft.Rtc.Management.WritableConfig.Policy.Voice.Route

TargetNumber

Obbligatorio

PhoneNumber

Il numero di telefono su cui si desidera testare la route vocale specificata nel parametro Route. Questo numero deve essere nel formato E.164 (come +14255551212).

Tipo di dati completi: Microsoft.Rtc.Management.Voice.PhoneNumber

Force

Facoltativo

Parametro opzionale

Consente di evitare la visualizzazione di prompt di conferma o messaggi di errore non irreversibile che possono verificarsi quando si esegue il cmdlet.

Tipi di input

Oggetto Microsoft.Rtc.Management.WritableConfig.Policy.Voice.Route. Accetta l'input tramite pipeline di un oggetto route vocale.

Tipi restituiti

Restituisce un oggetto di tipo Microsoft.Rtc.Management.Voice.VoiceRouteTestResult.

Esempio

-------------------------- Esempio 1 --------------------------

$vr = Get-CsVoiceRoute -Identity testroute
Test-CsVoiceRoute -TargetNumber "+14255551212" -Route $vr

Questo comando determina se un dato numero corrisponde al formato di una specifica route. Innanzitutto viene utilizzato il cmdlet Get-CsVoiceRoute per recuperare il testroute della route vocale. Quella route viene utilizzata come valore per il parametro Route del cmdlet Test-CsVoiceRoute. Viene anche incluso il numero da testare nel parametro TargetNumber. L'output è un valore booleano che indica se il numero corrisponde al formato di quella route.

-------------------------- Esempio 2 --------------------------

Get-CsVoiceRoute -Identity testroute | Test-CsVoiceRoute -TargetNumber "+14255551212"

L'Esempio 2 esegue le stesse azioni dell'Esempio 1. Tuttavia in questo esempio l'azione viene compiuta con un singolo comando. Innanzitutto viene utilizzato il cmdlet Get-CsVoiceRoute per recuperare la route vocale con identità testroute. Quella route vocale viene poi inviata tramite pipe al cmdlet Test-CsVoiceRoute e testata rispetto al numero specificato nel parametro TargetNumber. Si noti che non è necessario specificare il parametro Route perché la route è stata inviata al cmdlet tramite pipe.

-------------------------- Esempio 3 --------------------------

Get-CsVoiceRoute | Test-CsVoiceRoute -TargetNumber "+14255551212"

In questo esempio viene recuperata una raccolta di tutte le route vocali definite in una distribuzione Lync Server 2010 e testato il formato numero di ciascuna route rispetto al valore TargetNumber specificato nel cmdlet Test-CsVoiceRoute. L'output può essere un valore True o False per ciascuna route testata.

-------------------------- Esempio 4 --------------------------

$z = Get-CsVoiceRoute
foreach ($x in $z){$x.Identity; Test-CsVoiceRoute -TargetNumber "+14255551212" -Route $x}

Questo esempio è simile all'Esempio 3 in cui si recuperano i risultati di un test di route vocale eseguito su più route. Tuttavia, l'output dell'Esempio 3 sarà un semplice elenco di valori True/False, privi di una chiara indicazione a quale route si riferisce il test. Questo esempio risolve il problema. Esistono altre azioni che possono essere intraprese per abbellire l'output ma questo breve esempio, se non altro, raggiunge lo scopo.

Innanzitutto viene utilizzato il cmdlet Get-CsVoiceRoute per recuperare tutte le route vocali e assegnare la raccolta alla variabile $z. Nella riga successiva si avvia un ciclo Foreach. Questo ciclo prende ciascun membro della raccolta uno alla volta e lo assegna alla variabile $x. La variabile $x, che contiene un riferimento ad una singola route, viene utilizzata per prima cosa per visualizzare l'identità di quella route: $x.Identity. La parte successiva del comando consiste nell'utilizzare il cmdlet Test-CsVoiceRoute dove la route $x viene testata rispetto al numero di destinazione. L'output sarà un elenco (non formattato molto bene) di identità di route vocali seguito da un indicatore true/false che indica se il numero di destinazione corrisponde o meno al formato numero della route con quella identità.