Knowlege base

HA and Call Survivability

Article ID: 94
Last updated: 12 Dec, 2016

CuCM HA and Call Survivability Configuration for Queue Manager Enterprise

Call Survivability configuration allows you to re-route phone calls to another destination when Queue Manager Enterprise is not available, for example in case of network problems.

HA configuration must be used to configure re-routing from one node to other nodes in cluster installations.

The configuration procedure is the same, with few differences. A configuration with two nodes is detailed in this page.

This configuration applies to CuCM 8.6 and later. The procedure for earlier versions is similar. Please ask Imagicle Support if you need the details.

1. Partition

Create a new partition named PT_Imagicle_QME_Failover. This will contain the routes to handle incoming calls in survivability mode (when both Imagicle servers are unavailable).

2. Calling Search Space

Create two new CSS:

  1. CSS_Imagicle_QME, used by the QME SIP trunks, that must be able to reach:
    1. All QME agent phones
    2. All QME queues (for Queue-to-Queue call transfers)
    3. If needed, other destination phone numbers engaged by QME queues/scripts
  2. CSS_Imagicle_QME_Failover, used to handle calls in survivability mode, that is, loopback calls triggered when both Imagicle servers are down. It only needs to include the partition PT_Imagicle_QME_Failover.

3. SIP Trunk Security Profile

Create a new ad-hoc SIP Trunk Security Profile (CM Admin: System --> Security --> SIP Trunk Security Profile), in this way:

Name: Imagicle_QME_SIP_Security_Profile
Incoming Transport Type: TCP + UDP
Outgoing Transport Type: UDP
Incoming Port: 5062
Enable Digest Authentication: disabled
Enable Application Authorization: disabled
Accept Out-of-Dialog REFER: enabled
Accept Unsolicited Notification: enabled
Accept Replaces Header: enabled

4. SIP Profile

Create a new ad-hoc SIP Profile (CM Admin: Device --> Device Settings --> SIP Profile), in this way:

Imagicle_QME_SIP_Profile
Redirect by Application: enabled
Parameters used in Phone

Timer T1 (msec) 250
Retry INVITE 3

SIP OPTIONS Ping
Enable OPTIONS Ping to monitor destination status for Trunks with Service Type "None (Default)" enabled
Ping Interval for In-service and Partially In-service Trunks (seconds) 30
Ping Interval for Out-of-service Trunks (seconds) 15
Ping Retry Timer (milliseconds) 500
Ping Retry Count 3

SIP Trunks

At least 3 SIP trunks are needed. Details following.

QME Trunks

Create a SIP trunk for the primary QME server, named "Imagicle_QME_Primary_SIP_Trunk" and one for the backup server (if existing) named "Imagicle_QME_Backup_SIP_Trunk".
Both of them must have the following settings:

Device Information
Device pool: Any
Call classification: OnNet
Run On All Active Unified CM Nodes: enabled
Outbound calls
Redirecting Diversion Header Delivery - Outbound: enabled
Calling Party Selection: Originator
Inbound calls
Redirecting Diversion Header Delivery - Inbound: enabled
Calling Search Space: A CSS suitable to reach agents phones and the QME Trunk itself
SIP Information
Destination Address: IP address of the Imagicle server (IPv4)
Destination Port*: 5062
Out of Dialog Refer CSS: CSS_Imagicle_QME
SIP Trunk Security Profile: Imagicle_QME_SIP_Security_Profile
SIP Profile: Imagicle_QME_SIP_Profile
Rerouting Calling Search Space: CSS_Imagicle_QME

* Please, notice the Destination port points to UDP port 5062 of the Imagicle server.

Failover Trunk

This loopback SIP trunk is used for call survivability, to handle incoming calls when both Imagicle server are down/unreachable. It allows calls to re-enter the CUCM and trigger a failover (backup) phone number just to avoid to loose calls.

Create a SIP trunk with following settings:

