Showing posts with label CCIE Voice. Show all posts
Showing posts with label CCIE Voice. Show all posts

Tuesday, July 10, 2012

SIP CME - authentication register


For SIP CME configuration, you will find local phones can register to CME without the need of "authentication register" command.  The CME will authenticates the MAC address compare with the ARP request.

For remote phones that are NOT in the same subnet, SIP digest authentication is required.  You need username and password stored in the phone config file, and compare it against the voice register pool.

Without "authentication register", when you do a "debug ccsip message", you will see 401 Unauthorized for the remote phones.

"authentication register" is a global settings and will affect all phones.

Sample configuration

voice service voip
allow-connections sip to sip
sip
bind control source-interface vlan102
bind media source-interface vlan102
!
voice register global
mode cme
source-address 1.1.1.1 port 5060
max-dn 20
max-pool 20
authenticate register
!
voice register dn  1
number 1001
!
voice register pool  1
id mac 0011.2233.4455
type 3905
number 1 dn 1
dtmf-relay sip-notify
username 1001 password cisco
codec g711ulaw

Friday, April 13, 2012

An Easy way to check UCM latest SDI log

RTMT is not bad, however it is still not as quick as you enter command via CLI.  You can use the following command to check the latest SDI log.

Example – it shows the latest 300 lines of SDI logs

file tail activelog cm/trace/ccm/sdi recent 300

Tuesday, February 28, 2012

My 2nd voice lab attempt failed

I failed and the worst part is I think I am doing well and I can't recall I have done anything wrong.  Now the most important thing is to revisit my work and see what I have missed.  Hope to make my 3rd attempt in a couple of months time.

Sunday, February 26, 2012

Ready to make my second voice lab exam attempt tomorrow, wish me luck!

MGCP Gateway Fallback Configuration Example

When you are deploying MGCP in branch office and the WAN connection between the MGCP gateway and UCM is broken, you can enable fallback on IOS gateway and route call based on your H.323 configuration.

These are the commands that you need to configure on your MGCP gateway.

R1(config)#ccm-manager fallback-mgcp


R1(config)#application
R1(config-app)#global
R1(config-app-global)#service alternate Default


Also configure the necessary incoming and outgoing voip and pots dial-peer as well as SRST configuration to handle the fallback situation.

VoiceView Express - Authentication Error

If you try to setup VoiceView Express for a CUE + UCM integration, and get the error:

Playback failed
Authentication error.  Report this error to your system administrator.

when you try to playback a message on Voiceview express, very likely you don't have the JTAPI user associated with the phone that use this service.  Make sure the JTAPI user is associated to the phones that are configured to use VoiceView Express.

Cisco UCM - Voice Mail Box Mask on Voice Mail Profile


The mask only mask the ReDir number.  Not the caller number, therefore:

When branch phone 5002 calls 5001 redir to 1220 (VM Pilot number, CUC in hub site) in SRST mode, it will mask the redir number from 98765001 (DID number) to 5001, therefore the caller 5002 can hear 5001's greeting instead of a general mailbox greeting.

However when 5001 press the voicemail envelop button on phone, the CLID is 98765001 therefore user 5001 doesn't able to listen to his personal greeting, as CUC doesn't recognize a subscriber has 98765001. It is not handled by the voice mail box mask.

One of the way is to enter 98765001 as alternate extension for the subscriber 5001.  If alternate extension is not a solution, you can use calling party transformation on UCM to manipulate the calling number, say for example create a new device pool for the voice mail ports on UCM and apply the calling party transformation CSS to this new device pool.

Cisco UCM + CUE integration - in SRST scenario

In previous post I have highlighted the steps and procedures that are required for a UCM + CUE JTAPI integration:

http://pandaeatsbamboo.blogspot.com/2012/02/ucm-cue-integration-example-step-by.html

What if the CUE is located at a branch site and the connection between UCM and CUE is broken?  When the WAN link is downed, SRST kicks in and the CUE can change from a JTAPI integration into a SIP integration, so that the SRST router can talk to CUE via SIP.

