This post provides 5 useful tips I found while recently configuring Lync inbound and outbound PSTN calling through an AudioCodes voice gateway – including some new features in Lync that made the job easier.
Tip #1: Use the new ‘Test Voice Routing’ Feature in the Lync Control Panel
The Test Voice Routing feature (in the “Voice Routing” section of the Lync Control Panel) is a very helpful tool for configuring outbound routing.
You can specify a sample number to dial, along with which dial plan and voice route that will process the call. You can then see what the normalized number looks like and whether it matched the PSTN usage and voice route that you expected. You can save these scenarios as test cases and re-run them after you make configuration changes.
Tip #2: Use the new PSTN Test Cmdlet’s
Lync server ships with a set of PSTN Connectivity Cmdlet’s. Several of these cmdlet’s can be used to test the Lync configuration and ability to make calls.
The Test-CsPstnOutboundCall cmdlet is particularly useful for testing outbound PSTN calling. It saves having to jump out-of-context from your Lync server to make a test call with the Lync client (or device) to ensure everything is configured correctly on the Front-End and Mediation server.
Here’s a sample run of the cmdlet:
> $cred1 = Get-Credential “ExampleDomain\User01″
> Test-CsPstnOutboundCall -TargetFqdn Pool01.example.com -TargetPstnPhoneNumber “+16135551234″ –UserSipAddress “sip:User01@example.com” -UserCredential $cred1
TargetFqdn : Pool01.example.com
Result : Success
Latency : 00:00:00.4362018
The test cmdlet’s are synthetic transactions that can be scheduled to help monitor the PSTN connectivity.
Tip #3: Use the Get-CsWindowsService Cmdlet to See the Current Activity on the Lync Mediation Role
The Get-CsWindowsService Cmdlet returns an ActivityLevel value which can be used to see the current number of outbound and inbound calls on a Mediation server. This is handy and a quick way to see if a call is currently being processed by the mediation server.
Sample cmdlet run:
> Get-CsWindowsService -Name RTCMEDSRV -ComputerName MEDSERVER01 | fl -property ActivityLevel
> ActivityLevel : Current Outbound Calls=0, Current Inbound Calls=0, Current Outbound Priority Calls=0, Current Inbound Priority Calls=0
Tip #4: Use Snooper.exe Version 4 from the New Lync Resource Kit to View the Call Logs on the Lync Mediation Server
The Lync resource kit was released on November 18, 2010: Microsoft Lync Server 2010 Resource Kit Tools.
It includes a version of Snooper.exe that can be used to analyze the call log files on the Lync Mediation server.
Tip #5: Consider Creating a Static Route if you are Getting a “503 Service Unavailable” because the “Gateway peer in outbound call is not found in topology document”
If you are getting this error, consider creating a static phone route with the ReplaceHost parameter. In a nutshell, depending on your outbound calling scenario, the host portion of the SIP INVITE that is sent to the Mediation server might contain a domain name and not IP address of the Voice Gateway. The domain name isn’t a part of the Topology, hence the error the “Gateway peer in outbound call is not found in topology document”. The ReplaceHost parameter used in the New-CsStaticRoute cmdlet will replace the host portion with the actual next hop destination – the voice gateway – which is part of the topology.
Tom Pacyk does a good job explaining this in the context of Dial-In conferencing, but it could apply in other outbound routing situations: Lync Dial-In Conferencing Static Route Configuration.
Bonus Tip: Remember that inbound caller-id numbers are governed by the translations rules in the Global Dial-Plan, or the a Dial Plan created specifically for that voice gateway.