Tuesday, December 21, 2010

Exchange 2010 archive support in Outlook 2007

It's about time...

The Office 2007 Cumulative Update for December 2010 finally includes Exchange 2010 archive support, as well as a bunch of bug fixes.  Strangely, the website for the update doesn't list anything about this support.

Take a look at the article, "Yes Virginia, there is Exchange 2010 archive support in Outlook 2007" on the Exchange Team's blog for details about Exchange 2010 archive support.  The site also explains what Exchange archiving is and how it works with Outlook 2007.

With the release of this update, organizations with Office 2007/Outlook 2007 deployed can benefit from Exchange 2010's archiving and retention features.

Sunday, December 19, 2010

Testing Speech Grammars

In an earlier post I wrote about speech grammars in Lync Server and Exchange Unified Messaging.

Here's a simple VBScript that uses the same speech method to hear how speech-enabled programs pronounce words.  This is useful to determine how these programs will pronounce proper names.
sText = InputBox("Enter the text you want the computer to say.", "Text to Speech")
sText = Trim(sText)

If sText <> "" Then
     set sapi = CreateObject("sapi.spvoice")
     sapi.Speak sText
End If
To accomplish the same thing in PowerShell, use the following:
$Voice = New-Object -com SAPI.SpVoice
$Voice.Speak( "Keith Johnson" )
For example, if you enter my name as it's spelled (Jeff Guillet) you will hear how speech enabled applications mispronounce my name.  In the case of Exchange UM directory lookups, this is also how Exchange expects callers to pronounce my name to find a match.  If you enter the phonetic spelling of my name (Jeff GheeA) you will hear it pronounced correctly. 

By testing different phonetic spellings using these scripts, you can determine what to use for the msDS-PhoneticDisplayName attribute in Active Directory.

Saturday, December 18, 2010

Changing Name Pronunciation in Lync Server 2010

Lync Server 2010 uses speech grammars to make meeting entry and exit announcements.  For example, "Jeff Guillet is now joining" is played to all meeting participants when I join a Lync meeting if the meeting is configured to play announcements.

Lync mispronounces my last name as "Ghill-ett" instead of "Ghee-AY", so I have a vested interest in finding out how to correct this.  :)

Unfortunately, it's not doable in Lync 2010 RTM since Lync reads the user's displayName attribute in Active Directory for announcements.  If I change the displayName attribute to a phonetic spelling of my name, "Jeff GheeA", it affects how my name is displayed to other users in Exchange 2010 and the Global Address List (GAL).  Bummer.  :(

Exchange 2010 Unified Messaging has a more mature way of handling speech grammars.  It uses the msDS-PhoneticDisplayName attribute, if it is set, to pronounce a name.  If msDS-PhoneticDisplayName is not set (it's not by default), Exchange uses the displayName attribute.  You can use ADSIEdit to set the msDS-PhoneticDisplayName value.

This not only affects how Exchange UM pronounces a name, it also affects voice-enabled directory lookups.  For example, if someone using a Outlook Voice Access auto attendant tries to look up my name using the correct pronunciation, "Ghee-ay", Exchange will find a match.  Without setting the msDS-PhoneticDisplayName attribute, users may need to mispronounce my name to find a match.

For a more detailed explanation of Exchange speech grammars, see Speech Recognition of Names by Exchange 2007 Unified Messaging on the Exchange Team blog.

I'm hopeful that Lync will be updated to use the msDS-PhoneticDisplayName attribute in a future release.

Tuesday, December 7, 2010

How to Configure Default Settings for Lync 2010 Meetings

Out of the box, all Lync meetings have the following default properties:
  • All meetings are public meetings
  • Users are allowed to create public meetings
  • The conference ID and the meeting link remain consistent each time the meeting is held
  • Anonymous (unauthenticated) users can attend meetings automatically
  • Users dialing in over a public switched telephone network (PSTN) phone line are automatically admitted to a meeting
  • All members of the company hosting the Lync meeting are designated as presenters when they join a meeting
  • Attendees are not announced as the enter or leave a meeting
While most of these settings can be configured individually using the Lync client (see above), you may find it better to configure these default settings on the Lync server.

With a public meeting (the default) the conference ID and the meeting link remain consistent each time the meeting is held.  That means if you schedule back-to-back meetings, folks in your second meeting might call in early and end up on the first meeting.  If you don’t enable entry announcements, then you're really in for some surprises!

With a private meeting, the conference ID and meeting link change from meeting to meeting.  To change your default meeting type to private, execute the following command in the Lync Management Shell (LMS):
Set-CsMeetingConfiguration -AssignedConferenceTypeByDefault $false
To configure anonymous (unauthenticated) users to be placed in the lobby, rather than automatically join a meeting, execute the following command.  These users remain on hold in the lobby until a presenter admits them to the meeting.
Set-CsMeetingConfiguration -AdmitAnonymousUsersByDefault $false
To place PSTN users in the lobby, rather than automatically join the meeting, run this command:
Set-CsMeetingConfiguration -PstnCallersBypassLobby $false
Presenter settings can be configured using the following command and appropriate switch:
Set-CsMeetingConfiguration -DesignateAsPresenter <None|Company|Everyone>
If you want to configure all meetings to automatically announce when attendees enter or exit meetings by default, execute the following command:
Set-CSDialinConferencingConfiguration -EntryExitAnnouncementsEnabledByDefault $true
Using these commands you should be able to configure the default settings for your company meetings just the way you want.