There are several reasons for Cisco CallManager to play Tone on Hold (ToH) to an endpoint that has been configured for Music on Hold (MoH):
One reason is a mismatch between the codec configuration used by the MoH server and the region in which the endpoint is registered. For example, the MoH server advertised only a capability of G.711 mu-law. If an endpoint is in another region enforcing the G.729 codec, the Cisco CallManager chooses ToH because a stream cannot be played to this endpoint.
If location-based connection admission control is being used and there is no bandwidth available, then Cisco CallManager sends ToH rather than MoH.
If there are no available audio streams, it is because the MoH server has a finite number of unicast streams it can generate. Exceeding this limit causes Cisco CallManager to play ToH.
To resolve this issue, ensure that each of these issues are not causing ToH to be played and restart the IPVMS application service.