Retrieving Music On Hold (MOH) Files from CUCM

Author
William Bell
Vice President, Solutions and Products

Recently I was working with a customer that wanted to ensure that remote sites that used SRST enabled routers had access to the same corporate Music On Hold (MoH) audio file whether they were in SRST mode or not.  Unfortunately, they did not have an electronic version of the MoH audio file readily available.  I found a way to download the MoH file from the existing CUCM cluster for distribution.

{readmore}

With CUCM 5.x and later, you no longer use the TFTP service to distribute MoH files to the MoH servers.  Instead, you have to upload the MoH files to the publisher node and any subscriber nodes that are used as MoH servers.

Files can be uploaded using the CCMAdmin portal on each node that requires the file.  However, you cannot download the files already on the server from the CCMAdmin page.  Instead, you have to use the CLI to download the file.

Preparation

You must have a SSH client (to remote terminal to the CUCM node) and you need to have an SFTP server available.  NetCraftsmen recommends either Titan or copSSH on Windows based systems and openSSH on *nix systems.  Titan is a package that must be purchased while copSSH is a port of cygwin and openSSH for Windows systems.

Procedure

  1. Connect (using SSH) to the CUCM node that has the MoH audio server role or the publisher node.
  2. To list the music files use the command: file list activelog mohprep.
  3. You will see a list of MoH files in various formats (ulaw, alaw, g729, etc.). Identify the file(s) you would like to download.
  4. Retrieve the file using the command: file get activelog mohprep/<filename>
    1. You can use specific filename: e.g. mohprep/mymohfile.ulaw.wav
    2. You can use a mask: e.g. mohprep/*.ulaw.wav

During the file retrieval process you will be asked to specify a SFTP server, SFTP user ID, and location.  Keep in mind that the file will be retrieved using the following convention:

/<location specified by user>/<ip or server name>/<date/time stamp>/mohprep/<file(s)>

From here you can edit and/or distribute the files as is required to suit your needs.  In my case, I used TFTP to upload them to the SRST router flash and then configured the SRST router to use the appropriate file.