Name Imagicle_SIP_TRUNK_FAILOVER
Device pool: Any
Call classification: OnNet
Run On All Active Unified CM Nodes (CUCM 8.X and later): enabled
Inbound calls
Redirecting Diversion Header Delivery - Inbound: enabled
Calling Search Space: CSS_Imagicle_QME_Failover
Prefix DN: <EMPTY>
SIP Information
Destination Address:

IP address CM Sub 1
IP address CM Sub 2
IP address CM Sub 3

Specify here a list of CUCM nodes having the "CallManager" service running (normally subscriber does)

Destination Port: 5060
Out of Dialog Refer CSS: none
SIP Trunk Security Profile: Non Secure SIP Trunk Profile
SIP Profile: Imagicle_QME_SIP_Profile
Rerouting Calling Search Space: none

6. Route Group

Create a RouteGroup for QME SIP Trunks and a Route Group for failover (call survivability):

QME instances Route Group

This route group engages the 2 Imagicle servers top-down:

Name: RG_Imagicle_QME_Servers
Distribution Algorithm: Top Down
Selected Devices (ordered by priority):
  • Imagicle_QME_Primary_SIP_Trunk
  • Imagicle_QME_Backup_SIP_Trunk

Failover Route Group

This route group contains the Loopback Failover SIP Trunk:

Name: RG_Imagicle_QME_Failover
Distribution Algorithm: Top Down
Selected Devices (ordered by priority): Imagicle_SIP_TRUNK_FAILOVER

7. Route List

Create a new Route List including the Route Groups you just created:

Name: RL_Imagicle_QME
CM Group: Any
Enable this RouteList: enabled
Run on All Active Unified CM Nodes: enabled
Members:
  • RG_Imagicle_QME_Servers
  • RG_Imagicle_QME_Failover

8. Route Pattern(s)

A route pattern is needed to route incoming calls to the Queue Manager Enterprise. The route pattern pointing the RouteList RL_Imagicle_QME should be defined accordingly with the PBX numbering plan and with the queues phone numbers. For example, defining a route pattern 6XXX will allow to manage queues with phone number 6801, 6802, etc..

Please remember that:

  • The route patterns and the other rules which send calls to QME should never transform the called party number. This way QME will be able to tell which calls are coming back from the operators or other queues.
  • At least one route pattern should be dedicated for the Camp-On queues

9. Backup Numbers (calls survivability)

When both Imagicle server are down or unreachable, incoming traffic is rerouted by the Route List to the loopback SIP Trunk. The call re-enters the UCM in the PT_Imagicle_QME_Failover partition. In such partition you must define your backup routes to handle incoming call. Most probably you need to define in this partition a Translation Pattern for each QME queue number. For instance, to redirect incoming calls for ACD queue 8501 to the backup extension number 201 (phoneset or hunt pilot), you need to create a Translation Pattern with Called Party Number Transformation 8501 --> 201.

Testing the HA PBX configuration

Single-Server Deployment - Call Survivability Test

The following procedure allows you to test the call survivability configuration. With one server, you just have to test this.

  1. Log into the IAS web interface as administrator and stop the Queue Manager service
  2. Place a call to each Queue pilot number from the PSTN. For internal queues, place the call from an internal extension
  3. For each queue, verify the incoming call is routed by CUCM to the expected backup DN (which could be a simple extension, hunt pilot or other)

HA Deployment (2 Imagicle servers) Failover Test

In cluster installations with two or more servers, you should test both failover to the backup node and call survivability.

To test failover:

  1. Stop the Queue Manager Enterprise service on the first server. Keep it running on the backup server
  2. Place a call to (at least) a queue pilot number from the PSTN. For internal queues, place the call from an internal extension
  3. Verify the incoming call is answered by the (backup) Queue Manager Enterprise

To test the call survivability:

  • Stop the Queue Manager Enterprise service also on the second node, then execute the survivability test described above for single-server deployment
Article ID: 94
Last updated: 12 Dec, 2016
Revision: 3
Views: 2777
Print Export to PDF Subscribe Share
This article was:  
Prev   Next
License Activation     Statistics and Reports