0. Assume you have the JTAPI integration in place, for normal situation when the connection between hub site and branch is up:
http://pandaeatsbamboo.blogspot.com/2012/02/ucm-cue-integration-example-step-by.html

1. Configure CUE SIP subsystem, the gateway address is your SRST router address:


ccn subsystem sip
gateway address "192.168.166.254"
mwi sip unsolicited

2. Configure SIP trigger, the voicemail pilot number:

ccn trigger sip phonenumber 1110
application "voicemail"


3. Configure the SIP dial-peer on your router

dial-peer voice 1110 voip
destination-pattern ^1110$
session protocol sipv2
session target ipv4:192.168.166.254
dtmf-relay sip-notify
codec g711ulaw

4. Configure the SIP MWI:

sip-ua
mwi-server ipv4:142.1.66.253 expires 3600 port 5060 transport udp unsolicited

5.  Sample CME as SRST configuration
telephony-service
srst mode auto-provision none
srst ephone template 1
srst dn template 1
srst dn line-mode octo
max-ephones 20
max-dn 20 no-reg
ip source-address 192.168.166.254 port 2000
voicemail 1110
mwi relay
max-conferences 8 gain -6
transfer-system full-consult
create cnf-files version-stamp 7960 Feb 25 2012 01:03:36
!
!
ephone-dn-template  1
call-forward busy 1110
call-forward noan 1110 timeout 20
mwi sip
huntstop channel 1
!

When the WAN link is downed, your branch phone can still access your local CUE, leave and retrieve voicemail as usual and the end user experience, MWI, etc will be the same. 



Cisco B-ACD on CME router - Drop-through option

In Cisco CME B-ACD, drop-through option can be configured so that when the AA services receive the incoming call, it will send the call directly to the call queue without provide menu options to callers.  This is useful for some small contact center backup, when the WAN link is downed and the site can't reach the contact center express or enterprise in the main site, it can still provide basic ACD service to the callers.

My Sample Configuration:


application
service aa flash:app-b-acd-aa-3.0.0.2.tcl
  paramspace english index 0
  param number-of-hunt-grps 1
  param drop-through-option 1
  param handoff-string aa
  paramspace english language en
  param max-time-vm-retry 2
  param aa-pilot 5000
  paramspace english location flash:
  param second-greeting-time 60
  param drop-through-prompt _dt_prompt.au
  param call-retry-timer 15
  param voice-mail 5555
  param max-time-call-retry 700
  param service-name callq
!
service callq flash:app-b-acd-3.0.0.2.tcl
  param queue-len 10
  param aa-hunt1 5600
  param queue-manager-debugs 1
  param number-of-hunt-grps 1




dial-peer voice 5000 pots
service aa
incoming called-number 5000

ephone-hunt 1 longest-idle
pilot 5600
list 5111, 5112

When there is incoming call, on both of the phone with ephone-dn 5111 and 5112, the message "1 call in queue" will be shown on the phone screen and you will know how many callers waiting in the call queue.



For more information:
http://www.cisco.com/en/US/docs/voice_ip_comm/cucme/bacd/configuration/guide/40bacd.html

MGCP Signaling QoS marking


According to show mgcp, the default marking for MGCP signaling DSCP marking is AF31 (26):

MGCP media (RTP) dscp: ef, MGCP signaling dscp: af31

It can be override with the command:  mgcp ip qos dscp cs3 signaling
MGCP media (RTP) dscp: ef, MGCP signaling dscp: cs3

As a result the signaling is now marked as CS3 (24) instead of AF31 (26)

Difference between "set dscp" and "set ip dscp" under policy-map

They are more or less the same in the IPv4 world.  The only difference is, set dscp will work for IPv4 and IPv6 and set ip dscp is for IPv4 only.


pandasw02(config-pmap-c)#set ?
  dscp        Set DSCP in IP(v4) and IPv6 packets
  ip          Set IP specific values
  precedence  Set precedence in IP(v4) and IPv6 packets


