MOH Configuration

Music on hold is a very useful feature in Call manager which is used for streaming music when you put a PSTN phone or an internal IP phone on hold.

I will discuss briefly how it is configured and how you may use CUCM to stream music from remote gateways.

  1. Go to Media Resources > Music on Hold Source
  2. Check the box ‘Allow Multicasting’ 
  3. Go to Media Resources > Music on Hold Server
  4. Select the device pool – DP-MOH (This device pool should have a region REG-MOH which has G711 codec with all other regions
  5. Create a MRG and select the MOH Server in it – don’t forget to check the box ‘Use Multicast for MOH Audio’
  6. Select the MRG in an MRGL
  7. Assign the MRGL to a device pool and place the gateway in the same device pool
  8. Check IP Voice Media Streaming App (IPVMA) is activated
  9. At the gateway, configure the following

ip multicast routing

Int Loopback 0
ip address 10.10.110.2
ip pim sparse-dense-mode

Int vlan 300
ip address 10.10.201.1
ip pim sparse-dense-mode

(Vlan 300 is voice vlan)

ccm-manager music-on-hold

telephony-service
max-ephone 2
max-dn 2
ip source-address 10.10.210.1 port 2000
moh music-on-hold.au
multicast moh 239.1.1.1 port 16384 route 10.10.110.2 10.10.210.1
create cnf-files

Note: Telephony-service command is very important for the router flash to stream MOH. Even if you are not using SRST, there must be telephony-service or call-manager-fallback command for MOH. Also, the ‘ip source-address’ and ‘max-eph’ ‘max-dn’ is essential.

Verification:

R2#sh flash
-#- –length– —–date/time—— path
1     58084804 Jan 21 2009 12:15:48 c2800nm-adventerprisek9_ivs-mz.124-20.T1.bin
2          720 Feb 11 2009 19:58:34 VLAN.DAT
3          720 Jun 12 2010 09:09:10 vlan.dat
4       496521 Feb 12 2010 18:19:06 music-on-hold.au

4665344 bytes available (59346944 bytes used)

Check that ‘music-on-hold.au’ is on flash.

Do a show ephone summary and check if MOH file is active:

R2#sh ephone summary

hairpin_block:
Max 2, Registered 0, Unregistered 0, Deceased 0 High Water Mark 3, Sockets 0
ephone_send_packet process switched 0

Max Conferences 8 with 0 active (8 allowed)
Skinny Music On Hold Status
Active MOH clients 0 (max 210), Media Clients 0, B-ACD Clients 0
File music-on-hold.au type AU Media_Payload_G711Ulaw64k  160 bytes
Moh multicast on 239.1.1.1 port 16384 via 10.10.110.2
via 10.10.201.1

Do a debug ephone moh and check if router is streaming MOH:

R2#deb ephone moh

Jun 28 23:07:43.299: MoH route If Loopback0 46 10.10.110.2 via 10.10.110.2
Jun 28 23:07:43.299: MoH route If Vlan240 ETHERNET 10.10.201.1 via ARP
R2#
Jun 28 23:07:48.747: MoH route If Loopback0 46 10.10.110.2 via 10.10.110.2
Jun 28 23:07:48.747: MoH route If Vlan240 ETHERNET 10.10.201.1 via ARP
R2#
Jun 28 23:07:50.551: ifs_read flash:music-on-hold.au end of file at 490557 read 5964 = 496521
Jun 28 23:07:50.555: moh tail fill from 24 at 0x4A73816C length 2036

During a HELD call, issue command ‘show ccm-manager music-on-hold’ … this will show the ports/interfaces used for Music on hold streaming.

R2#sh ccm-manager music-on-hold
Current active multicast sessions : 1
Multicast       RTP port   Packets       Call   Codec    Incoming
Address         number     in/out        id              Interface
===================================================================
239.1.1.1         16384   508/508          1    g711ulaw  Lo0

Also you can check the multicast Interface 239.1.1.1 status by using following command:

R2#sh ip mroute
IP Multicast Routing Table
Flags: D – Dense, S – Sparse, B – Bidir Group, s – SSM Group, C – Connected,
L – Local, P – Pruned, R – RP-bit set, F – Register flag,
T – SPT-bit set, J – Join SPT, M – MSDP created entry,
X – Proxy Join Timer Running, A – Candidate for MSDP Advertisement,
U – URD, I – Received Source Specific Host Report,
Z – Multicast Tunnel, z – MDT-data group sender,
Y – Joined MDT-data group, y – Sending to MDT-data group,
V – RD & Vector, v – Vector
Outgoing interface flags: H – Hardware switched, A – Assert winner
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 00:01:01/00:01:59, RP 0.0.0.0, flags: DCL
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Vlan240, Forward/Sparse-Dense, 00:01:01/00:00:00

(*, 224.0.1.40), 02:14:08/00:02:52, RP 0.0.0.0, flags: DCL
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Loopback0, Forward/Sparse-Dense, 02:14:08/00:00:00

Also when the call is on hold:

R2#sh call active voice | i RemoteMedia
RemoteMediaIPAddress=239.1.1.1
RemoteMediaPort=16384

If the remote media IP address shows up as 0.0.0.0 then there is a good chance that you have encountered CSCdz00697.

I will discuss MOH issues in another section.

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: