How to download music-on-hold (MOH) file from CCM5x 6X 7X server

January 8, 2009

One of the our customer was upgrading his CCM from 5 to  6 but wanted a fresh install of CCM6.x music on hold server (MOH). He installed CCM6 but didn’t have any clue of how to download the MOH file from the older server and put in the new server.

Therefore, he called the EXPERT [of courese me] for help. I never did this in the past so, I had to dig through google and fouund the solution for him and that really worked. I thot this will be helpful to the folks who are looking for downloading a moh file from ccm5/6/7 servers.

Its as easy as drinking a beer in a BAR.

Step#1: SSH to CCM 5/6/7x publisher

Unfortunately, there is no way we can pull moh file via GUI interface. The only way I know is via CLI.

You can use putty.exe if you are a windows  fane or I use ubuntu so i just open a terminal windows and simply use ‘ssh root@ccmip’ to log into call manager publisher. After ssh you will get a prompt similar below:

admin:

Step#2  Setup a FTP server to put  file from moh server to a ftp server.

Setup a SFTP server. I use SSHD as a SFTP server. For windows you can download filezilla sftp server from below url:http://filezilla-project.org/

Create a username and password in sftp. We will use this username and password in step #$

Step#3  List MOH related filesin the call manager

Use a command called “file list activelog mohprep/*” to list all moh files in the mohprep directory.
You will see output similar to below:
admin:file list activelog mohprep/* ← note * means all files
SampleAudioSource.alaw.wav

SampleAudioSource.g729.wav

SampleAudioSource.ulaw.wav

SampleAudioSource.wb.wav

SampleAudioSource.xml

CiscoMOHSourceReport.xml

Step#4 Download the moh files to a SFTP server

Use a command called “file get activelog mohprep/filename”to download above listed file(s).

example:

admin:file get activelog mohprep/ SampleAudioSource.alaw.wav
Enter SFTP server IP: 4.2.2.2 ← SFTP server IP
Enter SFTP username: test
Enter SFTP password: test

Thats all, your file is transferred to the FTP Server and you can use GUI interface to put the file to a new/other call manager publisher.

————————snippet————–

admin:file list activelog mohprep/*
CiscoMOHSourceReport.xml                SampleAudioSource.alaw.wav
SampleAudioSource.g729.wav              SampleAudioSource.ulaw.wav
SampleAudioSource.wb.wav                SampleAudioSource.xml
dir count = 0, file count = 6
admin:
admin:
admin:file list activelog mohprep/*
CiscoMOHSourceReport.xml                SampleAudioSource.alaw.wav
SampleAudioSource.g729.wav              SampleAudioSource.ulaw.wav
SampleAudioSource.wb.wav                SampleAudioSource.xml
dir count = 0, file count = 6
admin:
admin:file get
file get activelog
file get inactivelog
file get install
file get tftp

admin:file get active
admin:file get activelog ?
Syntax:
file get activelog file-spec [options]
file-spec   mandatory   file to transfer
options     optional    reltime months|weeks|days|hours|minutes timevalue
abstime hh:mm:MM/DD/YY hh:mm:MM/DD/YY
match regex
recurs

admin:file get activelog mohprep/SampleAudioSource.xml
Please wait while the system is gathering files info …done.
Sub-directories were not traversed.
Number of files affected: 1
Total size in Bytes: 606
Total size in Kbytes: 0.5917969
Would you like to proceed [y/n]? y
SFTP server IP: 172.16.16.111
SFTP server port [22]:
User ID: push
Password: ********
Download directory: /home/push

This is the script when you add moh file and that gets replicated to all nodes:

[root@ccm5 bin]# more moh_do_backup.sh
#!/bin/bash
#
# moh_do_backup.sh script will make a tar ball for backup targets
#
# SYNOPSIS
# moh_do_backup.sh <log path> <status file path> <target node>
#

#
# Checking parameters
#
if [ $# -lt 3 ]
then
echo “Usage: $0 <log path> <status file path> <target node>”
exit 1
fi

LOGFILE=$1
STATUS_FILE=$2
NODE=$3

echo “0″  > $STATUS_FILE

echo “Starting MOH backup” >> ${LOGFILE}

sudo -u root /bin/tar cvfpP – /usr/local/cm/sftp/mohprep/* 2>>${LOGFILE} | sudo
-u drfuser ssh drfuser@${NODE}

RESULT=$?

if [ $RESULT -gt 0 ]
then
echo “MOH: Backup failed ($RESULT)”  >> ${LOGFILE}
exit 106
fi

#
# update status file to 100%
#
echo “100″ > $STATUS_FILE

echo “MOH: Finished backup” >> ${LOGFILE}
exit 0

[root@ccm5 bin]#
[root@ccm5 bin]#
—————————–end of snippetts——————-

Push

CCIE voice#21569
blog: pushkarbhatkoti.wordpress.com


Turn non-bootable disk into a bootable disk – Cisco CUCM for an example

May 1, 2010

As many of you know that I have not posted anything for a while. That doesn’t mean that I have been hibernating! lol Simply I was busy doing a lot of other new non-UC stuffs.
Recently, I have written a few workbook chapter for one of the CCIE training vendor and didn’t have time to do anything on online.

Now what is the deal with the bootable disk and cisco CUCM?

Well, have you ever stucked at the customer site and feel/saw the  non-recoverable CUCM and wanted to install it from scratch?
Then tried downloading Cisco CUCM ISO images from Cisco.com and then got worried about it’s not booting when popped into the physical server?

Keep on reading…The simple solution for you is keep this (click here to download boot.blf) small bootable file in your pocket and download CUCM ISO image from CCO and then use UltraISO software make non-bootable into bootable disk. No more hassles or waiting for a disk shipped to you via snailmail.

The Concept!

Its very simple, I guess one of those blackmagic which Cisco want to keep secret for obvious reason!. Insert a boot info file (see instruction below how to get it)  into a CUCM iso image.
Make sure you download CUCM non-bootable disks and join both downloaded files (copy -b or cat command on linux). Then use a free software called UltraISO and insert the bootit into the CUCM non-boot disk and burn it as a regular way!
You’ll only need
a) boot info file (BIF)
b) Cisco non-bootable CUCM iso image (combine them)
c)  A UltraISO CD burning software from http://www.ezbsystems.com/ultraiso/
d) A few dead brain cells (well its that simple)


Here are the steps for you:

Step#1:  extract the bootinfo file from exiting Linux destroy!

Download above makelinuxboot.bif file.  Sorry if the URL link is broken, I can’t gaurantee. Alternately you can extract it from existing CUCM or Redhat Enterprise Linux 5 or above bootable disk.
To extract boot info file from a bootable disk
- Install UltraISO on  PC/Laptop
- Insert the existing CentOS 5 or RHEL or existing CUCM Bootable disk .
- Open UltraISO and then go to>Bootable> Extract Boot File from CD/DVD. Save file as a “makelinuxboot.bif” (you can name it anything u like but remember the extension must be .bif)

Step#2: Insert above extracted makelinuxboot.bif file into the non-bootable CUCM image.

-Click on UltraISO> Bootable>Tick on “Generate Bootinfotable”
-Click on UltraISO>bootable> Loadbootfile. Then once it prompts you, select the makelinuxboot.bif file

Step#3: Save the bootable ISO file

- go to UltraISO>File>Save-as>CUCM-Linuxboot.iso

Burn the CUCM-BOOTABLE.iso. Pop the bootable CUCM disk into the server and then next..next.. finish .. bingo!

Hue.. isn’t this simple black magic?

Note: just make sure that the bootable disk of any LINUX OS you are going to extract bootfile info is EL-TORITO standard. The ISO9660 won’t work. I spent about 8 hours just on this issue.

-Push

CCIE#21569 (Voice)


Optus 3G USB dongle with LINUX and Internet Connection

January 4, 2010

Recently, I switchover my choice of Linux destroy from Ubuntu to Open Suse 11.2 and tried connecting to the internet using USB dongle. Kmanager is a default connection maker for using the USB dongle. It works at some stage but its really dodgy and pain!! Sometime it will connect but most of the time it will not. Everytime you connect a USB dongle to the laptop, the SUSE desktop assigns a new USB port id e.g. /dev/ttyUSB0, /dev/ttyUSB3 etc. The Knetmanager takes a while to re-locate the port id.

To over come with above knetmanager issue, I came up with my own scripts which works with wvdial.conf. And it works really great. Make sure when you give at least 1 minute between success connection attempt. If you connect, then disconnect and then reconnect withing 1 minutes, you will see the error:

/var/log/messages

er
Jan  4 16:26:49 linux-kz77 modem-manager: Got failure code 3: No carrier
Jan  4 16:30:28 linux-kz77 modem-manager: Got failure code 3: No carrier
Jan  4 16:31:12 linux-kz77 modem-manager: Got failure code 3: No carrier

and your wvdialer will show like this:
linux-kz77:/etc # wvdial optus1
–> Ignoring malformed input line: “connect “/usr/sbin/chat -V -f /etc/ppp/optus3g”"
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
–> Sending: ATQ0
ATQ0
OK
–> Re-Sending: ATZ
ATZ
OK
–> Modem initialized.
–> Idle Seconds = 300, disabling automatic reconnect.
–> Sending: ATDT*99#
–> Waiting for carrier.

The “waiting for carrier” means, the USB dongle is waiting for a Carrier signal from 3G base station (UMTS or whatever they have).

Here are the steps:

Step1:
Make sure your PPP and wvdialer daemon RPM is installed.

linux-kz77:/etc/ppp # rpm -qa | grep ppp
ppp-2.4.5.git-3.1.i586
linux-kz77:/etc/ppp # rpm -qa | grep wvdial
wvdial-1.60-64.1.i586

Step 2

backup your wvdial.conf and add a connectoin using terminal/cmd prompt.

cp /etc/wvdial.conf /etc/wvdial.conf.bak

touch > /etc/wvdial.conf

vi /etc/wvdial.conf    (and paste below lines to wvdial and save it)

Note: Usernme and passwords are dummy. The phone number is *99# for all 3g providers in Australia. Make sure you check your port ttyUSBn.

To find out which usb port is being used by USB dongle first use ‘tail -f /var/log/message’ and then plug in the USB dongal into your laptop.

tail -f /var/log/message
Jan  4 17:21:33 linux-kz77 modem-manager: (ttyUSB3) opening serial device…
Jan  4 17:21:33 linux-kz77 modem-manager: (ttyUSB3): probe requested by plugin ‘Huawei’

Also note, for simple communication, USB dongle uses 3 ttyUSBx ports. One for data one for command and other for carieer.

linux-kz77:/etc #
linux-kz77:/etc # more wvdial.conf

[Dialer Defaults]
Modem = /dev/ttyUSB3
Baud = 412000
#Init1 = connect “/usr/sbin/chat -V -f /etc/ppp/optus3g”
#Init3 =
#Area Code =
Phone = *99#
Username =test
Password =test
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 0
Compuserve = 0
Force Address =
Idle Seconds = 300
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1

[Dialer optus1]
Modem = /dev/ttyUSB3
Stupid Mode = 1
Baud = 460800
Init10 = lock
Init11 = crtscts
Init12 = modem
Init13 = noauth
Init14 = defaultroute
Username  = guest
Password  = guest
connect “/usr/sbin/chat -V -f /etc/ppp/optus3g”
Init30 = noipdefault
Init31 = usepeerdns
Init32 = nobsdcomp
Init33 = novj

linux-kz77:/etc #

To make a connection:
linux-kz77:/etc #
linux-kz77:/etc # wvdial optus1
–> Ignoring malformed input line: “connect “/usr/sbin/chat -V -f /etc/ppp/optus3g”"
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
–> Sending: ATQ0
ATQ0
OK
–> Re-Sending: ATZ
ATZ
OK
–> Modem initialized.
–> Idle Seconds = 300, disabling automatic reconnect.
–> Sending: ATDT*99#
–> Waiting for carrier.
CONNECT
–> Carrier detected.  Starting PPP immediately.
–> Starting pppd at Mon Jan  4 16:31:51 2010
–> Pid of pppd: 12229
–> Using interface ppp0
–> local  IP address 122.110.83.192
–> remote IP address 10.64.64.64
–> primary   DNS address 61.88.88.88
–> secondary DNS address 211.29.132.12
–> Script /etc/ppp/ip-up run successful
–> Default route Ok.
–> Nameserver (DNS) Ok.
–> Connected… Press Ctrl-C to disconnect <— to disconnect

Some troubleshooting:

Sometime when you make frequent changes in wvdial.conf , all other scripts in /etc/ppp/ needs to be re-initialized. It takes sometime. To quickly overcome form this issue, copy wvdial.conf.bak (fresh unedited wvdial.conf file) to /etc/wvdial.conf and then run wvdial <enter>. then launch wvdial <connection name>

#
linux-kz77:/etc #
linux-kz77:/etc # wvdial optus1
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
–> Sending: ATQ0
–> Re-Sending: ATZ
–> Modem not responding.
linux-kz77:/etc # wvdial optus1
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
–> Sending: ATQ0
–> Re-Sending: ATZ
–> Modem not responding.

linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc # wvdial optus1
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
ATZ
OK
–> Modem initialized.
–> Sending: ATDT*99#
–> Waiting for carrier.
^CCaught signal 2:  Attempting to exit gracefully…
–> Disconnecting at Mon Jan  4 16:53:08 2010

^X

^C
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc # wvdial optus1
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
–> Sending: ATQ0
^CCaught signal 2:  Attempting to exit gracefully…
ATQ0
OK
–> Re-Sending: ATZ
ATZ
OK
–> Modem initialized.
–> Disconnecting at Mon Jan  4 16:53:20 2010
^C
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc # cp wvdial.conf_working1 wvdial.conf
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc # wvdial optus1
–> Ignoring malformed input line: “connect “/usr/sbin/chat -V -f /etc/ppp/optus3g”"
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
–> Sending: ATQ0
ATQ0
OK
–> Re-Sending: ATZ
–> Modem not responding.
linux-kz77:/etc #
linux-kz77:/etc # cp wvdial.conf
wvdial.conf           wvdial.conf.bak       wvdial.conf_working   wvdial.conf_working1
linux-kz77:/etc # cp wvdial.conf.bak wvdial.conf
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc # wvdial
–> WvDial: Internet dialer version 1.60
–> Cannot open /dev/modem: No such file or directory
–> Cannot open /dev/modem: No such file or directory
–> Cannot open /dev/modem: No such file or directory
linux-kz77:/etc #
linux-kz77:/etc #
linux-kz77:/etc # cp wvdial.conf_working1 wvdial.conf
linux-kz77:/etc # wvdial optus1
–> Ignoring malformed input line: “connect “/usr/sbin/chat -V -f /etc/ppp/optus3g”"
–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
–> Sending: ATQ0
ATQ0
OK
–> Re-Sending: ATZ
ATZ
OK
–> Modem initialized.
–> Idle Seconds = 300, disabling automatic reconnect.
–> Sending: ATDT*99#
–> Waiting for carrier.
CONNECT
–> Carrier detected.  Starting PPP immediately.
–> Starting pppd at Mon Jan  4 16:54:33 2010
–> Pid of pppd: 13188
–> Using interface ppp0
–> local  IP address 122.110.41.160
–> remote IP address 10.64.64.64
–> primary   DNS address 61.88.88.88
–> secondary DNS address 211.29.132.12
–> Script /etc/ppp/ip-up run successful
–> Default route Ok.
–> Nameserver (DNS) Ok.
–> Connected… Press Ctrl-C to disconnect

-Push Bhatkoti

CCIE Voice#21569

linux-kz77:/etc #
linux-kz77:/etc # dmesg | grep sierra
[   11.602567] sierra 6-1:1.0: Sierra USB modem converter detected
[   11.604800] usbcore: registered new interface driver sierra
[   11.604802] sierra: v.1.3.7:USB Driver for Sierra Wireless USB modems
linux-kz77:/etc #
linux-kz77:/etc #


How to configure Mobile Voice Access (MVA) in Cisco CUCM 6.x/7x

January 2, 2010

How to configure Mobile Voice Access (MVA) in Cisco CUCM 6.x/7x

Humm.. I am still on Christmas-New year holiday but can’t rest myself, specially when I have nothing to do. In the past 2009, I have been too busy doing so many other stuffs anb I really didn’t have any time left for blogging.
Mobile voice access (MVA) is a fairly expensive to run in an enterprise. Specially the enterprise who are tight on the telecom budget. If you are one of them then I’d recommend not to use this feature since MVA actually hairpin the call and then Teleco charges you for hairpining the call.
Well, again there are always some deals on offer with Teleco(s) which you can put up-front before signing a telecom contract with your preferred Teleco and negotiate with them to include hairpinning call cost to “ZERO”. Telstra or Optus in Australia may provide this kind of deal. hey, after all todays’ Telecom world is very compatitive and everyone wants a customer on board :) . I am sure the upcoming National broadband project will expand the customer experience more.
Well, that is being said, I will not go into the detail about sales stuffs but was just going to give you a pointer. Lets quickly take a deep dive on step-by-step guideline to configure MVA on Cisco Call manager 6x/7x. Well being an old freek of Cisco Voice, I still call it CCM.

Cisco CUCM Feature MVA Concept:
Using Cisco MVA feature, a PSTN phone user (who’ve access to CUCM) can dial into the office DID number (9999 2222 for an example) and can use his mobile phone as a “INTERNAL” phone device. The mobile phone operates in a similar fashion like any other IP deskphone inside the company. In real use, the folks who are working from home this is a life line for them assuming they do not have CIPC or newly CUCM 8 remote agent features.

In the past I used to achieve this functionality by using IPCC script or Unity but now its available within CUCM. Cisco has integrated the IVR script withing MVA and is shipping it with CUCM.

An example: A user with a mobile phone 0412 748 484 dials into his office MVA/DID number 9999 2222, and then CUCM integrated VXML script prompts the user to enter PIN. Once the user enters his/her correct pin, the CUCM system provides a dialtone. After the PSTN user gets a dial-tone, he is just like any other phone inside the CUCM system. The connected user can now ring outside (of course saves his billing), can transfer, can ring any extension, can use MOH etc.
Just a side note, once a user is connected to CUCM System, the following default pre-configured keys are available for call handling:

Put a call in hold *81
Put a call in an exclusive hold *82
To resume a call *83
To transfer a call *84
To conference a party *85

I hope a MVA user won’t go hibernate like a frog during an active MVA call :) duh!

Typical Scenario:
PSTN connected to a Cisco voice gateway (38xx/2800/29xx series router) using ISDN 30 channel E1.
The PSTN gateway is configured for H323 protocol and has been added in the call manager as a H323 trunks. Well why did I choose H323 and not MGCP? Well it’s depend on your choice. I particularly do not like MGCP unliess I “HAVE” to use it in a creepy situation. The H323 is my best friend :) .
Assumptions:
There is only one call manager publisher which is also doing call processing. No subscribers.
The voice gateway is H323
The phones are associated with users and RDP. User pins are already configred.
The calls are already going in/out of the CCM. PRI E1 is up and running.
Remote destination profile (RDP) and Remote Destination Number (RDN) are already configured.
You already know how to create PT/CSS and why to create. You may need to create a separate set of CSS/PT for MVA for security reasons.
Step-1 Change CUCM Clusterwide Parameters for MVA
CUCM admin page>SYSTEM>Service Parameters>
server = IP address of CCM
service= Cisco CallManager

Now you’ll get a new page displayed. Search for “Clusterwide parameter”. Then Under clusterwide parameters change the following parameters under System-Mobility sub-option:
a) Enable Enterprise Feature Access = True
b) Enable Mobile Voice Access (MVA) = True
c) Mobile Voice Access number = 9999 2222 (You can choose your custom one)
d) Matching Caller ID with Remote Destination = Partial match
Once you’ve configured above 4 parameters, “SAVE” it by clicking Save button on GUI page.
Step-2 Configure Mobile Access DN
Media Resources TAB>Mobile Voice Access> and enter below (or your customized ones).
a) Mobile Voice Access DN = 9999 2223
b) Mobile voice Access Partition = “Internal” (it should be accessible from the phones)
c) Locale. = Your local setting (US or whatever)

Step-3 - Voice Gateway (H323) configuration
SSH or telnet to your Voice gateway router and first enable the call hairpinning and a VXML URL:
config t
voice service voip
allow-connections h323 to h323
!
!
! Add the VXML url under application
Application
Service frog http://142.2.64.11:8080/ccmivr/pages/IVRMainpage.vxml
!
!
Note: Verify above application sync with CCM by using the following command:
“ show call application voice frog”
!
dial-peer voice 10 voip
destination-pattern 9999 XXXX ! Normal DID
session target ipv4:142.2.64.11
dtmf-relay h245-alphanumeric
codec g711ulaw
no vad

dial-peer voice 20 voip
service frog
session target ipv4:142.2.64.11
incoming called-number 9999 2222 ! MVA DID Number
codec g711ulaw
no vad
!
!
Note: 142.2.64.11 is CUCM Publisher which has Call processing enabled:)

Step-4 Add H323 Gateway in CUCM/CCM and create Route Group/RouteList
CUCM AdminPage> Device>Gateway>Add New> Select H323 Gateway
a) Device name = 142.2.64.111 (Your Gateway IP Addie)
b) Device Pool = HQ_DP
c) MRG = HQ_MRG
d) Location = HQ_LOC
e) MTP = Check the box
f) Call routing information> Inbound Calls> select all CSS(s) = GW_CSS (or your customized one)

Save all parameters.

Now create a route Group (RG) and add above H323 gateway in the route group.
CUCM AdminPage>Call Routing>RG> add RG
Then create a Route list (RL) and add above RG to this RL. Lets name route list as a MVA_RL
CUCMAdminPage>call routing> RL> add RL

The final hierarchi would be something like this:

RL_MVA_RL>>>RG_MVA_RG>>>H323 GW name

Step-5 Add a route pattern for MVA DID number
CUCM AdminPage>Call Routing>Route Patterns>Add new RP

a) RP = 9999 2222

b) Route List = RL_MVA
c) PT / CSS = whatever,…….
d) call classificaiton = Off-Net
e) Provide Outside Dial Tone = TICK-THIS
Save above.

Step-7 Troublshooting and testing
1. Dial 9999 2222 from you mobile phone (04222 22222 blah).
2. UCM VXML script will answer to your call and you should get a VXML prompt saying “enter your pin”. This is how CUCM authenticates the users.
3. Enter your pin whatever you’ve configured in CUCM for a particular user. This user must have MVA in his profile enabled.
4. Once your pin has been authenticated successfully, you should get a dialtone (same as inside CUCM phone do).
5. Then you can dial whatever and whereever you want. Also can transfer calls, put on hold using the following digits.
a. Put a call in hold *81
b. Put a call in an exclusive hold *82
c. To resume a call *83
d. To transfer a call *84
e. To conference a party *85

well, I hope you’ll find above information useful. If you wish to add /suggest few things please feel free to send me an email.
Good luck and if you are stucked then below are the life saver commands:
1. Make sure your IOS is the latest version. If it doesn’t work try to upgrade your IOS. I stucked when I was running old IOS image and fixed it by using the latest 12.4.(15).
2. Some commands:
For VXML – grab the CUCM MVA/SDL/SDI traces
For H323 Gateway –
– favourite command “debug isdn q931”
- debug voice ccapi inout
- debug voice application vxml all
For more information:
http://www.cisco.com/en/US/docs/voice_ip_comm/cucm/admin/6_0_1/ccmfeat/fsmobmgr.html#

Cheers
-Push Bhatkoti
CCIE voice#21569

CME router: How to divert receiption calls at 5pm and un-divert at 8:30am

August 29, 2009

Recently, I  had a request from my friend asking for a help to divert the CME reception calls at 5pm to a pre-defined mobile number and UN-divert the call at 8:30am when the receptionist started working. I was going to post it last month but due to being busy in project work and other commitments I couldn’t possible get even a minute to post this !!

Anyhow, It took me about 30 minutes to think about the best solution and here is what I came up with and it works perfectly.

If you have any better way to achieve this please let me know.

required: CME router version 4 or 7x (didn’t test on older), any model of cisco router.

Here are the steps:

Steps #1
———————————————————————————

Copy below call-divert.tcl and call-un-divert.tcl in a notepad and save them as .tcl extension

User Access Verification

Username: push

Password:

HQ-CME>en
HQ-CME#dir *.tcl
Directory of flash:/
94  -rw-         108  Jul 17 2009 14:28:02 +10:00  frog.tcl
95  -rw-         481  Jul 17 2009 14:40:20 +10:00  call-divert.tcl
96  -rw-         484  Jul 17 2009 14:40:30 +10:00  call-un-divert.tcl

512065536 bytes total (443867136 bytes free)

HQ-CME#

——————- call-divert.tcl ——————————

HQ-CME#more flash:call-divert.tcl

#
# Copyright (c) 2009 FROG silly billy

# All rights reserved.
# by:            Push Bhatkoti 28 Mar 2009 / CCIE# voice 21569

# title:          Call divert
# name:       call-divert.tcl

# desc:     This script runs in conjunction with IOS KRON which  diverts CME DID number         #                  office phone to a Mobile phone after 5pm

#

ios_config “ephone-dn 50″ “call-forward all 00412733020″
ios_config “end”
ios_config “do wr mem”

HQ-CME#

——————–call-un-divert.tcl————————–

HQ-CME#more flash:call-un-divert.tcl
#
# Copyright (c) 2009 FROG silly bill
# All rights reserved.#
# by:       Push Bhatkoti 28 Mar 2009/ CCIE Voice#21569
# title:    CME router Call UN-divert at 8:30am
# name:    call-un-divert.tcl
# desc:     This script runs in conjunction with ours IOS KRON, which UN-diverts CME DID
#               so that when receiptionist starts in the morning will be able to attend the calls
#
#           * download the file into flash:call-divert.tcl
#

ios_config “ephone-dn 50″ “no call-forward all  004127492820″
ios_config “end”
ios_config “do wr mem”

HQ-CME#

HQ-CME#

Now you’d be thinking what the hell ephone-dn is doing here.  Actually ephone-dn 50 is a receiption octoline here is the sample config of DN.

ephone-dn  50  octo-line
number 2000 secondary 94232000
pickup-group 88
label Nice-Dolls – 3002
description 02 23233002
name Reception
call-forward busy 4222
call-forward noan 4222 timeout 50
corlist incoming INTL-COR
no huntstop
hold-alert 120 originator
transfer-mode consult

IN above ephone-dn, 94232000 is the main DID number which hits CME router and receptionist picks it up and then transfers to the phones.

Step #2:
———————————————————————————

Put the above 2 files in a TFTP server and then copy them into the flash:

HQ-CME#dir *.tcl
Directory of flash:/
95  -rw-         481  Jul 17 2009 14:40:20 +10:00  call-divert.tcl
96  -rw-         484  Jul 17 2009 14:40:30 +10:00  call-un-divert.tcl
512065536 bytes total (443867136 bytes free
HQ-CME#

Step #3:

Final step, Kron about two scripts to run them in a required time. BTW, cron used to be a unix/linux worlds keyword but it seems Cisco has  adapted it by using a fancy word like “Kron” duh!

The original requirement was 5pm calls divert to a mobile phone and 8:30 am call un-divert.

Here is how they should be cron’d:

First two cron policy lists and reference the two .tcl scripts into them:

kron policy-list call-divert
cli tclsh call-divert.tcl  ! for call divert

!
kron policy-list call-un-divert
cli tclsh call-un-divert.tcl ! for call un-divert

Then create 2 kron occurance and put above policy list with required divert / undivert time in them.

kron occurrence call-divert at 14:59 recurring !
policy-list call-divert
Divert receiption call at 4:59pm

!
kron occurrence call-un-divert at 8:29 recurring
policy-list call-un-divert
! Undivert receiption call at 8:29AM
!
If anyone has better solution, please feel free to provide your feedback.

-Push Bhatkoti

CCIE voice#21569


Quick command to test Cisco DSP CHIP on ISR series routers

August 29, 2009

We spent a lot of time in debugging and troubleshooting DSP issue. Recently, I used this DSP test (a hidden one yes) command and it gave me immediately result that the DSP on the router has gone alley and as a result the calls from one location to another one were having issue.

This handy tool has been tested on ISR modules.

Router# test voice driver
After typing out above command, you will see below menu driven options:

Enter VPM or HDV or ATM AIM or NM-HD-xx or HDV2 slot number : 1

C2800 Debugging Section;

1 – FPGA Registers Read/Write

2 – 5510 DSP test

3 – DSPRM test

4 – HDLC32 test

5 – Quit
Select option : 2
5510 DSP Testing Section:

1 – Reset ALL DSPs

2 – Reset 1 DSP

3 – Download DSPware

4 – CHPIR Enable/Disable

5 – Display c5510 ring

6 – Show HPI RAM

7 – Show eHPI memory thru Relay command

8 – Show Controller

9 – c5510 Keepalive Enable/Disable

10 – Download bootloader using indirect slave access

11 – Write HPI RAM

13 – DSP application download

14 – faked dsp crash

15 – Wait in Firmware Restart Indication

16 – Display DSP Keepalive Status

17 – QUIT
Select option : 16
DSP Keepalive Status Display:

=============================

DSP 1 is not UP, State: 5, Keepalive Sent: 0, Skip 0

DSP 2 is not UP, State: 5, Keepalive Sent: 0, Skip 0

DSP 3 is not UP, State: 5, Keepalive Sent: 0, Skip 0

DSP 4 is not UP, State: 5, Keepalive Sent: 0, Skip 0

DSP 5 Not Exist

DSP 6 Not Exist

DSP 7 Not Exist

DSP 8 Not Exist

5510 DSP Testing Section:

1 – Reset ALL DSPs

2 – Reset 1 DSP

3 – Download DSPware

4 – CHPIR Enable/Disable

5 – Display c5510 ring

6 – Show HPI RAM

7 – Show eHPI memory thru Relay command

8 – Show Controller

9 – c5510 Keepalive Enable/Disable

10 – Download bootloader using indirect slave access

11 – Write HPI RAM

13 – DSP application download

14 – faked dsp crash

15 – Wait in Firmware Restart Indication

16 – Display DSP Keepalive Status

17 – QUIT

-Push

CCIE Voice#21569


Cisco Presence Integration with CCM 7x in 20 minutes

June 8, 2009

hehe… not in 10 mintues!! it’s in 20 minutes :)

It has been a long time since my previous posting on this blog. I have been busy doing all sort of bits and pieces!!

It seems that people are finding issues with integrating Cisco Call manager with Cisco Presence server. I have to agree to it because there are very limited documentation available for the public on the net. So I thot to spare some time and post it for the benifit of all.

I’m assuming you have already installed and configured cisco Call manager 7x. Two phones are already registered to it.

Also assuming that you have done basic installation of Cisco presence server. As you know Installing Cisco presence is like installing Yahoo messenger in your windows XP.

The next .. next.. next and finish strategy :) . It’s just the same as you add Call manager subscriber to a Publisher (in 5/6/7x), same secret, same Pub Ip address will be asked during the installation.

Here are the summary steps of integrating Cisco call manager 7x with Cisco presence 7x.

Step#1: Enable presence globally on Cisco Call manager

By default presence subscription is disable on CCM.

System>Service parameter>Cisco Call Manager>

search for “Inter-presence” key word and set “Allow Subscription”

Step#2: Create SIP trunk Security Profile in CCM

Special setting is required for SIP trunk which runs from CCM to Presence.

Copy “non Secure SIP Trunk Profile” to “Presence non-secure SIP trunk Proifle”

Modify below parameters:

  1. Device security mode: Non-Secure

  2. Incoming Transport type: TCP+UDP

  3. Outgoing Transport Type: TCP

  4. Incoming Port 5060 (untick Enable digest authentication)

  5. Enable application Level Authentication UNTICK

  6. Accept Presence Subscription TICK

  7. Accept Out-of-Dialogue REFER TICK

  8. Accept Unsoliciliated Notification TICK

  9. Accept Replace header TICK

  10. Transforms security status UNTICK

Save it

Step#3: Add a SIP trunk now from CCM to Presence

Device>TRUNK>SIP-trunk>

Protocol = SIP

fill below:

  1. Device Name : PRESENCE-TRUNK

  2. Description : blah blah

  3. Device Pool : DP_HQ

  4. Common Dev conf : None

  5. call classification : On-Net

  6. Media resource Grp : MRG_HQ

  7. Location : HQ_LOC

  8. AAR GROUP : HQ_AARG (if not using AAR leave empty)

  9. Packet Capture mode : None

  10. Packet Capture duration: 0

  11. MTP required : TICK

  12. Retry Video call as audio : TICK

  13. SIP information – Desitnation Add: 142.2.64.51

DST is a SRV : UNTICK

  1. Destination port : 5060

  2. SIP PROFILE : Presence non-secure SIP trunk Proifle

Save above.

Step#3: Make your IP Phone presence capable

  1. Register a phone 2001 name it HQ-Phone1

  2. Create end user “test” and associate HQ-Phone1/2001 with the “test” user

  3. Make sure test user is a part of “Standard CCM End User” and “standard CTI enable”

  4. Make sure Primary extension “2001” is selected when you create the above “test” user

Step#3: Add an application user for IPPM and MOC CTI ports

This will be used by Presence server to initiate IP Phone services:

A) Go to > User Management>Application User>

  1. User ID : IPPM

  2. pass : blah

  3. Presence Grp : Standard

  4. Groups : Standard CCM End User

save it

Repeat above “A” steps for moc_user as well. moc_user will be used by MOC CTI user in Presence. All user who want presence using Microsoft MOC client will be associated to this user.

Make sure all “accept” tick boxes are TICKED on moc_user.

B) Go to > SYSTEM>Application Server> Add NEW

add Presence server IP address here I..e 142.2.64.51

save this as well. Damn too many things to save :)

Step#4: Create IP Phone service URL

Go to> Device>Device Settings> IP Phone Service

  1. Service Name : IP PhoneMSG

  2. ASCII Service Name : IP PhoneMSG

  3. Service Description : Blah

  4. Service URL : http://142.2.64.11:8081/ippm/default?name#Device blah

  5. Service Category : XML Service

  6. Service Type : Standard IP Phone Service

  7. Blank

  8. Blank

  9. Enable : TICK

It’s standard Phone URL we create and subscribe in CCM. Nothing new!!

Make sure you copy the correct URL from the DOC CD.

Save above as well.

****Then subscribe above service to HQ phone1/2001*****

Step#5: Enable presence Licensing for each user

Go to> System>License>Capability Assignment>

Then Find the end user you want to assign the presence license.

Tick the user and hit <Bulk Assignment>

a new pop up window with pop-up. Tick both check-boxes in that and save.

  1. Enable CUP – TICK
  2. Enable CUPC - TICK

Step#6: Add CUPC client in CCM for HQ 2001 phone

The trick here is, this is a dummy phone which will control provide HQ Phone1/2001′s presence information to Presence server. Add this dummy presence client and add a HQ2001 DN to it.

Go to> Device>Phone> add NEW

Phone Type : Unified Personal Communicator then hit <NEXT>

  1. Device Name : XXXCISCO

  2. Device Pool : DP_HQ

  3. Phone Button Templ : Personal Communicator SIP blah

  4. CSS : Blah select all common things

  5. Owner user ID : test ← a must

  6. leave everything else default

  7. Device security profile : Unified Personal Communicator Standard

  8. SIP profile : Standard SIP profile

  9. Digest User : test ← a must ** read more about this

    Save everything above :) so far so good , well done :)

    Now add a DN to this above device: (same as HQ phone1 shared one)

  10. Directory Number : 2001

  11. everything else … default or your customizeble >> Save above

Once above dummy device is added, associate this device with “test” user we created previously. Now you remember we have 2 device associated with this user: A) 2001 phone and B) XXXCISCO

Also Make Physical phone DN2001 has “test” user associated with it. This is the last option in line 2001′s setting before “save” button. If this has not been done and you run presence diagnostic it will keep telling you that “No line appreance existed in CCM blah blah”

That s all we needed to do on Call Manager. Now Jump on the Presence BOX.

Step#7: Presence box general configuration:

After installing basic presence, you’ll see presence post install setup screen on your web browser by typing presence Server IP address on your browser and supplying credentials to the login screen.

(hehe, I call it doggie screen, sitting like a dog waiting for your fingers to feed it like dog wait for food :) )

So you’ll see “Post Install Setup” screen with below options:

  1. CUCM Publisher IP address : 142.2.64.11 (default, not changeble)

  2. AXL User : Administrator

              1. (I’m too lazy to create a new one, for production server you must create a new AXL user for security reason.)

  3. Axl password : blah blah..

  4. Confirm password : blah blah <then hit the “NEXT”>

  5. Security password : blah blah (whatever you supplied during installation)

  6. Then hit the “CONFIRM” (Ignore the warning)

    Finally you will get 3 options:

    A) Home B) Status C) TOPOLOGY

  7. Click on “HOME” you’ll see you are in a new home :) i.e. preseence main admin page.

Step#8: Upload License and Activate presence Services

  1. first upload the license if you haven’t done that so far.

  2. GO to > Cisco Unified Servicebility>>Tools>Activate services
    Activate all services, it will take 2-3 minutes.

Step#9: Configure Presence

Jump straight on Presence Admin page>>Diagnostic>System Troubleshootor

Pay attention to RED crossed balls and yellow exclamation ! Signs and fix them one by one.

  1. Under Presence Engine: Click on FIX under “no commnication presence” this will take you to add presence gateway:

    Add NEW>

    Presence Gateway type : CUCM
    description : blah

    Presence Gateway : 142.2.64.11 ← CCM IP

    Double check the settings under below menus:

  2. SYSTEM> CCM Publisher : Check all parameter under this

  3. SYSTEM> Application Listioner>Default class SIP TCP Listioner (make sure its what you have defined in the SIP trunk on CCM – transport method TCP or UDP, both should have the same protocol/port) we are using:
    Protocol = TCP
    PORT = 5060

  4. SYSTEM> Security>INCOMING ACL
    Add NEW> description=blah/all address pattern=all

Step#10: Tune the Presence Engine’s Service parameter (same as we do with CCM)

SYSTEM>> Service Parameter>Select active CUPS Server> Select Presence Engine

  1. Search “Proxy Domain” and set it to : 142.2.64.51 (or domain name)

  2. Search “Transport Preferred Order” and set it to : TCP/UDP/TLS

Step#10: Iconfigure P Phone Messenger on Presence server

Application>IP Phone> Setting

  1. IPPM Application Status : ON

  2. Application user Name : IPPMSG (created in step 3A)

  3. Application Password : blah…

  4. confirm password : Blah

  5. Max Instant message : 25 default

  6. Subscription timeout : 3400 default

  7. Publish timeout : 3600 default

    Hit “SAVE”

Step#11: Select a SIP trunk between Presence to CCM

Tell presence which SIP trunk should be used for pumping calls to CCM.

Presence>>Setting>

  1. CUP CVP Support : UNTICK

  2. MAX Contact List Size : 200

  3. Enable Instalt messeging : TICK

  4. Enable SIP Publish on CUCM TICK

  5. CUCM SIP Publish Trunk : <Select_Your_Trunk><– A MUST

Don’t forget to save after above. Above SIP trunk will be automatically listed in above “5”. This we is the one we created on CCM.

Step#12: Set TFTP address for IP COMMUNICATOR Clients

Application>Unified IP Personal Communicator>Settings

  1. Proxy Listenor : Default Cisco SIP proxy TCP Listenor

  2. Primary TFTP : 142.2.64.11 (CCM pub tftp)

  3. Backup TFTP : 142.2.64.12 (sub tftp) or whatever

LDAP – if you are using LDAP put LDAP parameters there. Else disable it.

Step#13: For MOC client define CTI Gateway

Application>>CUCM CTI Gateway>Settings

  1. Application Status : ON

  2. Application Username : moc_user (make sure its created on CCM as app usr)

  3. Application Password : blah

  4. Confirmed Password : blah

  5. CUCM Address : 142.2.64.11 (CCM address)

Now time to run the Presence troubleshooter again. This will tell you whats remaining and how to fix it. Once those are done, activate the presence and other services and bingo.. you are ready to rocck!! on hang on, oh no!! Still remaining:

  1. MOC integration

  2. Creating users and testing presence

  3. Voicemail integration with Presence

I’m sleepy now, will continue remaining part next day!!

————————————————————————————————————————————

How to integrate Cisco Presence with Call manager

————————————————————————————————————————————

Push Bhatkoti (CCIE voice#21569)


How to check Call manager 6x / 5x / 7x DHCP lease

February 16, 2009

How to check DHCP leases status on cisco CCM 6x

Cisco CCM 5/6/7x still have built-in DHCP server.

Cisco call manager : Obviously, this is a big enterprise level IPTELEPHONY product which really “WORKS”. No product is perfect as every product has its cavete and room for improvement.

One of the issue I came across was the issue with “How to check” what address is allocated to which IP phone.
It was long due in my TODO list but I have been flat out recently at work and didn’t have time to do blog:

Today I just got home and as usual I  was checking my personal email and found an email message from a guy who came through google and hit my  blog asking for the same thing :)
Thanks Leonardo for reminding this.

On Mon, Feb 16, 2009 at 5:11 AM, Leonardo D’Urso <l.durso@gmail.com> wrote:

hi Pushkar

I am an entusiastic reader of your blog, it’s great. I work with cisco ipt since 2002.
I have a question for you. Have you ever configured a dhcp service directly on ccm 6.x?

Any idea if it is possible to display via CLI the dhcp leases or scope like in microsoft dhcp server or
like on cisco equipment (for ex. ios: show ip dhcp bindings)?

kind regards
Leonardo

Leonardo D’Urso

After reading above request, I decided to flock through the CCM and cross this off my “todo list”

In the past, so far I have done 12-16 call manages 5/6x installation but most of the customer were using their dedicated DHCP and a few of them were using Call manager’s built-in DHCP server. Back to CCM 4x days, Cisco used to use Microsoft DHCP server (WIN3k or WIN2k) which was full flag and can tell who have what Address at any given time.

In CCM 5/6/7x there is no easy way to check the DHCP lease(es) allocated to IP phones by the DHCP server.

CCM new boxes are Linux based and the DHCP server implementation is also opensources software.

It’s basically opensource DHCPD daemon (/etc/dhcpd.conf style) which is good and stable but what a shame, this BIG commercial product and it doesn’t give us a GUI or CLI interface to see what address are leased!
I believe Cisco will give it a go and improve it in the future.

For the time being, here is my workaround to find out the leases (not easy method though as i said above).

There is also some other method to know the status of DHCP leases in cisco CCM DHCP server

Basic information can be collected via SNMP or Syslog server:
- CCM sends DHCP alarm/trap alerts to a SNMP platfarm (HPopenview, Ciscoworks etc)
- CCM also sends same alarms/alerts to a preconfigured Syslog server.

Above information are very basic and that still doesnt’ really tells the status of the leases. Its noticeble and I have observed that the SNMP/SYSLOG alert only triggers  when there is something reallly wrong with DHCPD. For example DHCP pool gets full or there are no IP addresses to allocate to DHCP clients.

Above methods are useless as nobody will wait when there is really problem. Everyone want to see the leases when they want and when they feel. Just think about  stressing alert telling “Hey bobby the DHCP server has no IP address”
was sent to you when you were in a night club.

Another way to see the lease alerts could be RTMT tool. but it still doesn’t do the good job. My method 100% shows DHCP leases. Its a bit hard work but really works.

Here is my method which really works, just need to get the root access to the box. To get access to root shell you have 2 ways:

1. Create a remote account from “disk recovery” menu and ask TAC to provide you password.

2. Risky method: the following steps detail the process on how GRUB is reinstalled on the master boot record:

  • Boot the system from an installation boot medium.
  • Type linux rescue at the installation boot prompt to enter the rescue environment.
  • Type chroot /mnt/sysimage to mount the root partition.
  • Then create username as u create in regular LINUX. ‘useradd’ passwd
  • edit /etc/passwd file and set created users userID and GUID to 0:0
  • note: 0:0 is for root
  • after that u can simply ssh it using putty.exe or ssh user@ipaddresofccm

Once you got access to CCM root have a look at this file:

cat /etc/dhcp3/dhcp.conf <———-this is the main DHCPD config file

Here in that file you will not see anything about where lease file will be pointing to. This is by default pointed to

Now create a file which is visible through the operating system CLI (damn CLI).

type touch /common/download/dhcpleases.hehe

now link default dhcpleases.hehe file to dhcpd.lease file which is in /var/lib/dhcp/dhcpd.leases. /var/lib/dhcp/dhcpd.leases is the default file where DHCPD daemon writes all leaes status.

alternately if you are conforteble with Linux u can just simply do this:

Edit the /etc/dhcpd.conf file and just add this line:

lease-file-name “/common/download/dhcpd.leases”

Restart the DHCP daemonn by issueing ‘service dhcpd restart or service dhcp3-server restart’

It will write all status of dhcp leases to /common/download/dhcp.leases file.

Now jump on your CCM friendly (heydid i say friendly?) GUI and download the dhcpdlease.hehe file and u can see who have what leases. So thats all about it.

Those brainless programmers did not think about doing this little job from Administrator point of view. I know there is a RTMT tool but it would be nice to see it somewhere on the GUI.

Another tip on DHCP server:
—————————————–

How to make sure that whatever is configured via CCM GUI under DHCP server is 100% correct and working?
Yes you can confirm this using SQL query commands:

STEP#1: Login using ssh to the CCM server

STEP#2:
- To check DHCP servers: issue “run sql select * from dhcpserver”

- To check DHCP scopes: issue “run sql select * from dhcpsubnet”


Good luck and happy learning…

PS: if you found this article useful, don’t forget to send me a postcard!! hehe..

CCIE voice#21569


How to shrink/purge CCM 4x CDR database

January 26, 2009

Cisco recommends purging CCM 4x CDR database before running DMA tool to migrate CCM 4x to 5x/6x.

You may use either method shown below to reduce the CCM 4 CDR database.



Method#1 (My favourite)

Shrink the database via the SQL Enterprise Manager.

Note: This is done on the Publisher.

  1. Select Start > Programs > MS SQL Server > Enterprise manager.
  2. Choose the Publisher server.
  3. You can either go to the ART database or CDR database, based on which file is large.
  4. Right-click the database.
  5. Select All Tasks > Shrink database and click Files.
  6. Select the database file CDR and CDR_log on the new window.
  7. Shrink each of them.This process takes some time.If the file is still large or SQL is not able to shrink the transactional file, use Solution 3.

Method#2:

For SQL 2000 (Cisco CallManager 3.3 and 4.0), complete these steps to reduce the size of the CDR_log.LDF. This is located at C:\Program Files\Microsoft SQL Server\MSSQL\Data.

Use these commands at the command prompt:

ART
C:\>osql -E
1>use art
2>go

1>backup log art with no_log
2>go

1>dbcc shrinkdatabase (art)
2>go

CDR
C:\>osql -E
1>use cdr
2>go

1>backup log cdr with no_log
2>go

1>dbcc shrinkdatabase (cdr)
2>go

Cheers
-Push CCIE#21569

CCM6x checking replication status and number of nodes in the cluster

January 26, 2009


Step#1 List number of node in the cluster using CLI:

admin: run sql select name,nodeid from ProcessNode

name               nodeid

================== ======

EnterpriseWideData   1

222.22.2.22          4

222.22.2.25          2

Step#2   : Check the replication status of each subscriber/node in the cluster

admin: show perf query class "Number of Replicates Created and State of Replication"

==>query class :

- Perf class (Number of Replicates Created and State of Replication)

has instances and values:

ReplicateCount  -> Number of Replicates Created   = 344

ReplicateCount  -> Replicate_State                = 2

The following list shows the possible values for Replicate_State:

0—Replication Not Started. Either no subscribers exist, or the Database Layer Monitor service is not running and has not been running since the subscriber was installed.

1—Replicates have been created, but their count is incorrect.

2—Replication is good.

3—Replication is bad in the cluster.

4—Replication setup did not succeed.

Noticed 2 means replication status between two serves are okay up and running.

STEP#3 :To check network connectivity and DNS server configuration:

Enter the CLI command that is shown in below:

admin: utils diagnose module validate_network

Log file: /var/log/active/platform/log/diag1.log

Starting diagnostic test(s)

===========================

test - validate_network    : Passed                      

Diagnostics Completed

admin:




How to recover CCM6x admin passwords

January 25, 2009

Recovering CCM Administrator and Security Passwords

This section replaces the section Recovering the Administrator Password in the “Log In to Cisco Unified Communications Operating System Administration” chapter” of the Cisco Unified Communications Operating System Administration Guide for releases 5.0(4), 5.1(1), 6.0(1), and 6.1(1a).

If you lose the administrator password or security password, use the following procedure to reset these passwords.


Note During this procedure, you must remove and then insert a valid CD or DVD in the disk drive to prove that you have physical access to the system. He he .. you must walk to the Server room or a datacenter to do this. Use KVM switch or similar thing to access VGA of CM.


Procedure


Step 1 Log in to the system with the following username and password:

Username: pwrecovery

Password: pwreset

The Welcome to platform password reset window displays.

Step 2 Press any key to continue.

Step 3 If you have a CD or DVD in the disk drive, remove it now.

Step 4 To continue, press any key.

The system tests to ensure that you have removed the CD or DVD from the disk drive.

Step 5 Insert a valid CD or DVD into the disk drive.

The system tests to ensure that you have inserted the disk.

Step 6 After the system verifies that you have inserted the disk, you get prompted to enter one of the following options to continue:

To reset the administrator password, enter a.

To reset the security password, enter s.

To quit, enter q.

Step 7 Enter a new password of the type that you chose.

Step 8 Reenter the new password.

The password must contain at least 6 characters. The system checks the new password for strength. If the password does not pass the strength check, you get prompted to enter a new password.

Step 9 After the system verifies the strength of the new password, the password gets reset, and you get prompted to press any key to exit the password reset utility.


Caution The security password on all nodes in a cluster must match. Change the security password on all machines, or the cluster nodes will not communicate.

Software Feature License Information Omitted from

[root@ccm5 bin]#
[root@ccm5 bin]# pwd
/usr/local/platform/bin
[root@ccm5 bin]#

[root@ccm5 bin]# ./pwreset

********************************************************
********************************************************
**                                                    **
**   Welcome to Platform password reset               **
**   Admin and Security password reset are possible   **
**                                                    **
********************************************************
********************************************************

You will be required to remove, then insert any valid CD/DVD media
in order to prove you have physical access to the system.

To begin you will need to remove any media from the CD/DVD drive.
You may press Control-C at any time to abort.

Remove any media from the CD/DVD drive and press any key when ready…
testing for removal of CD/DVD media
Please insert any valid CD/DVD media.
Press any key when ready…

You must insert the CD/DVD media to continue
Press any key when ready…

Thank you, you may now proceed with Platform password reset.

Enter a for admin password reset.
Enter s for security password reset.
Enter q to Quit.

Source: www.cisco.com


Follow

Get every new post delivered to your Inbox.