How does it work?
- The branch Gateway downloads a music file from a TFTP server into its flash memory & references the file every time a local IP phone request MOH services.
This configuration can be helpful in the following scenarios:
- If you have a multi-site organization with centralized call processing & you want to avoid having branch locations get their MOH audio over the WAN.
- If you have a multi-site organization with centralized call processing & you want to maintain a MOH service even if connection to the central site servers has gone down. (SRST).
Configuration Steps:
- **Assuming everything has been properly configured in the CUCM MOH server for multicast MOH, we are going to focus on the Router/Gateway configuration. This scenario is going to be for a .wav file that will be stored in the routers flash.
1. Go to the interface that connects the phones to the router (Usually the internal GW interface) and input “ip pim sparse-dense-mode”:
GW(config)#interface gig0/1
GW(Config-if)#ip address 192.168.1.1 255.255.255.0
GW(Config-if)#no shut
GW(Config-if)#ip pim sparse-dense-mode
2. Enable IP Multicast routing & ccm-manager music-on-hold in global configuration:
GW(Config)#ip multicast-routing
GW(Config)#ccm-manager music-on-hold
3. Go to your TFTP server & input the music file that you will be using as MOH. It’s very important that you make the audio file .wav. Also make the audio format PCM 8 bit, 8KHz, mono sampling; so that you don’t have any problems with sound quality. The audio format can be edited using windows XP’s “Sound Recorder”. All you have to do is click on File -> properties -> convert now -> & choose the correct settings you need to edit.
4. Once you placed a .wav file in the TFTP server you need to upload the file to the GW flash memory. To do this you need to input the following commands:
GW# Copy tftp: flash:
Address or name of remote host[]? 192.168.1.254
Source filename []? Holdmusic.wav
Destination filename [Holdmusic.wav]? -enter-
5. Now that the .wav file was downloaded to flash, enable the call-manager-fallback settings:
GW(Config)#call-manager-fallback
GW(Config-cm-fallback)#ip source-address 192.168.1.1
GW(Config-cm-fallback)#max-ephones <1-100>
GW(Config-cm-fallback)#max-dn <1-288> dual-line
GW(Config-cm-fallback)#moh holdmusic.wav
GW(Config-cm-fallback)#multicast moh 239.1.1.1 port 16384 route 192.168.1.1
This last command should include the IP address of all the interfaces streaming multicast MOH. It’s also important to point out that the MOH ip address and port number should match what’s configured in the centralized MOH server; under multi-cast Audio Source Information.
6. Once you’re done with the configuration, you can go to the CUCM central MOH server and set the hop count to 1. This is a great way to assure your MOH stream is coming from the router and not the centralized server. You could also enable web access from the phone configuration page in CUCM & input the “holdee” IP address in a web browser to confirm what MOH source is streaming the audio.
7. A Few great commands to help you troubleshoot issues include:
Show ccm-manager music-on-hold
Show ip mroute
Show ip multicast interface
Show ephone moh
Debug ephone moh
Helpful links:
http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cusrst/admin/sccp_sip_srst/configuration/guide/SCCP_and_SIP_SRST_Admin_Guide/srst_appendix_b_.html
https://supportforums.cisco.com/discussion/10207446/moh-router-flash
https://supportforums.cisco.com/document/68401/procedure-allocate-ip-address-and-port-srst-multicast-moh