Long-distance: It’s the

Next-best thing to being there.

Dial-in conferencing.


Typically in these haikus we like to introduce people to all of the really cool features included in Microsoft Lync Server 2010. Today, however, we'd like to introduce you to a truly awful feature: dial-in conferencing.


Now, don't get us wrong: dial-in conferencing is a great piece of technology, and it works like a charm. But consider this: Let's pretend we’ve gone back in time a few years, back to a day when you're having new kitchen appliances delivered to your house. That means you're going to have stay home and let the delivery people in when they arrive. (Or, if you've ever had anything delivered to your house, if they arrive.) Someone says to you, "You'll be at the 2:00 meeting, won't you?" And you say, "No, I can't attend the meeting; I'll be at home."


Yes, those were the good old days, weren't they?


Of course, it wasn't long before it was possible to join a meeting from home, as long as you had a computer and an Internet connection.


Note. Yes, it took practically no time for the computer industry to come up with a way for you to join meetings from home, yet it took that same 12 years to produce Starcraft II. You really have to wonder where their priorities are, don't you?


But even then you were OK. If you didn't have a home computer, or if you didn't have an Internet connection, well, then you couldn't join the meeting. Out of town, staying in a hotel somewhere? You can't join the meeting. Period.


But then Microsoft introduced dial-in conferencing, the technology that enables you to join the audio portion of a meeting using any old telephone, including a cell phone. That was a problem. You might be able to get away with claiming that you don't have a home computer or that you're not anywhere where you can plug into the Internet. But to claim that you don't have a phone, in an era where – in many countries – there are far more phones than there are people? That's not going to cut it. The fact of the matter is this: you no longer have any excuse not to attend that meeting. We still remember the day when dial-in conferencing was first released, and one member of the product team sighed and said, "Now I am become Death, destroyer of worlds."


Note. Well, OK, technically that was Robert Oppenheimer, quoting the Bhagavad Gita when the first atomic bomb was exploded: "If the radiance of a thousand suns were to burst at once into the sky, that would be like the splendor of the mighty one... Now, I am become Death, the destroyer of worlds." Which seemed like overkill compared to having created dial-in conferencing. Granted, atomic bombs possess the power to destroy the world. But at least then you wouldn't have to attend any more meetings.


But the truth is, most people seem to like dial-in conferencing: we've known people to dial in to meetings while on vacation, while driving in their car, even while sitting in a hospital. And so, with that in mind, we introduce four cmdlets that can be used to help manage your dial-in conferencing configuration settings: Get-CsDialInConferencingConfiguration, New-CsDialInConferencingConfiguration, Remove-CsDialInConferencingConfiguration, and Set-CsDialInConferencingConfiguration.


Note. We should point out that there are other cmdlets that are used to manage other aspects of dial-in conferencing, including – to name two – New-CsDialInConferencingDtmfConfiguration and Set-CsDialInConferencingAccessNumber. We've already done a haiku devoted to the CsDialInConferencingDtmfConfiguration cmdlets. We're saving CsDialInConferencingAccessNumber for later.


The CsDialInConferencingConfiguration cmdlets have a very finite set of duties: they help determine the actions that Lync Server takes when users join or leave a meeting. To be a little more specific, there are three meeting properties you can manage using the CsDialInConferencingConfiguration cmdlets:


·         EnableNameRecording. When set to True (the default value), users are asked to state their name before joining the conference. If set to False, users are simply joined to the conference without having to state their name.

·         EntryExitAnnouncementsEnabledByDefault. When this is set to True, announcements are played any time a user joins (or leaves) a conference; when set to False (the default value) announcements are not played any time a user joins (or leaves) a conference. What kind of announcements are we talking about? You'll have to read the next bullet point to find out.

Kind of a sneaky way to get you to read the entire article, isn’t it?

·         EntryExitAnnouncementsType. If you've enabled the EntryExitAnnouncementsEnabledByDefault property (that name does kind of roll off the tongue, doesn't it?) then you can choose to have one of two things happen when a user joins or leaves a conference. If you set EntryExitAnnouncementsType to UseNames, then each person's name will be played when they enter and join the conference. (You'll also need to enable name recording for this to work). Have you ever sat in a meeting and heard something like "Ken Myer is now joining"? If so, then you know exactly what we're talking about.

Incidentally, UseNames is the default value

The other option here is ToneOnly. In that case, a tone will be played any time someone joins or leaves the meeting. That way you'll be aware that someone has joined or left, but there won't be any announcement other than that brief, innocuous tone.


So how does this all work in Lync Server PowerShell? Well, dial-in conferencing settings can be configured at either the global or the site scope, so here's an example that creates a new collection of settings for the Redmond site:


New-CSDialInConferencingConfiguration -Identity "site:Redmond" -EnableNameRecording $False –EntryExitAnnouncementsEnabledByDefault $True –EntryExitAnnouncementsType "ToneOnly"


That's pretty much all there is to it. Use Get-CsDialInConferencingConfiguration to review your current settings; use Set-CsDialInConferencingConfiguration to modify those settings; and use Remove-CsDialInConferencingConfiguration to delete those settings. Fast, simple, and effective.


And now, if you'll excuse us, we have a meeting to go to, and there's no way to get out of that. (Trust us: we've looked.)