pandasw02(config-pmap-c)#set ip ?
  dscp        Set IP DSCP (DiffServ CodePoint)
  precedence  Set IP precedence

Saturday, February 11, 2012

Changing CUE license


In the lab, another common task that you will work on is to changing the CUE license.  For CME and UCM integration, different licensing file is required.

Firstly you can do a "show software license" see what license your CUE is currently using:

CUE# show software license
Installed license files:
 - voicemail_lic.sig : 25 MAILBOX LICENSE
 - ivr_lic.sig : NULL IVR LICENSE
 - port_lic.sig : 8 PORT BASE LICENSE


Core:
 - Application mode: CCM
 - Total usable system ports: 8


Voicemail/Auto Attendant:
 - Max system mailbox capacity time: 18000
 - Default # of general delivery mailboxes: 10
 - Default # of personal mailboxes: 25


 - Max # of configurable mailboxes: 35


Interactive Voice Response:
 - Max # of IVR sessions: Not Available


Languages:
 - Max installed languages: 5
 - Max enabled languages: 5

According to the output, my CUE is using UCM license and I wanna change it to CME.  You can place your license file in your FTP server and install it on CUE:

CUE# software install clean url ftp://192.168.20.16/cue-vm-license_25mbx_cme_7.0.1.pkg username panda password eatsbamboo




WARNING:: This command will install the necessary software to
WARNING:: complete a clean install.  It is recommended that a backup be done
WARNING:: before installing software.


Would you like to continue? [n]y


Downloading ftp cue-vm-license_25mbx_cme_7.0.1.pkg
Bytes downloaded :  5299


Validating package signature ... done
compatibility mode
Validating installed manifests ...............complete.
The system will be brought to offline state for a brief period
and will be brought back to online state automatically
No work order produced.
The system is back in online state
55296+0 records in
108+0 records out
Size of buff is: 65536
65536 bytes written
Parsing...
25 MAILBOX LICENSE
Parsing...
NULL IVR LICENSE
Parsing...
8 PORT BASE LICENSE
Core:
 - Total usable system ports: 8


/tmp/license/voicemail_lic.sig
/tmp/license/ivr_lic.sig
/tmp/license/port_lic.sig


 Important:: A Reload is required in order for the new License to take effect.

It is changed to CME licensing file successfully, reboot the CUE module for the new license to take effect.

CME cBarge - Failed to setup barge

Just labbing on the CME cBarge feature and got the error message "Failed to setup Barge" on the phone display.  The reason in my case is I have forgotten to create the ad-hoc conference ephone-dn.  Let us quickly walkthrough the steps that are needed to config cBarge on CME:

1. Create Conferencing DSP farm profile

dspfarm profile 1 conference
codec g711ulaw
codec g711alaw
codec g729ar8
codec g729abr8
codec g729r8
codec g729br8
maximum sessions 2
associate application SCCP

2. DSP farm profile SCCP configuration

sccp local GigabitEthernet0/0
sccp ccm 192.168.20.254 identifier 1 priority 1 version 7.0
sccp
!
sccp ccm group 1
associate ccm 1 priority 1
associate profile 1 register CFB

3. sdspfarm configuration on CME under telephony-service

telephony-service
sdspfarm units 2
sdspfarm tag 1 CFB
no privacy
conference hardware

4. Create ephone template with cBarge softkey in remote-in-use state

ephone-template  1
softkeys remote-in-use  CBarge Newcall

5. Sample ephone configuration

ephone  1
privacy off
privacy-button
device-security-mode none
mac-address 0021.5555.5555
ephone-template 1
type 7965
button  1:1 2:3
!
!
!
ephone  2
privacy off
privacy-button
device-security-mode none
mac-address 0026.2222.2222
ephone-template 1
type 7975
button  1:2 2:3

6. Create shared line ephone-dn and ad-hoc conference ephone-dn
ephone-dn  3  octo-line
number 5003
!
!
ephone-dn  4  octo-line
number A123
conference ad-hoc

After I've created the ephone-dn 4 for ad-hoc conferencing, cBarge is setup successfully without the error any more!

Thursday, February 9, 2012

UCM + CUE integration example step-by-step


1. Create CUE End User on CUE

conf t

username boss create
username sec create

username boss phonenumber 1001
username sec phonenumber 1002

exit

username boss pin 12345
username sec pin 12345

2. Config JTAPI subsystem on CUE

ccn subsystem jtapi
ctiport 1111 1112 1113 1114
ccm-manager address 192.168.20.2 192.168.20.1
ccm-manager username panda password eatsbamboo
end subsystem

3. Config JTAPI number on CUE

ccn trigger jtapi phonenumber 1110
application voicemail
enabled
maxsessions 4
end trigger

3. Create voice mailbox on CUE
voicemail mailbox owner boss
enable

voicemail mailbox owner sec
enable

4. Create UCM End User boss and sec on UCM

5. Create Voicemail Pilot 1110 on UCM

6. Create Voicemail Profile on UCM

7. Assign Voicemail Profile to DN of boss and sec

8. Create CTI Route Point 1110, same DN as voicemail pilot

9. Create CTI ports 1111, 1112, 1113 and 1114

10. Create application users panda and assign CTI route point and ports to it

Note: No MWI number is needed to create on UCM and CUE

UCM - Transfer On-hook

By default, when you are doing a call transfer on UCM, you will press the Transfer softkey on phone to talk to the destination callee, the press the Transfer softkey to complete the transfer.

There is a system parameter in UCM that can change this behavior:
System > Service Parameter > Transfer On-hook Enabled = True

After making the change, when you do a transfer call, after pressing the Transfer softkey, you can put the phone on hook to complete the transfer.

Quick Note about MOH for UCM

Holder (the one who press hold) - determines which audio source file to play
Holdee (the one that is being held) - determines which media resource will play that file (MRGL)

User on Hold audio source - Normal IP phone calls
Network on Hold audio source - call transfer, call park, conference - application-based hold

CLID name and number blocking on H323 gateway

You can block the CLID name or number on outbound VoIP calls from a dial-peer:

dial-peer voice 911 pots
  clid strip name ! Block CLID name


dial-peer voice 10 pots
  clid strip ! Block CLID number

Basic MGCP router configuration using ccm-manager config server command

After configuring UCM MGCP configuration, on router you can config the MGCP feature with ease.  There is a feature called "ccm-manager config server" which configs the MGCP gateway automatically, by pulling configuration file from UCM as well as automatically config the router controller, voice-port and serial interfaces.  The basic settings that you need are as follows:

mgcp bind control source-interface gi0/0
mgcp bind media source-interface gi0/0
ccm-manager config server 192.168.20.2 192.168.20.1 ! UCM IP addresses, you can specify sub as primary and pub as backup
ccm-manager config

Then you can see the console messages showing the ISDN interface and other MGCP features are configured automatically.

Do a "show ccm-manager" and "show isdn status" to verify if it is configured properly.  If not, check out this post:
http://pandaeatsbamboo.blogspot.com/2012/02/isdn-shows-teiassigned-status-on-mgcp.html

If you make any changes that is different from the UCM configuration (e.g. config a partial T1 instead of using all channels), remember to no ccm-manager config server otherwise your configuration will be override after reloading the router

ISDN shows TEI_ASSIGNED status on MGCP gateway

My environment:  IOS 12.4(23)T3 advanced enterprise, 2821

When I try to config the MGCP using the ccm-manager config server, in "show ccm-manager" it shows the gateway is registered to UCM successfully:

Priority        Status                   Host
============================================================
Primary         Registered               192.168.20.2
First Backup    Backup Ready             192.168.20.1
Second Backup   None                     

However when I do "show isdn status", the Layer 2 status shows:

State = TEI_ASSIGNED

A router reload solved the problem, you should see

State = MULTIPLE_FRAME_ESTABLISHED

in "show isdn status" Layer 2 status.


Gatekeeper Zone Prefix and Tech Prefix

- Zone Prefix determines the routing TO a ZONE

- Tech Prefix determines the routing TO a GATEWAY within a ZONE