Saturday, August 9, 2014

Adding Ringtones to 7960G & 7970G phones

CME Router: 3825 w/CME installed
Phones: 2x7960G & 1 7970G – all are registered & using SCCP
TFTP Server: Win2008 running SolarWinds TFTP Server. Connectivity throughout.

I have several ringtones I want to feed to my IP Phones but was having trouble getting the phones to:

1. Recognize that the ringtones were available
2. Getting the phones to find the files

The files are in .raw; I have a tftp server (Win2008) setup and the CME Router can ping the tftp server vice versa.

The ringtones were part of the .tar file I extracted over to the router when installing cme-full-8.0.0.1.tar on it. Problem was, the files were in a folder called Ringtones. From my troubleshooting (focusing on the file structure specifically on the 3825 using Class B), these .raw files need to be placed into “flash:”, not “flash:Ringtones/*.raw”.

I also needed to update the RingList & DefaultRingList .xml files to include all of the Ringtones. And… one last thing, I needed to ‘hand-feed’ each tone to the phones via “tftp-server flash:” on the router.

Is there a way around the Ringtone folder (i.e. flash:Ringtones/*.raw)? There might be / probably is but since I’m just starting the CCNA Voice I’m going to cover how I finally got it to work. I may go back and play with the file structure later when I have more time (format the card to Class C).

**************************

Move the files over to the CME Router:

NOTE: I had these commands in a text editor, added a carriage return (to accept the file name in flash:) and then ‘n’ because my 3825 kept asking if I wanted to erase flash: after copying each file over. So, it looked like this:

   CME# copy tftp://172.16.1.3/Piano1.raw flash:

n

CME# copy tfptp://172.16.1.3/Sax1.raw flash:

n

…etc. for all the files.

Once those were copied over, the DistinctiveRingList.xml & RingList.xml files needed to be updated (If you only have one line on each phone then you can just update the RingList.xml; if you have more than one line then you need to update both…some clarification can be found here(1) and here(2))

Cisco has a pretty good document(3) on the requirements for the PCM file for ringtones and how to update the .xml files

It’s as easy as opening them in a text editor and adding the names of the files in this format:

<CiscoIPPhoneRingList>
<Ring>
<DisplayName>Piano1
</DisplayName>
<FileName>Piano1.raw
</FileName>
</Ring>
<Ring>
<DisplayName>Sax1
</DisplayName>
<FileName>Sax1.raw
</FileName>
</Ring>
</CiscoIPPhoneRingList>

…etc.

The DisplayName is the name of the Ringtone displayed on the phone and the FileName is just that, the name of the file the phone will look for if that Ringtone is selected.

Once updated, save the file and tftp it over to the CME router:

CME# copy tftp://172.16.1.3/DistinctiveRingList flash:

n

CME# copy tfptp://172.16.1.3/RingList.raw flash:

n

I still needed to ‘hand-feed’ the ringtones (or, make them available via tftp-server) to the phones:

CME(config)# tftp-server flash:Piano1.raw
CME(config# tftp-server flash:Sax1.raw

..etc. until all ringtones were accounted for. After that, I restarted the phones

CME(config-telephony)# restart all

And I was finally able to get the phones to recognize the new ringtones.

There are many different ways to do something and this is just one way I figured out how to feed ringtones from a 3825 running on a Class-B CF to one 7970 & two 7960G phones.

HTH – Cheers!

------------------------------------------------------------------

1: https://supportforums.cisco.com/discussion/11114531/distinctiveringlistxml-and-ringlistxml

2: https://supportforums.cisco.com/discussion/11982681/do-ringlist-and-distinctiveringlist-both-need-be-updated

3: http://www.cisco.com/c/en/us/support/docs/voice-unified-communications/unified-communications-manager-express/68483-cme-add-custom-rings.html#conf

 

No comments:

Post a Comment