During my lessons (Cisco class CVPI8.0) today I was asked why we have in ICM – PG Explorer the Option to enable Post Routing and what’s the meaning of it, do we need it and similar kinds of questions. It seems there is a lot of confusion out what it actually does. When you enable the Option Post Routing on a Peripheral Gateway (PG) you have to provide a name for the Routing Client.
A Routing Client in terms of ICM (Intelligent Contact Manager) terminology is somebody who can send a Route Request (DN, ANI/CLID, CED) into ICM. Typical Routing Clients are NICs (Pre-Routing, e.g. SS7-NIC, INCRP-NIC, CRSP-NIC, etc.) and Peripherals (Post-Routing, e.g. traditional ACDs, CUCM, CVP Call Server, IPIVR, Unified EIM/Unified WIM, Outbound Dialer, etc.).
Physically for ICM to receive the request from the Routing Client you don’t need to enable Post-Routing. For example, if you take the PG you have got the PGAgent process on the PG that talks to the CCAgent process on the ICM Router independent if Post-Routing is enabled or not.
Why do we need then the Post-Routing Option in ICM? For one simple reason: If you want to configure a Dialed Number (DN) in ICM, it consists of a Routing Client and the Dialed Number String itself. Only these two pieces together form a complete Dialed Number in ICM. The Dialed Number String is the actual number that you dialed. The Routing Client helps ICM to identify from which component (e.g. CUCM, CVP Call Server, IPIVR, etc.) the call actually came.
If the ICM Router receives a Dialed Number from a Routing Client it looks it up in router memory (RAM, configuration previously loaded from the ICM Logger Database). If the Dialed Number that was received was not configured in the ICM Logger Database and is therefore not present in the ICM Router’s RAM, the ICM Router complains and writes “received unknown dialed number” into the log files and .EMS files.
In addition, if the Dialed Number is not configured in ICM, you cannot map it to a Call Type and you cannot trigger an ICM Routing Script and therefore not establish a call flow in ICM itself. So to enable the Option Post Routing in ICM is almost always the case as it is necessary to be able to configure Dialed Numbers in ICM.
The other object in ICM that comes into my mind that requires a Routing Client is a Label. Whereas a Dialed Number is a request coming into ICM, a Label is the response that the ICM Router sends back to the requester. Now the ICM Router has a built-in rule always to respond via the same Routing Client where the Route Request came in. This is a very strict rule and straight forward. If you master this rule you can follow and understand very complex call flow scenarios.
A good example of this rule is a so-called Dynamic Label in ICM. This Dynamic Label is not configured in the ICM Logger Database and only configured and sent from inside the ICM Routing Script. A Dynamic Label does not need a Routing Client to be configured because ICM will respond using the same Routing Client where the Route Request came in.
I hope this short article helps you to understand and to explain why and when in Cisco ICM a Routing Client is required.
Thanks for reading this post and I hope it was informative to you.