I hear the voices

But the names remain unknown.

I need to press 3.


You know, there are two great things about working at Microsoft. The first is knowing that any day could be the day that you change the world for the better. Have any of our Lync Server PowerShell haikus managed to change the world for the better? Well, not that we're aware of. But hey, today could be the day!


The other great thing about working at Microsoft is that you get to learn the technical names for common, everyday things. For example, you know how you occasionally use the telephone in an interactive manner, like pressing 1 for English or pressing 2 to speak to a customer support person? Of course, everyone knows that; if you were to walk up to someone and say, "Did you know that you can use the telephone in an interactive manner?" well, let's just say that they won't be too terribly impressed with you. Ah, but suppose you walked to that same someone and said, "Did you know that, when you use the telephone in an interactive manner, you're actually using dual tone multi-frequency dialing?" In that case – well, come to think of it, in that case they probably won't be all that impressed with you, either. But at least they’ll know what DTMF stands for.


Um, dual tone multi-frequency, remember?


Note. Here's another way to try and impress people: although we often talk about "touch tone" phones in reference to any phone that uses pushbuttons rather than a dial, "touch tone" is actually a registered trademark of ATT. Because of that, it would be more correct to speak of DTMF phones unless you were specifically talking about a phone made by ATT.


Well, we did say that it was a way to try and impress people. We didn't say it would work.


As it turns out, DTMF is also an important part of Microsoft Lync Server 2010. What's that? Name one instance where DTMF is used in Lync Server? Believe it or not, we were just about to do that. As you probably know, Lync Server's dial-in conferencing feature enables users to use a standard telephone (like, say, a DTMF telephone) to join the audio portion of a conference. By default, users who dial-in to a conference can perform a number of tasks by using their telephone keypad. Want to hear the names of all the other people participating in the conference? Then just press 3, the key that activates the "private role call" feature. Want to mute/ummute yourself? That's what the 6 key is for. Want to hear what various features are available to you, and which key you need to press in order to activate that feature? Press 1.


Etc., etc.


As an administrator, you can use the CsDialInConferencingDtmfConfiguration cmdlets (Get-CsDialInConferencingDtmfConfiguration, New-CsDialInConferencingDtmfConfiguration, Remove-CsDialInConferencingDtmfConfiguration, and Set-CsDialInConferencingDtmfConfiguration) to manage the DTMF options available to your dial-in users. For example, suppose, for some reason, you no longer want presenters to have the option of muting all the other conference participants, something they can do by default by pressing the 4 key. That's fine; in that case, all you have to do is set the AudienceMuteCommand to a null value:


Set-CsDialInConferencingDtmfConfiguration –Identity global –AudienceMuteCommand $null


Or maybe, under your old phone system, you could mute the other participants by pressing 7, the key Lync Server uses to lock and unlock a conference. That's fine; if you don't want to make your users learn a whole new system, just swap the keys used for audience muting and locking and unlocking a conference:


Set-CsDialInConferencingDtmfConfiguration –Identity global –AudienceMuteCommand 7 –LockUnlockConferenceCommand 6


It's that easy. Keep in mind, however, that each key can only be assigned to a single command. Why did we swap keys in the preceding command rather than simply assign the value 7 to AudienceMuteCommand? You got it: because then we'd have the same key assigned to two different commands (AudienceMuteCommand and LockUnlockConferenceCommand) and that's a no-no. You either need to swap keys (like we did) or null out one of the two commands, meaning that the command in question will no longer be available to users:


Set-CsDialInConferencingDtmfConfiguration –Identity global –AudienceMuteCommand 7 –LockUnlockConferenceCommand $null


By the way, the DTMF configuration settings can be applied at the site scope as well as the global scope. That might come in handy, especially if users in other parts of the world are used to different sets of DTMF commands.


That should be enough to impress anyone. Just in case, though, we thought we would mention that DTMF tones have long attracted a sort of cult following, a cult based on people who like to use their telephone keypads to play music. In that spirit, here are the keypad presses needed to play Happy Birthday to You:


1   1   2   1   6   3   1   1   2   1   9   6


1   1   #   9   6   3   2   #   #   9   6   9   6


We might mention that the author of today's haiku tried this out himself, and it sounded exactly like the way he plays Happy Birthday on the piano.


But, then again, he doesn't actually play the piano.