Time of Day Routing on CUCM

Introduction:

The Document describes the Concept and Working of Time of the Day routing along with configuration Snapshot and test solutions.

 

Background Information

Time of the Day Routing: Working

Time Period:  Defines a time frame in a 24 hours of a day.

This time period can be repeated:

  • Every week from a given day to any other day in the week. For example; Monday – Friday.
  • Every year from a given day in a month to another day in the same or different month. For example; 1st January – 4 February.

Time Schedule:This is a collection of one or more time periods.

Partition:A partition comprises of a logical grouping of Directory Numbers (DNs) and route patterns with similar reachability characteristics. The time schedule comprises of one or more time periods assigned to a partition. It defines a time frame when the partition is logically active.

Test Case Scenario:

There is a hotline number 1800-180-9091. Calls to this number between 0800 hours till 1700 hours are to be answered by 4000 DN(which is given to receptionist). Beyond these timings the calls are to be sent to Cell Number. The trick here is to have two numbers that are the same, but in different partitions.

  1. 9091 (Translation Pattern- has Called Party Transformation number set to 4000)in partition Working_Hours_PRT.
  1. 9091 (Translation Pattern- has Called Party Transformation number set to Cell Number 918587822216) in partition Non_Working_Hours_PRT.

Even though they are the same numbers, they exist in two different partitions of which only one partition is logically active at any given time. This is decided by the time schedule assigned to these partitions.

When the hotline number is called between 0800 hours till 1700 hours, the partition Working_Hours_PRT  will be active and thus 9091 is a Translation Pattern number. For any calls placed outside these timings, the partition Non_Working_Hours_PRT will be active and therefore calls can be forwarded to a Cell Number by using Route Pattern . Make Sure this TP has access to RP to route the call from CUCM .

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

 

Component Used:

  • CUCM
  • Voice Gateways
  • T1 PRI
  • 3 SCCP Phones
  • Telco GW to replicate the issue for external Calls.

 

Requirement:

Customer has a requirement where they want their Existing DID number 1800-180-9091 calls goes to be diverted to the Phone 4000 in Office hour (Mon-Fri  8-5) after office hours and weekends calls should go to a specific Cell Number XXXXXXXXXX.

  • Monday to Friday 00800hrs to 1700hrs goes to 4000 number
  • After office hours Monday to Friday from 1700 hours till 2400 hours  goes to Cell Number(XXXXXXXXXX)
  • After office hours Monday to Friday from 0000 hours till 0800 hours goes to Cell number (XXXXXXXXXX).
  • Weekends Saturday and Sunday 0000hr to 2400hrs goes to Cell number XXXXXXXXXX

Configuration:

Step1: Create a time period for the time frame 0800 hours till 1700 hours call Working_Hours.

1

2

Step 2. Create the two Off-Shift Time periods and one for Weekends (Saturday-Sunday).

  • One from 1700 hours till 2400 hours.
  • The other from 0000 hours till 0800 hours.
  • Weekends from 0000 hours till 2400

3

4

5

Step 3. Add the time periods to the Time Schedules.

.  On the Unified CM Administration section of the web page, navigate to Call Routing > Class of Control > Time Schedule as shown in this image

5

  1. Click Add New and Create a New Time Schedule Working-hours as shown below and add Time period

5

  1. Create another Time Schedule for Non-Working-Schedule show below and add all off hours Time period to that.

5

Step 4. Assign the Time Schedules to the respective partitions

  • Assign Working_Hours_PRT time schedule to the partition Working_Hours_Schedule as show below

5

  1. Assign the Non-Working_Hours_Schedule Time Schedule to the partition Non-Working_Hours_Schedule _PRT as shown in this image.

5

Step 5. Create 2 similar Translation Pattern and assign one to the Partition Working_Hours_PRT  and the other to the partition Working_Hours_Schedule _PRT.

6

