In this blog post I am going to describe the concept of Class of Service with an example based on the configuration of Calling Search Spaces (CSS).
This post is part of my CCNP Collaboration series of articles.
If you need an introduction or a refresher on partitions and Calling Search Spaces, you can read this.
HQ is in Pennsylvania, Branch1 is in Arizona.
We have HQ phone with DN 1000. We have a configured emulation of PSTN with a couple of PSTN lines:
- local lines
- long distance lines
- international line
- emergency line
The concept of local or national line is relative to the calling party. For example, for HQ phones, line 7175438411 is a local PSTN line, while for Branch1 phones the same line is considered long distance.
We define the following partitions:
And we define Calling Search Spaces:
In the following, I define what each Calling Search Space contains in terms of partitions.
Class of Service in HQ and Branch 1
We will apply a design principle that says: route at the device, block at the line.
On the device, we set the Calling Search Space to None. And all the game runs on the line. I mean, we define the permissions and restrictions on the line CSS.
CSS Configuration in the HQ
Line CSS = Internal_CSS
The phone can only call internal lines and emergency line.
Line CSS =CorpHQ-local_CSS
The phone can call internal, emergency and local PSTN lines
Line CSS =CorpHQ-national_CSS
the phone can call internal, emergency, local and long-distance PSTN lines.
Line CSS = CorpHQ-international_CSS
the phone can call all lines, internal and external.
CSS Configuration in Branch1
I applied the same logic. And I created the same set of partitions and Calling Search Spaces for Branch1. I even created a separate internal CSS for Branch1 because of emergency line services. I’ll talk about this in a later time.
list of partitions for Branch1:
List of Calling Search Spaces for Branch1:
Here is a summary of the list of partitions and CSSes I’ve configured:
Now I’m going to launch a softphone at Branch1 site and make various calls, each time with a different CSS at the line level. I’ll leave the device CSS to none.
Branch1 extension is 2001 and is registered to CUCM at HQ.
line CSS = Branch1-internal_CSS
line CSS = Branch1-local_CSS
line CSS = Branch1-national_CSS
line CSS = Branch1-international_CSS
Which Impact Does The gateway CSS Have?
The CSS set on the PSTN gateway must be configured with a CSS that allows for the search of patterns. It is configured under Call Routing Information – Inbound Calls.
A common situation is when we set the Significant Digits to a number of digits, let’s say 4. The gateway CSS must contain partitions that contain the 4 digits. Otherwise, the gateway won’t be able to send the outbound call leg towards CUCM.
Here, we call from PSTN into the company DID number. And we distinguish two scenarios:
Scenario 1: Gateway CSS is not Adequate
We set the gateway CSS to None. Since I carefully designed the partitions and CSS, there is nothing left in the None CSS.
Save configuration and reset the gateway.
We make the inbound PSTN call.
The call fails. The gateway received the call, extracted 4 digits and searched within the partitions of the None CSS, for a match. It found nothing. The call could not be expanded.
Scenario 2: Gateway CSS is Adequate
I changed the gateway CSS to one that contains internal partitions. I saved and reset.
The call from PSTN succeeds.
Vanity Services and Vanity Numbers
Vanity service to an on-net destination
let’s assume DN 1003 is the IT Support number for the whole company. We can create a DN 8888 that is translated to 1003. And DN 8888 is put in both HQ partitions and Branch1 partitions. So the HQ phones have their IT Support vanity service and Branch1 phones have also their own IT Support vanity service.
Both HQ calling party and Branch1 calling party must be configured with a CSS that contains the vanity partition.
Vanity service to an off-net destination
Let’s suppose we want to provide to our corporate users the possibility to dial an abbreviated number to reach London Hotel, to book a reservation. This vanity number will be numerically the same; but unique to each site.
The vanity number will be in our example a translation pattern that converts the abbreviated number into a full PSTN number.
We have HQ and Branch1. We create a vanity number in two partitions for the two sites. The partitions will be put into CorpHQ-international_CSS and Branch1-international_CSS.
The calling party number must have the CSS International to be able to benefit from vanity services, in our example.
I dial from Branch1 phone the vanity number 9999 and it is translated into the full international PSTN number.
Configuring Private Line Automatic Ringdown PLAR
Let’s say we dedicate a phone to the vanity service we defined before. As soon as the handset is lifted, the London Hotel number must be dialed.
Here is how to do it.
we define a PLAR partition.
We put the PLAR partition in whatever CSS we want. Since the PLAR function is related to an international number here, we’ll put it in the International CSS of HQ.
We define a Translation pattern with a blank pattern. We put it into the PLAR partition.
The CSS configured under the Translation pattern page must contain the pattern defined in the Called Party Transformation Mask.
We make sure the line CSS contains the PLAR partition.
We test PLAR by lifting the handset. It takes a couple of seconds before things work: