Monday, April 19, 2010

Configuring B-ACD services

Configuring B-ACD services was one of the task that we wanted to look deep into it and for that we read the following comprehensive guide which was a key to got it configured successfully.

Reference:
http://cisco.biz/en/US/docs/voice_ip_comm/cucme/bacd/configuration/guide/40bacd.html
http://cciev.wordpress.com/2006/05/29/cme-b-acd/
http://www.voiceie.com/cgi-bin/ultimatebb.cgi?ubb=get_topic;f=8;t=000692

Here are the steps which were followed;

-- Creating ephone-hunt groups --

ephone-hunt 15 longest-idle
pilot 2000
list 2001, 2002
timeout 10, 10
!
!
!
!
ephone-hunt 16 sequential
pilot 3000
list 3001
timeout 20


-- Configuring AA scripts --
I had to download the whole b-acd-2.1.2.2.tar file to my flash first which consist of the following two tcl scipts
app-b-acd-2.1.2.2.tcl
app-b-acd-aa-2.1.2.2.tcl

through config terminal some mandatory parameters being defined as follows

application
service queue flash:app-b-acd-2.1.2.2.tcl --- named the service name as queue
param number-of-hunt-grps 2 --- we are using 2 hunt groups as earlier defined
param aa-hunt1 2000
param aa-hunt2 3000
param queue-len 15
param queue-manager-debugs 1 --- used with debug command to trace the script

service aa flash:app-b-acd-aa-2.1.2.2.tcl --- named the service name as aa
paramspace english index 1
paramspace english language en
paramspace english location flash:
param service-name queue --- refrencing the service name queue defined earlier
param handoff-string aa
param aa-pilot 1000 --- using pilot number 1000 for which we will define
the dial-peer accordingly
param welcome-prompt _bacd_welcome.au
param number-of-hunt-grps 2
param dial-by-extension-option 3 --- defining the dial by extention option as 3 explicitly

param max-extension-length 4
param second-greeting-time 30
param call-retry-timer 15
param max-time-call-retry 100
param max-time-vm-retry 2
param voice-mail 1002

-- Creating a VOIP dial-peer --

When someone dials the number 1000 it would initiate this dial-peer and the aa service will get activated. the 20.0.0.1 is the loopback address defined for CME

dial-peer voice 1000 voip
service aa
destination-pattern 1000
session target ipv4:20.0.0.1
incoming called-number 1000
dtmf-relay h245-alphanumeric
codec g711ulaw
no vad

-- Now Some diagnostic commands --

CME#call application voice load aa --- loading aa service ( you will need to load this service if you have changed the pre=defined parameters or have added other parameters)

CME#
*Mar 1 00:25:08.519: //-1//HIFS:/hifs_ifs_cb: hifs ifs file read succeeded. size=35485, url=flash:app-b-acd-aa-2.1.2.2.tcl
*Mar 1 00:25:08.539: //-1//HIFS:/hifs_free_idata: hifs_free_idata: 0x67DAA108
*Mar 1 00:25:08.539: //-1//HIFS:/hifs_hold_idata: hifs_hold_idata: 0x67DAA108
*Mar 1 00:25:08.739: //-1//TCL :EE66B155AC000:/tcl_PutsObjCmd: TCL AA: -- Valid mandatory parameter second-greeting-time = 30 --
*Mar 1 00:25:08.787: //-1//TCL :EE66B155AC000:/tcl_PutsObjCmd: TCL AA: -- Valid mandatory parameter call-retry-timer = 15 --
*Mar 1 00:25:08.855: //-1//TCL :EE66B155AC000:/tcl_PutsObjCmd: TCL AA: -- Valid mandatory parameter max-time-call-retry = 100 --
*Mar 1 00:25:08.895: //-1//TCL :EE66B155AC000:/tcl_PutsObjCmd: TCL AA: -- Valid mandatory parameter max-time-vm-retry = 2 --
*Mar 1 00:25:08.951: //-1//TCL :EE66B155AC000:/tcl_PutsObjCmd: TCL AA: -- Valid Mandatory parameter number-of-hunt-grps = 2 --

CME#call application voice load queue --- loading queue service

CME#
*Mar 1 00:25:43.759: //-1//HIFS:/hifs_ifs_cb: hifs ifs file read succeeded. size=24985, url=flash:app-b-acd-2.1.2.2.tcl
*Mar 1 00:25:43.767: //-1//HIFS:/hifs_free_idata: hifs_free_idata: 0x67DAA198
*Mar 1 00:25:43.771: //-1//HIFS:/hifs_hold_idata: hifs_hold_idata: 0x67DAA198
*Mar 1 00:25:44.031: //-1//TCL :EE66B15694000:/tcl_PutsObjCmd: TCL B-ACD: -- Valid optional parameter queue-manager-debugs = 1 --
*Mar 1 00:25:44.071: //-1//TCL :EE66B15694000:/tcl_PutsObjCmd: TCL B-ACD: -- Valid Mandatory parameter queue-len = 15 --
*Mar 1 00:25:44.147: //-1//TCL :EE66B15694000:/tcl_PutsObjCmd: TCL B-ACD: -- Valid Mandatory parameter number-of-hunt-grps = 2 --

CME#sh call application sessions -- nothing showed up as we havn't initiated any call to pilot number yet

CME#debug voice application script -- you can see if you getting hits on the application

CME#csim start 1000 --- testing pilot number of aa 1000

csim: called number = 1000, loop count = 1 ping count = 0

*Mar 1 00:26:21.647: //-1//TCL :EE66B1577C000:/tcl_PutsObjCmd: TCL AA: -- Valid mandatory parameter second-greeting-time = 30 --
*Mar 1 00:26:21.711: //-1//TCL :EE66B1577C000:/tcl_PutsObjCmd: TCL AA: -- Valid mandatory parameter call-retry-timer = 15 --
*Mar 1 00:26:21.747: //-1//TCL :EE66B1577C000:/tcl_PutsObjCmd: TCL AA: -- Valid mandatory parameter max-time-call-retry = 100 --
*Mar 1 00:26:21.795: //-1//TCL :EE66B1577C000:/tcl_PutsObjCmd: TCL AA: -- Valid mandatory parameter max-time-vm-retry = 2 --
*Mar 1 00:26:21.835: //-1//TCL :EE66B1577C000:/tcl_PutsObjCmd: TCL AA: -- Valid Mandatory parameter number-of-hunt-grps = 2 --
*Mar 1 00:26:21.983: //6//TCL :/tcl_PutsObjCmd:
proc init_perCallvars
*Mar 1 00:26:21.987:
*Mar 1 00:26:22.055: //6//TCL :/tcl_PutsObjCmd: TCL AA: +++ B-ACD-SERVICE not registered, Starting B-ACD-SERVICE +++
*Mar 1 00:26:22.519: //-1//TCL :EE66B15864000:/tcl_PutsObjCmd: TCL B-ACD: -- Valid optional parameter queue-manager-debugs = 1 --
*Mar 1 00:26:22.551: //-1//TCL :EE66B15864000:/tcl_PutsObjCmd: TCL B-ACD: -- Valid Mandatory parameter queue-len = 15 --
*Mar 1 00:26:22.591: //-1//TCL :EE66B15864000:/tcl_PutsObjCmd: TCL B-ACD: -- Valid Mandatory parameter number-of-hunt-grps = 2 --
*Mar 1 00:26:22.863: %IVR-6-APP_INFO: TCL B-ACD: >>> B-ACD Service Started <<< *Mar 1 00:26:22.871: //6//TCL :/tcl_PutsObjCmd: TCL B-ACD: >>> B-ACD Service Started <<< *Mar 1 00:26:22.907: //6//TCL :/tcl_PutsObjCmd: TCL B-ACD: >>> Handoff String = aa <<< *Mar 1 00:26:22.975: //6//TCL :/tcl_PutsObjCmd: proc init_perCallvars *Mar 1 00:26:22.979: *Mar 1 00:26:23.175: //6//TCL :/tcl_PutsObjCmd: TCL B-ACD: >>> Stat collection disabled for queue 2000 <<< *Mar 1 00:26:23.227: //6//TCL :/tcl_PutsObjCmd: TCL B-ACD: ++ Message received from IOS ++ *Mar 1 00:26:23.255: //6//TCL :/tcl_PutsObjCmd: TCL AA: ++ Playing Welcome Prompt and options menu ++ *Mar 1 00:26:26.363: //6//TCL :/tcl_PutsObjCmd: TCL B-ACD: ++ Message received from IOS ++ *Mar 1 00:26:26.435: //6//TCL :/tcl_PutsObjCmd: TCL B-ACD: >>> Stat collection disabled for queue 3000 <<<
*Mar 1 00:26:26.443: //6//TCL :/tcl_PutsObjCmd: TCL B-ACD: ++ Message received from IOS ++
*Mar 1 00:26:26.495: //6//TCL :/tcl_PutsObjCmd: TCL B-ACD: ++ Message received from IOS ++
*Mar 1 00:26:45.843: //6//TCL :/tcl_PutsObjCmd: TCL AA: +++ No option selected +++.
csim: loop = 1, failed = 0
csim: call attempted = 1, setup failed = 0, tone failed = 1


---After we placed a call from softphone to pilot 1000 and during the call we ran the following command with output as follows--

CME#sh call application sessions
Session ID 4

App: queue
Type: Service
Url: flash:app-b-acd-2.1.2.2.tcl

Session ID 8

App: aa
Type: Service
Url: flash:app-b-acd-aa-2.1.2.2.tcl



________________________________________________________

Thursday, April 15, 2010

Righsizing CME/SRST

Below is the max ephone numbers per platform as the results of this commit

1. 2811 : CME 42 / SRST 42
2. 2821 : CME 58 / SRST 58
3. 2851 : CME 110 / SRST 110
4. 2801 : CME 30 / SRST 30
5. 3825 : CME 185 / SRST 340
6. 3845 : CME 262 / SRST 720