Step 6.

  1. 9091 has a partition which has Active Time Schedule.
  2. Assign 4000 number in called party transformation so that calls goes to 4000 in Active Schedule 0800hr to 1700hrs
  3. Make Sure This Translation Pattern has given a CSS which can reach to the phone number 4000

7

7

Step 8.

  1. 9091 has a partition which has Non-Working hours Time Schedule so it will become active only after office hours and weekends time period.
  2. Assign Cell Number(XXXXXXXXXX) in called party transformation so that calls goes to XXXXXXXXXX in Active Schedule 1700hrs-2400hrs, 0000hr -0800hrs and Weekends (Sat-Sun) 0000hr-2400hrs
  3. Create Route Pattern or use Existing route pattern to route the call from CUCM to Cell Number
  4. Make Sure This Translation Pattern has given a CSS which can reach to the Route Pattern Created above to route call to Cell number.

7

7

Step 9.  Most important point.

  1. Create a CSS”GW-CSS” or Use Existing CSS which is already there on GW “incoming CSS”
  2. Assigned these two Partitions which we have created and assigned a schedule.
  3. This is required so a call comes in via Gateway it should have access to those Translation Pattern which we have created “9091” otherwise call will if Gateway do not have access to Translation pattern.

7

Step 10. Assign Calling Search Space which you are going to create new on Inbound Call section on Gateway Page. If there is existing Calling Search Space there on GW just assign those two partition which has Time Schedule with Time period aligned to it.

7

 

 

Regards

Naddy

 

Posted in CME, CUCM, Uncategorized

CME- COR Logic (Class of Restriction)

Class of Restriction(COR)

Class of Restrictions (COR) is a Cisco voice gateway feature that enables Class of Service (COS) or calling privileges to be assigned. It is most commonly used with Cisco Survivable Remote Site Telephony (SRST) and Cisco CallManager Express but can be applied to any dial peer.

The COR feature provides the ability to deny certain call attempts based on the incoming and outgoing CORs provisioned on the dial-peers. COR is required only when you want to restrict the ability of some phones to make certain types of calls but allow other phones to place those calls.

COR is used to specify which incoming dial-peer can use which outgoing dial-peer to make a call. Each dial-peer can be provisioned with an incoming and an outgoing COR list. The corlist command sets the dial-peer COR parameter for dial-peers and the directory numbers that are created for Cisco IP phones associated with the Cisco CallManager Express router. COR functionality provides the ability to deny certain call attempts on the basis of the incoming and outgoing CORs that are provisioned on the dial-peers. This functionality provides flexibility in network design, allows users to block calls (for example, calls to 900 numbers), and applies different restrictions to call attempts from different originators.

If the COR applied on an incoming dial-peer (for incoming calls) is a super set or equal to the COR applied to the outgoing dial-peer (for outgoing calls), the call goes through. Incoming and outgoing are terms used with respect to the “voice ports”. COR is often described as a lock and key mechanism. Locks are assigned to dial peers with an outgoing COR list. Keys are assigned to dial peers with an incoming COR list.

For example, if you hook up a phone to one of the Foreign Exchange Station (FXS) ports of the router and try to make a call from that phone, it is an incoming call for the router/voice-port. Similarly, if you make a call to that FXS phone, then it is an outgoing call.

By default, an incoming call leg has the highest COR priority and the outgoing COR list has the lowest COR priority. This means that if there is no COR configuration for incoming calls on a dial-peer, then you can make a call from this dial-peer (a phone attached to this dial-peer) going out of any other dial-peer, irrespective of the COR configuration on that dial-peer.

SRST

SRST

In case there is no Core list on outbound dial-peer call will pass through since there are no locks. And in case there is no core list on the incoming dial-peer in that case also call will pass. We assume we have master keys in such cases

How to Create “Partitions” and “CSS” on CME.

SRST

