With Lync Server there are some questions I see coming up about music on hold and I thought I would take a crack at trying to answer some of them and clear some of the smoke and fog rolling across some new Lync administrators minds.
Q.What, the Lync EndPoint Provides the Music on Hold?!
My exact question (including the incredulity) the first time I saw this. But you are reading correctly--Lync Server depends on the endpoint to provide the music on hold.
Q.How Do I Setup Music on Hold on the Lync Client?
In the Lync client click on "Options" and then on "Ringtones and Sounds". As shown on the screen below in the "Sounds" section you will see an option to set the WMA file you want to use as the music on hold. This may be greyed out if the admin has designated this from a policy.
Sure, if a Lync client is configured to provide MOH and works, it will work just with calls through a PSTN gateway as well.
Do note there is no music on hold option if the Lync user is not an Enterprise Voice user so if a non EV user puts someone on hold there will not be MOH. (just a standard "beep beep beep") But if a non Enterprise Voice user calls an EV user and the EV put the call on hold there can be MOH.
Q. What are the different places Music on Hold can be configured in Microsoft Lync?
There are several places that music on hold can be configured in Microsoft Lync:
|Lync Client or Lync Phone Edition||During any audio call: P2P or through a PSTN Gateway|
|Call Park||during call park|
|Response Group||during response group queue time|
|Gateways||when hold button pressed for calls going through gateway|
Q. How Do I Centrally Set the Music on Hold for Users?
This is a snap using a powershell script. Ken's UC Blog does a great job of explaining this. With these powershell scripts you can easily change large groups of Lync users music on hold centrally and ensure they get what the admin wants as music on hold. Or you can be extremely granular and let each decide what they want.
Set-CSClientPolicy –Identity Global -EnableClientMusicOnHold:$true –MusicOnHoldAudioFile “c:\moh\moh.wma”
Note that if you EnableClientMusicOnHold from a policy you also need to designate what music on hold file. Another thing to note: if the Lync client cannot find/reach the file you designate in “MusicOnHoldAudioFile”, it will not change in the Lync client even though you have changed the policy---in other words the Lync client does not blindly change the path and filename if it is not legitamate.
NOTE: After you make these changes you MAY need to wait an hour or more till the changes propagate the whole way down to your client. A great way to ensure the changed came down to your client is to change the WMA file to some location other than the default. You can see then in Lync client exactly when the change has occurred.
Q. I’ve Setup Music on Hold for my Response Group, But When I Press Hold on Lync Client, My Caller Is not hearing that Music on Hold I setup. Why?
When you configure the MOH for a Response Group you are defining the MOH the caller will hear while waiting in the queue, NOT what they will hear when a Lync User presses the hold button. Remember, the endpoint/Lync Client provides the MOH delivered when Hold button is pressed.
Q. What are the Limitations & Requirements of Response Group MOH?
- 4MB or less file
- 16khz, mono, 16-bit Wave file recommended
- 8-bit or 16-bit file supported
- Mono or stereo supported
- Linear pulse code modulation (LPCM, A-Law, or mu-Law format
You have encountered a known issue with Call Park music on hold. Currently rebooting your Lync Server will loose the custom music on hold you have configured. This is a known issue with no current fix as of Jan 14, 2013. See Source: Click Here
A work around is to have a script that runs on server startup to reconfigure the custom music on hold. To communicate your interest in having this fixed please Click Here.
Q.Why Does The Hold Button on My Polycom CX600/500 or Other Lync Phone Edition Device Not Play MOH?
Sorry to break the news friend, but the music on hold button on these devices does not play music on hold. Consolation? If you have a Lync Phone Edition device that is tethered with "Better Together" tether (like how that rolls of the tongue? ;-) then if you press the hold button on your PC Lync client the other user will get music on hold. Yeah, I know--not so cool--but at least on option. (<< seems like an update made this stop working.)
UPDATE: 12/21/2012 If you update your Lync Phone Edition “Aries” devices to 7577.4366, (available here) pressing hold will now play the DefaultHold.wma file to callers. So the steps to get MOH on your LPE devicesQ. How To Setup “Aries” Lync Phone Edition Music On Hold?
Lync Phone Edition Aries devices can now provide MOH by simply upgrading the LPE device. If you update your Lync Phone Edition “Aries” devices to 7577.4366, putting calls on hold will now play the DefaultHold.wma file to callers. At the moment you either use this MOH file or nothing on LPE, there is not way to change this file by admins or users.
Below are my steps to get MOH working on your LPE devices. Using the below instructions instead of KB 2703325 will help avoid a possible snafu related to pre-existing Lync client music on hold set centrally using the MusicOnHoldAudioFile setting in the csClientPolicy commandlet. Onward…
- Update the Aries/LPE device(s) to firmware 7577.4366 (Click Here for Step by Step)
- For Polycom, Aastra or HP devices 7577.4366 Firmware download Click Here
- Set the value of EnableClientMusicOnHold=$true and MusicOnHoldAudioFile="" in the Client Policy using:
- Set-csClientPolicy -Identity <Policy_Identity> -EnableClientMusicOnHold:$true -MusicOnHoldAudioFile=""
- The part where my instructions deviate from the Microsoft KB is the MusicOnHoldAudioFile="". The reason for this is that in my testing the Aries/LPE will not play music if this setting is anything but Null/””.
- Ensure that the Client Policy has had time to propagate down. (could be 2minutes or more)
- Restart the “Aries” phones in question to get the new settings
Below are some things to be aware of Aries MOH feature:
- You cannot change the preset MOH file on the Aries device.
- If you want to use the MOH on the Aries device, you cannot centrally configure the MOH file for the Lync client. The client policy setting “MusicOnHoldAudioFile” MUST equal “”.
- The new LPE/Aries MOH features works fine with Lync Server 2010 or Lync Server 2013 since it is totally a feature of the LPE device.
Q. Does the Hold Button on the Polycom CX300 Play Music on Hold?
Yes! Since the hold button on the USB Polycom CX300/Plantronics Calisto P540 really is merely pressing the hold button on the Lync client it works fine. (Don't you just hate it when a cheaper device has a feature that more expensive unit doesn't? )
Yes, select PSTN Gateways can provided music on Hold. Some Lync PSTN gateways (Audiocodes, NET UX, Ferrari Electronic) will also take the responsibility for providing music on hold to your PSTN callers. The thing to remember here is that only calls going through the gateway will get the music on hold using this method. Federated callers and internal callers will not get MOH.
My notes on Audiocodes Mediant 1000, MSBG800 and MediaPack Gateway Delivered MOH:
- There are 2 ways that MOH can be provided by Mediant & MediaPack gateways:
- by the Call Progress Hold Tone (fixed BEEP, no music)
- or by the prerecordedtones.dat file. (this can be an actual MOH file, of very limited size, in supported gateways) (Note that the changing the Call Progress tones requires a gateway reboot and changing the prerecordedtones.dat does not.)
- By default the Mediant 800 will play the Call Progress Hold Tone when a Lync device put on hold and Lync is not providing MOH
- When a call is transferred this same (irritatingly loud beep) is played to the caller before the transfer happens. Not a good experience and your users will likely ask you to remove it.
- The size allowed for prerecordedtones.dat is as follows
- Mediant 1000 = 2MB
- Mediapack gateways = 200K
- Crazy as it sounds, Audiocodes support (as of 7/24/2012) says Mediant 800 does not support prerecordedtones.dat.
But (whisper) we’ve used a 76k file filled with silence and it seems to work—use this tip at your own risk.(8/30/2012 Note: music on hold via prerecordedtones.dat stopped working in the latest FW. Audiocode’s support says it will be added back in at version 6.6 or 6.8 Msbg800 FW but that is several months out.)
- How to setup MOH on Audiocodes by UnplugthePBX:
My notes on NET UX1000/UX2000 Gateway Delivered MOH
- UX1000 works, but limited to 1MB music file
- UX2000 4MB file
- Enabling Music On Hold at the Gateway Level on NET UX1000/UX2000
- The UX1000 and 2000 can also play a live audio feed using an FXS port on the UX device.
My notes on Ferrari OfficeMaster Gate
- I’ve been told by Ferrari support (NOTE: there are no support URLs to reference ATM and I have not tested this) that OfficeMaster Gate can provide MOH with no file size limitations. (Note: the OfficeMaster Gate product uses a standard HP rackmount server to explain why there are not the normal space restrictions)
- How to setup music on hold on OfficeMaster Gate gateway: http://ucblog.deutinger.de/?p=278
- OfficeMaster Gate: http://www.ferrari-electronic.com/en/products/officemaster-gate.html
My Notes on Dialogic Gateways/SBA
- According to Randy, Dialogic does not support Music on Hold via gateway
Q. Can I Use Live External Source for Lync Music on Hold?
Due to the distributed nature of Lync music on hold from Lync it is not possible.
Currently the music on hold source needs to be a sound file, of a certain type, accessible to the Lync Server (response groups/call park) or the Lync Client (client based music on hold) or uploaded to the PSTN Gateway (audiocodes requires a very specific file type too).
UPDATE: It appears that NET UX series of gateways actually a will accommodate a live audio source. The way they do it through a FXS port on the gateway. (clever guys) To read more details, Click Here.
Q. What Happens If I Press Hold While on a Lync Conference Call?
Will the conference be barraged with hold music? According to alert reader @Darrylr Lync will be smart and recognize that you are on a conference and NOT play Music On Hold to the 200 unwitting conference participants. Nice!
Q. Does snom UC Edition Have a Hold Button That Plays Music on Hold?
Still testing this. Since the snom phones can listen to/use a multi cast stream to provide music on hold to caller they theoretically should be able to provide their own music on hold but I need to verify if they can.
UPDATE: snom UC Edition Firmware 184.108.40.206 does support Lync music on hold. The MOH file is hosted on the deskphone and works using same mechanisms as Lync 2010 PC client. The MOH provisioning is even configured using CSClientPolicy. (At the moment the music on hold file can not be changed via the phone web GUI. It requires a MOH file provision server and XML) To read more about snom UC Edition FW 220.127.116.11Click Here.
Q. Where Does the Lync 2010 Standard “KerChung” (Played To Caller When No Lync MOH is Defined) Come From?
If a UserA, using Lync 2010 client, is put on hold and the other side does not provide music on hold, the Lync 2010 client will provide a default “KerChung” sound every 30 seconds. Where does this come from? It may be a little confusing/unituitive, but it comes from the User A’s Lync client. So to put it another way, if you want to change the standard “KerChung” YOU hear when someone else puts you on hold (and doesn’t provide MOH to you), go into “Change Windows Sounds” on your PC. (Sounds | Program Events | Microsoft Lync 2010 | On Hold) Also be aware that whatever sound you select will be played, then 30 seconds of silence, then repeated.
If you would like to read an article on the laws regarding using downloaded music for music on hold click here. If you just want to get some royalty free music on hold music, below are a few links:
If anyone else has Lync music on hold real life experience they wish to share, please do so in the comments.
Footnotes and Links:
More Details on Setting the Music on Hold (Powershell, etc):