Administrator Guide: Call Admission Control v.1
Introduction
This application note explains how to implement Call Admission Control (CAC) based on the number of simultaneous calls using a same IP link.
The following assumptions are made:
- An extension, its primary and its secondary phone are all located on the same site. This means that for example a softphone used on another site will not be taken into account correctly.
- Two configurations for the public access are possible:
- Each site has its own public access. In this configuration, the field "home number" (See menu "directory" > "internal directory") of an extension will be used as a fall back to reach the person via the public network in case of congestion.
- There is shared public access located on the 'Public Site'
Each IP call arriving on a SOP is first screened by the Call Admission Control callflow in order to detect the risk of IP congestion. For each site a counter of active calls going to or from the WAN is maintained. If either the WAN connection of the source site or the WAN connection of the target site of a call is congested, the call is automatically redirected to the public network.
Requirements
- SOA1 v1.32+
- SOA2 v1.10+
- IIA1 v2.01+
- MLE1 v1.1+
- CheckMediaLinkCongestion v1.00+
- MapNumber v1.12+
- SMP v1.4+
- Consolidated Management
Limitations
If the IP link is saturated, a call to an emergency number will not be possible.
Implementation
Step 1: Provision the sites
Navigate to: Advanced > System Management > Site Configuration
Create all the sites.
For each IP link interconnecting two sites or a site
Navigate to: Resources > Media Links > Add
- Description: Put a meaning full description, e.g. site 1, max 10 call
- Maximum number of calls: Set here the maximum number of calls on this IP Link, e.g. 10
Step 3: Define the topology of the network
Navigate to: Communication Routing > Intra-Cluster Media Links > Add
If the site is interconnected via a point-to-point WAN link, create a specific route.
If the site is interconnected to remote sites via a full meshed WAN, create a default route.
Step 4: Set the site for each extension
Navigate to: Directory > Internal Directory
For each extension, set and check the Site field
Step 5: Add new Restriction Group for CAC
Navigate to: Communication Routing > Route Groups > Add
- Route Group Name: CacNorestrict
- Type: RestrictionGroup
Step 6: Add new Route Groups for CAC
Navigate to: Communication Routing > Route Group > Add
- Route Group Name: CACRouteGroup
- Type: RouteGroup
Step 7: Include Route Group in Restriction Group
Navigate to: Communication Routing > Restriction Groups > Add
- Restriction Group: CacNorestrict
- Route Group: CACRouteGroup
- Precedence: 100
Step 8: Import Call Admission Control callflow
Navigate to: Advanced > System Tasks > Add > ImportCallflows
- Template Callflow: *235
- If this template callflow is not present in your cluster, ask the Escaux support team to copy it
For each SOP of the cluster,
Navigate to: Communication Routing > Extra-Cluster Routing > Add
- Telephony Route: _X.
- Route Group: CACRouteGroup
- Action: MapNumber.1.12
Then edit the properties of the route that has just been added:
Navigate to: Communication Routing > Extra-Cluster Routing > MapNumber.1.12
- Manipulate number: strip all digits
- Add prefix: *235
- Variable: CalledNumber
Step 10: Adapt Restriction Group/Context of all the IP interfaces
Navigate to: Resources > Interfaces
For each interface of type SOA1, SOA2 or IIA1 set it to Restriction Group to CacNorestrict
Step 11: Adapt Restriction Group of all the IP phones
Navigate to: Resources > Phones
For each phone set the Restriction Group to CacNorestrict
Step 12: Set the shared ISDN gateway location, if any
If there is a shared gateway to the public network,
Navigate to: Communication Flow Studio > Global Parameters > Integer > Add
- Paramater Name: PublicSite
- Value: The site code where the public network access is available
Case study: In a 2 centralized active/active SOP multi-site topology, how to restrict the calls to/from satellite site?
Topology
Let's assume the following topology:
- 1 central site 'C' hosting
- 2 SOPs SOPA and SOPB in active/active mode. All extension being configured with SOP1=SOPA and SOP2=SOPB.
- Several IP phones
- 1 or several PRIs
- N satellite site 'Si' hosting IP phones.
- MaxCall(Si) being the number of calls admitted on the Site Si.
The following steps must performed:
- Configure the global parameter 'PublicSite' with 'C'.
- Configure the site for each extension. Pay attention that all phones linked to a specific extension must be installed on the site mentionned in the extension. All calls which are destinated to that extension must effectively go to the corresponding site (or as a fallback on the site C).
- Rename NoRestrict as NoRestrictCacOk
- Create the sites using (Only available on SMP 4.7 for the cluster)
Navigate to: Advanced > System Management > Site Configuration
- Create a new restriction group NoRestrict and include the CACRouteGroup
- Create 1 Media link for each site (C+Si) indicating the call limit per site.
- Define a different default media link per site in the intra-cluster media link corresponding to the number of calls which can be handled on the media link. (Only available on SMP 4.7 for the cluster).
- Use the following callflow:
EXTENSION;DESCRIPTION;ACTION;VAR1;VAR2;VAR3;VAR4;VAR5;VAR6;VAR7;VAR8;VAR9;VAR10;VAR11;VAR12;VAR13;VAR14;VAR15;VAR16;VAR17;VAR18;VAR19;VAR20;VAR21;VAR22;VAR23;VAR24;VAR25;VAR26;VAR27;VAR28;VAR29;VAR30;VAR31;VAR32;VAR33;VAR34;VAR35;VAR36;VAR37;VAR38;VAR39;VAR40;VAR41;VAR42;END
"_*235";"";"If 1.5";"CallAdmissionControlEnforced";"=";"yes";"";"";"";"";"";"";"";"";"*23512";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*23512";"Call Admission Control V1.00";"GetExtensionInfo 1.0";"${CALLERIDNUM}";"";"";"";"";"";"";"";"";"";"";"*2351212";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*2351212";"get caller site";"If 1.3";"ExtSite";"=";"";"";"=";"";"";"";"";"";"*235121211";"*235121212";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*235121211";"from the public network";"SetVar 1.00";"CallerSite";"${PublicSite}";"";"";"";"";"";"";"";"";"";"*23512121112";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*23512121112";"continue";"Redirect 1.00";"*23512121212";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*235121212";"";"SetVar 1.00";"CallerSite";"${ExtSite}";"";"";"";"";"";"";"";"";"";"*23512121212";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*23512121212";"";"GetExtensionInfo 1.0";"${CalledNumber}";"";"";"";"";"";"";"";"";"";"";"*2351212121212";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*2351212121212";"get called site";"If 1.3";"ExtSite";"=";"";"";"=";"";"";"";"";"";"*235121212121211";"*235121212121212";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*235121212121211";"to the public network";"SetVar 1.00";"CalledSite";"PublicSite";"";"";"";"";"";"";"";"";"";"*23512121212121112";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*23512121212121112";"continue;";"Redirect 1.00";"*23512121212121212";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*235121212121212";"Called Site identification";"SetVar 1.00";"CalledSite";"${ExtSite}";"";"";"";"";"";"";"";"";"";"*23512121212121212";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*23512121212121212";"Going to another Site?";"If 1.3";"CalledSite";"!=";"${CallerSite}";"";"=";"";"";"";"";"";"*2351212121212121211";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*2351212121212121211";"";"CheckMediaLinkCongestion 1.00";"${CallerSite}";"${CalledSite}";"";"";"";"";"";"";"*235121212121212121109";"*235121212121212121110";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*235121212121212121109";"";"SetVar 1.01";"CallAdmissionControlEnforced";"yes";"";"";"";"";"";"";"";"";"";"*23512121212121212110912";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*23512121212121212110912";"";"Redirect 1.02";"${CalledNumber}";"NoRestrict";"5";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
"_*235121212121212121110";"via public number";"Redirect 1.00";"${ExtFaxNumber}";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"-"
Remark:
- In case of a SIP trunk instead of a PRI which shared the Bandwidth of the Site 'C'. You need to indicate in the 'C' Media Link the number of channel allowed for inter-site calls.