The default cor list is assigned to all the phones to which no COR list is assigned. So if there is a phone to which no COR list is assigned then for this scenario he can dial only emergency number since it would be assigned a default cor list and it has only Member emergency.

Posted in Uncategorized

SRST Walkthrough

SRST Walk-Through.

Call-manager fallback is simple to configure. Just 3 commands however there are very few features that are supported in call-manager-fallback. Calling name is not supported.

Station-id name is set to the EPNM. So we lose the name. So there are many feature which aren’t supported on call-manager-fallback. We should use telephony service instead.

SRST

When the WAN connection is down and keepalives to PUB and SUB call manager are expired then the phone tries to registered with the SRST gateway. In the CUCM we define the SRST reference which is assigned to the device pool. So the phone knows its SRST gateway.

SRST GW uses SNAP (simple network auto provision) method to get the configuration file from the Phone which is trying to register with it. This file is a xml file which phone downloaded from the cucm. Now the SRST GW reads that file and extract all the information like DN, EPNM etc and automatically creates the ephone and ephone-dn.

When the WAN link is up, phone again share the keepalive messages and waits for the 120 sec (connection monitor fallback duration) defined in the device pool.

And when the phone register back to the cucm then ephone dn and ephone configuration is deleted from the configuration.

When the phone is registered to SRST GW you can use below commands:

  1. show call-manager-fallback voice-port
  2. show call-manager-fallback dial-peer

CME-SRST

SRST

Reference link:

http://www.cisco.com/en/US/docs/voice_ip_comm/cucme/admin/configuration/guide/cmesrst.html

Enables SRST mode for a Cisco Unified CME router.

  • all—Includes information for learned ephones and ephone-dns in the running configuration.
  • dn—Includes information for learned ephone-dns in the running configuration.
  • none—Does not include information for learned ephones or learned ephone-dns in the running configuration. Use this keyword when you want Cisco Unified CME to provide SRST fallback services for Cisco Unified Communications Manager.

MGCP Fall-back

SRST

If the GW was MGCP GW then we need to define the outgoing and incoming dial-peer and if it was a h323 GW then we already would have many dial-peers defined.

So in case of mgcp gw these dial-peer would only be used during SRST mode.

SRST

In h323 GW, When you configure srst auto-provision all then the dial-peer exists even after the phone has registered back to CUCM. So in that case our dial-peers would conflict because default dial-peer hunt value is 0 means it looks for closest match first. And since the 3001 is closest match among above dial-peer so it will hit even after phone is no more on CME. So we need to change the dial-peer hunt value to 2 and assign preference value of 9 to pots dial-peer. Now it will look for the preference value first instead of closest match. And this time voip dial-peer will hit because they have default preference of 0.

And when phones are registered on the CME then voip dial-peer will fail because of no response from CUCM and using the voice-class h323 it will finally hit to pots dial-peer.

SIP-SRST

SRST

Under voice register global we define the mode. Default mode is srst. So we don’t need to run the mode command.

Also we don’t need any source-address command under the voice register global.

Voice register pool has entirely different meaning. It tells that all the phones in the network 10.10.201.0 will have below settings (cor, codec , dtmf-relay).

Posted in Uncategorized

Cisco Unity Express Integration with CUCM (Jtapi)

CUCM—–JTAPI—-CUE.

Lets setup CUE for CUCM. It looks a strange setup but many customers use Unity express with their Call manager system instead of Unity connection. This typically suits small companies where the voicemail usage is not very high.

At Call manager do the following:

  • Create a CTI Route point – add the line with ext. 3220 which is the voicemail pilot
  • Create CTI Ports which will be used for handling voicemail between Call manager and CUE (3221, 3222)
  • Create a JTAPI user cuejtapi (or any name) from Application user and add CTI ports and CTI Route point under controlled Devices. This user will have Standard CTI Enabled Permission group
  • Create users, assign extension mobility profile (if any) and then select primary extension (must)
  • Go to Voicemail >Pilot > add 3220
  • Go to Voicemail Profile and create voicemail profile CUE-VM
  • In Phones, go under lines and select the Voicemail profile CUE-VM

