Configuring call park application

In the previous call park related post, I explained the main scenarios that are covered by call park application. Now, let’s configure this service!
It can hardly get easier than this with the Lync Control Panel: click on the Voice Features folder and then Call Park. At this point you want to click on New.

 

The properties are hopefully straight forward:

-          Name: a unique identifier for your particular orbit range

-          Number range: The minimum and maximum value of the range you want to assign for orbits. The real questions you are asked here are:

  •   How many calls do you expect simultaneously (this will decide of the length of the range)?
  •   Where do you have available extension (this will help you decide of the first value)

-          FQDN of destination server: the fully qualified domain name of the application service (Front End or Front Ends pool) that host call park service.

There are a set of options you cannot control via the Control Panel, for example the custom music on hold (what the parked user will hear), the timeout URI, the maximum pickup attempts and the call pickup threshold can only be defined via PowerShell.

 

If you want to take a more programmatic approach and want to use the Lync Server Management Shell, you also can:

  1. Open the Shell or Import the Lync module to your PowerShell console.
    PS C:\> Import-Module Lync
  2. Get the service identity that host Call Park Service (CPS)
    PS C:\> $serviceId = Get-CSService | ?{$_.Applications -like "*CPS*"}).ServiceId
  3. Enable Call Park feature in voice policy:
    PS C:\> Set-CSVoicePolicy -Identity Global -EnableCallPark $true
  4. Define a custom music on hold to be stream:
    PS C:\> Set-CSCallParkServiceMusicOnHoldFile -Service $serviceId -Content ( gc 'CpsMoh.wma' -ReadCount 0 -Encoding byte)
  5. Define a custom CPS configuration:
    Set-CSCpsConfiguration -OnTimeoutURI sip:pool0_user1@vdomain.com -MaxCallPickupAttempts 1 -CallPickupTimeoutThreshold 00:00:59
  6. Create a new call orbit range:
    New-CSCallParkOrbit -Identity $servicesId[0].ToString() -NumberRangeStart 700 -NumberRangeEnd 899 -CallParkServerFqdn poolfqdn.vdomain.com

At this point you users should start receiving the Call Park Server URI and they should have the option to park call displayed on their Lync client.