Play sounds in Lync (including ringtones for incoming calls and IM alerts)

 

 

Registry locations

HKCU\Software\Microsoft\Communicator\PlaySoundFeedback

Allowed registry values

· 0 – Lync will not play sounds when significant events occur

· 1 – Lync will play sounds when significant events occur

Registry value type

REG_DWORD

Default setting

1: Sounds are played in Lync when significant events occur

 

Any time someone calls you or sends you an instant message, a "toast" pops up in the lower right-hand corner of your computer screen. (That's right: just like toast popping up from a toaster.) The Lync toast – like any good piece of toast – notifies of you of the incoming communication:

 

 

In addition to this visual notification, Lync can optionally play a sound any time a significant event takes place. To be more specific, Lync can optionally play sounds to accompany events like these:

 

  • Busy signal
  • Call ended
  • Call error
  • Connecting tone
  • Data sharing invitation
  • Dial tone
  • Howler
  • Incoming call
  • Incoming call in full screen mode
  • Incoming instant message
  • Incoming private line call
  • Incoming Response Group call
  • Incoming team call
  • Muting message
  • New message
  • On hold
  • Outgoing call
  • Redirect call
  • Second incoming call
  • Status alert
  • Untag

 

 

Note. How do we know those are the events that can be accompanied by sounds? That's easy: we spent literally hundreds and hundreds of hours carefully reverse-engineering Microsoft Lync. 

 

And when that didn't work, we looked in Control Panel at the Sound dialog box:

 

 

So how do you turn auditory feedback on and off in Microsoft Lync? There are two ways that we know of to do this. One way is to enable the Play sounds in Lync option in the Lync user interface:

 

 

And the other way? By modifying the HKCU\SOFTWARE\Microsoft\Communicator\PlaySoundFeedback registry value. If this value is set to 1 then Lync will play sounds to accompany significant events. If this value is set to 0 then Lync will remain quiet (at least as far as notifications go) any time these significant events take place.

 

It's entirely up to you.

 

If you're interested in using Windows PowerShell (which we assume you are, seeing as how you're here at the Lync Server PowerShell blog), the following script retrieves the current value of PlaySoundFeedback on the local computer. If you'd prefer to retrieve this value from a remote computer, simply set the value of the variable $computer to the name of that remote computer. For example:

 

$computer = "atl-ws-001.litwareinc.com"

 

As promised, here's the script for retrieving the PlaySoundFeedback value:

 

$computer = "."

 

$registry = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("CurrentUser", $computer)

$key = $registry.OpenSubKey("SOFTWARE\Microsoft\Communicator", $True)

 

$value =$key.GetValue("PlaySoundFeedback",$null)

if ($value -eq 1) {$value = "Yes"}

if ($value -eq 0) {$value = "No"}

Write-Host "Play sounds in Lync (including ringtones for incoming calls" `

    " and IM alerts): $value"

 

And here's a script for actually changing the value of PlaySoundFeedback. In this case, the script enables sound feedback; that's done by setting PlaySoundFeedback to 1. To disable sound feedback, set PlaySoundFeedback to 0, like so:

 

$key.SetValue("PlaySoundFeedback",0,"DWORD")

 

In other words:

 

$computer = "."

 

$registry = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("CurrentUser", $computer)

$key = $registry.OpenSubKey("SOFTWARE\Microsoft\Communicator", $True)

 

$key.SetValue("PlaySoundFeedback",1,"DWORD")

 

Now, what if you want to change the sounds used for a Lync event? Well, that can be done using the Sound dialog box from Control Panel. As near as we can tell, it can also be done by modifying values in the HKEY_CURRENT_USER\AppEvents\Schemes\Apps\Communicator portion of the registry. For example, to change your ringtone, you can modify the Default value found in this registry key:

 

HKEY_CURRENT_USER\AppEvents\Schemes\Apps\Communicator\

COMMUNICATOR_ringing\.Current

 

We won't show you an example of using PowerShell to make this change simply because we didn't do extensive testing on this, and because we assume that this isn't the recommended way to make these changes. However, in playing around with it a little it all seemed to work. Just make sure you use a .WAV file; as far as we know, that's the only format that will work with Lync events.