The CUE settings on the gateway as follows:

!
interface Vlan400
ip address 10.10.202.1 255.255.255.0

interface integrated-service-engine 1/0
ip unnumbered Vlan400
service-module ip address 10.10.202.253 255.255.255.0
service-module ip default-gateway 10.10.202.1
!

ip route 10.10.202.253 255.255.255.255 integrated-service-engine 1/0
!
!

!
dial-peer voice 3220 voip
destination-pattern 3220
session protocol sipv2
session target ipv4:10.10.202.253
dtmf-relay sip-notify
codec g711ulaw
no vad

Router#service-module integrated-service-engine 1/0 session

Before the initial setup, make sure to bring the cue back to factory default:

se-10-100-1-10#offline

!!!WARNING!!!: If you are going offline to do a backup, it is recommended that you save the current running configuration using the ‘write’ command, prior to going to the offline state.

Putting the system offline will terminate all end user sessions.

Are you sure you want to go offline[n]? : y

cuese-10-100-1-10(offline)>restore factory defaults

Are you sure you want to go offline[n]? : y
cue(offline)> restore factory default
!!!WARNING!!!: This operation will cause all configuration and data on the system to be erased.

This operation is not reversible.
Do you wish to continue[n]? : y
Restoring the system. Please wait …..done
System will be restored to factory default when it reloads.

System will reboot itself and will come back online. After it comes online you can configure  CUE from CLI and then from GUI.

Setting up CUE for first time.

IMPORTANT::
IMPORTANT:: Welcome to Cisco Systems Service Engine
IMPORTANT:: post installation configuration tool.
IMPORTANT::
IMPORTANT:: This is a one time process which will guide
IMPORTANT:: you through initial setup of your Service Engine.
IMPORTANT:: Once run, this process will have configured
IMPORTANT:: the system for your location.
IMPORTANT::
IMPORTANT:: If you do not wish to continue, the system will be halted
IMPORTANT:: so it can be safely removed from the router.
IMPORTANT::
Do you wish to start configuration now (y,n)? y
Are you sure (y,n)? y
Enter Hostname
(my-hostname, or enter to use se-10-100-1-10): cue
Enter Domain Name
(mydomain.com, or enter to use localdomain): cisco.com

IMPORTANT:: DNS Configuration:
IMPORTANT::
IMPORTANT:: This allows the entry of hostnames, for example foo.cisco.com, instead
IMPORTANT:: of IP addresses like 1.100.10.205 for servers used by CUE.  In order
IMPORTANT:: to configure DNS you must know the IP address of at least one of your
IMPORTANT:: DNS Servers.

Would you like to use DNS for CUE (y,n)?n

WARNING: If DNS is not used CUE will require the use
WARNING: of IP addresses.

Are you sure (y,n)? y

Enter IP Address of the Primary NTP Server
(IP address, or enter for 192.168.20.254): 10.10.110.1

Please identify a location so that time zone rules can be set correctly.
Please select a continent or ocean.
1) Africa            4) Arctic Ocean     7) Australia       10) Pacific Ocean
2) Americas          5) Asia             Europe
3) Antarctica        6) Atlantic Ocean   9) Indian Ocean

#? 5

Please select a country.
1) Afghanistan           18) Japan                 35) Philippines
2) Armenia               19) Jordan                36) Qatar
3) Azerbaijan            20) Kazakhstan            37) Russia
4) Bahrain               21) Korea (North)         38) Saudi Arabia
5) Bangladesh            22) Korea (South)         39) Singapore
6) Bhutan                23) Kuwait                40) Sri Lanka
7) Brunei                24) Kyrgyzstan            41) Syria
Cambodia              25) Laos                  42) Taiwan
9) China                 26) Lebanon               43) Tajikistan
10) Cyprus               27) Macao                 44) Thailand
11) Georgia              28) Malaysia              45) Turkmenistan
12) Hong Kong            29) Mongolia              46) United Arab Emirates
13) India                30) Myanmar (Burma)       47) Uzbekistan
14) Indonesia            31) Nepal                 48) Vietnam
15) Iran                 32) Oman                  49) Yemen
16) Iraq                 33) Pakistan
17) Israel               34) Palestine

#? 33

The following information has been given:

Pakistan

Therefore TZ=’Asia/Pakistan’ will be used.
Local time is now:      Tue Jun 15 15:20:36 GMT 2010.
Universal Time is now:  Tue Jun 15 10:20:36 UTC 2010.
Is the above information OK?
1) Yes
2) No

#? 1

Configuring the system. Please wait…
Changing owners and file permissions.
Change owners and permissions complete.
INIT: Switching to runlevel: 4
INIT: Sending processes the TERM signal
STARTED: cli_server.sh
STARTED: ntp_startup.sh
STARTED: LDAP_startup.sh
STARTED: superthread_startup.sh
STARTED: SQL_startup.sh
STARTED: HTTP_startup.sh
STARTED: ${ROOT}/usr/wfavvid/run
STARTED: probe
STARTED: dwnldr_startup.sh

waiting 202 …

IMPORTANT::
IMPORTANT:: Create an administrator account. With this account,
IMPORTANT:: you can log in to the Cisco Unity Express GUI and
IMPORTANT:: run the initialization wizard.
IMPORTANT::

Enter administrator user ID:
(user ID): administrator      ^H^H
**************************************************
administrator  is not a valid user ID.
A valid user ID:
1) must start with a letter
2) may contain letters, numbers, hyphens, underscores or dots
3) must end with a letter or a number
4) must contain no fewer than 2 characters
5) must contain no more than 31 characters
**************************************************
Enter administrator user ID:
(user ID): administrator
Enter password for :
(password):
Confirm password for  by reentering it:
(password):

After setting this up go to GUI of CUE.

http://10.10.202.253/index.html

Enter the username/password as above

Run the Initialization wizard:

Enter the Call managers, Web Admin Call manager username and Password, cuejtapi username and password.

Import users.

Click Finish and let the module reload.

You can also do it through CLI.

** This is for Call manager normal working ***

ccn subsystem jtapi

ctiport 3221 3222

ccm-manager address 10.10.210.11 10.10.210.10

ccm-manager username cuejtapi password cisco

*** This will work in SRST ***

ccn subsystem sip

gateway address 10.10.110.3

mwi sip unsolicited

exit

*** This will work in Normal mode ***

ccn trigger jtapi phonenumber 3220

application “voicemail”

enabled

end trigger

*** This will work in SRST ***

ccn trigger sip phonenumber 3220

application “voicemail”

enable

end trigger

Creation of Users:

CUE# voicemail callerid

CUE#username scph1 create
CUE#username scph2 create

CUE#username scph1 phonenumber “3001″
CUE#username scph2 phonenumber “3002

CUE#username scph1 pin ’12345′
CUE#usernmae scph2 pin ’12345′

CUE#conf
#Voicemail mailbox owner ‘scph1′
#no tutorial
#end mailbox

#Voicemail mailbox owner ‘scph2′
#no tutorial
#end mailbox

FOR MWI, just do ‘sh run’ and edit this application:

ccn application ciscomwiapplication aa
parameter “strMWI_OFF_DN” “1999″
parameter “strMWI_ON_DN” “1998″
end application

CUE#wr mem

Verification:
cue>show ccn status ccm-manager
JTAPI Subsystem is currently registered with Call Manager: 10.10.210.11

Note:

CUE can only be reached through G711 codec. If you want your remote sites to access CUE then you need

transcoder on CUE router. If not, then the Region Codec between sites must be G711.

Posted in Uncategorized