Integrating Lync 2010 with Exchange 2010

Articol scris de Paul Roman (MVP for Exchange)

I published a a new article on ExchangeInbox.com web site. If you need to integrate your Exchange infrastructure with Lync this is a good start.

Exchange 2010 and Lync 2010 are designed to improve communication and collaboration within the enterprise. The two are designed to work together but certain steps are required to integrate them together.

Exchange 2010 and Lync 2010 are at the moment two of the hottest products from Microsoft. Both are designed to improve communication and collaboration within the enterprise and together are covering all the requirements for the ultimate communication platform.
Exchange 2010 and Lync 2010 are designed to work together but not exactly out of the box. There are certain steps that need to be followed first. In all we have three areas that may be integrated:
Outlook local client - provides Outlook users with in-context access to the instant messaging, enhanced presence, telephony, and conferencing capabilities of Lync.
Outlook Web App - provides OWA users with web access to instant messaging and enhanced presence.
Voice integration - integrates voice capabilities of Lync with Exchange 2010 voice mail.
This article assumes you already have Exchange 2010 and Lync 2010 infrastructures in place. We also assume that the Lync Enterprise voice is enabled and working.

Exchange 2010 and Lync 2010 are designed to improve communication and collaboration within the enterprise. The two are designed to work together but certain steps are required to integrate them together.

    Exchange 2010 and Lync 2010 are at the moment two of the hottest products from Microsoft. Both are designed to improve communication and collaboration within the enterprise and together are covering all the requirements for the ultimate communication platform.

    Exchange 2010 and Lync 2010 are designed to work together but not exactly out of the box. There are certain steps that need to be followed first. In all we have three areas that may be integrated:

    Outlook local client - provides Outlook users with in-context access to the instant messaging, enhanced presence, telephony, and conferencing capabilities of Lync.

    Outlook Web App - provides OWA users with web access to instant messaging and enhanced presence.

    Voice integration - integrates voice capabilities of Lync with Exchange 2010 voice mail.

    This article assumes you already have Exchange 2010 and Lync 2010 infrastructures in place. We also assume that the Lync Enterprise voice is enabled and working.

    Integrating Outlook local client with Lync server

    All the Outlook 2010/2007 integration features are enabled by default when you install the Lync client. You can control the settings individually using the Lync client, Outlook client, Office Group Policy objects or through Lync Server 2010 in-band policies. Each alternative provides access to different settings as described below.

    Microsoft Outlook 2003 with the latest service pack and earlier versions of Exchange are compatible with Lync 2010 but do not support the full degree of integration. To find out more about Outlook 2003 and Lync client integration check the compatibility matrix.

    1. Control integration via Lync Client

    To access the Lync Client settigns, go to the "Options" button and then select "Personal". The following screen will show up:

    Lync Client Options

    Here you can control:

    • Whether or not Lync is to update presence based on Exchange calendar information

    • Whether we want to save within the "Conversation History" data regarding instant messaging or call logs

    • Whether we want to save Lync contacts in Exchange personal contacts folder

    2. Control integration via Outlook client

    From Outlook you can control if the presence information is displayed next to the person name. In Outlook 2010 | File tab, select Options, click Contacts and access the settings under Online status and photographs.

    Outlook 2010 Lync Options

    In Outlook 2007 go to Tools | Options | Other | Person Names and select Display online status next to a person name

    Outlook 2007 Lync Options

    3. Office Group Policy objects

    There are a number of settings that are available only using Office Group Policy objects. I will not cover each of them here because there are too many. You can find the details in TechNet here:
    Overview of Client Policies and Settings

    4. Control via Lync Server 2010 in-band policies

    All the Outlook 2010/2007 integration features are enabled by default but can be controlled via Lync Server 2010 in-band policies.

    Using the Lync Server Management Shell run:
    Get-CSClientPolicy

    This will give you the client policies configured for use in your organization. If you did not define any custom Client Policy you will get the default Global Client policy shown bellow.

    Client Policies

    If for example you wanted to disable emoticons, you could run the following cmdlet from the Lync Server Management Shell:
    New-CsClientPolicy -Identity NoEmoticons -DisableEmoticons $True

    where "NoEmoticons" is the name that you want to give to this policy

    To apply the newly defined Client Policy next run the following cmdlet:
    Get-CsUser -LDAPFilter "l=Bucharest" | Grant-CsClientPolicy -PolicyName NoEmoticons

    In this case, we filtered the users by using locality LDAP filter. To find out more about Get-CsUser command and LDAP filters check the TechNet Get-CsUser documentation.

    The table that follows lists all the settings that can be modified using Lync Server 2010 in-band policies. This table is available from TechNet here and is being reproduced for your convenience:

    Policy
    Description

    CalendarStatePublicationInterval
    Specifies the amount of time, in seconds, that Lync waits before retrieving calendar information from Outlook and adding this data to your presence information.

    DisableCalendarPresence
    Disables the loading of free or busy data from Outlook.

    DisableFreeBusyInfo
    Prevents Lync from displaying Outlook information about free/busy states to other contacts.

    DisableMeetingSubjectAndLocation
    Prevents Lync from publishing the subject and location information of a meeting. This value is not used if DisableCalendarPresence is set or if the Update my status based on calendar data option is not set.

    DisableOnlineContextualSearch
    When set to True, disables the Find Previous Conversations menu option that appears when you right-click a user in your Contacts list.

    DisablePresenceNote
    Prevents users from selecting or clearing of the corresponding user setting, and disables retrieval of the Outlook Out of Office message.

    EnableCallLogAutoArciving
    Controls the automatic saving of information about incoming and outgoing phone calls. When set to False, the corresponding user dialog box setting is unavailable.

    EnableExchangeContactSync
    When set to True (the default value), Lync creates a corresponding personal contact in Outlook for each person on a user's Lync Contacts list.

    EnableExchangeDelegateSync
    When set to True, enables delegates that a user has configured in Exchange to schedule meetings for that user.

    EnableIMAutoArchiving
    Controls automatic archiving of instant messages to the Outlook Conversation History folder. When set to False, the corresponding user setting is unavailable, but users can still manually save individual conversations.

    ExcludedContactFolders
    Indicates which Outlook contact folders (if any) should not be searched any time Lync searches for new contacts.

    MAPIPollInterval
    For users of Microsoft Exchange Server 2003, specifies how often Lync retrieves calendar data from the Exchange public folders.

    WebServicePollInterval
    For users of Microsoft Exchange Server 2007 and later versions of the product, specifies how often Lync retrieves calendar data from EWS.

    Conclusion

    The integration between Exchange 2010 and Lync 2010 should work easily as long as you are a little bit familiar with both products. It's a task that you should definitely do because it provides you with features that can be very helpful within your company.

    Today we started exploring the integration options focusing on integrating the Outlook Client with Lync Server. In the next part we will continue the discussion. We still have to cover the integration of the Outlook Web App OWA interface and the integration of the Exchange 2010 Unified Messaging Server role.

    One of the coolest features resulting from Exchange 2010 and Lync 2010 integration is to have access to presence and instant messaging in OWA. Today we continue our discussion doing just that.

      In Integrating Lync 2010 with Exchange 2010 – Part 1 we started our discussion focusing on integrating the Outlook Client interface. Today we turn our attention to the Outlook Web App and see how to provide users with Lync functionality through it.

      Integrating Outlook Web App with Lync server

      One of the coolest features resulting from Exchange 2010 and Lync 2010 integration is to have access to presence and instant messaging in OWA. This is a straight forward setup and should work perfectly if you follow these steps:

      • On the Exchange 2010 Client Access Server do the following:

        1. Download the Microsoft Office Communications Server 2007 R2 Web Service Provider

        2. Run CWAOWASSPMain.msi and select a location where to save the files.

        3. From the location selected in the previous point, run the following programs (in this order):

          Visual C++ Redistributable (vcredist_x64.exe)

          Unified Communications Managed API (ucmaredist.msi)

          OCS Service Provider (cwaowassp.msi) - this has to be run from a command prompt with elevated rights

        4. Using Exchange Management Shell run:
          Get-ExchangeCertificate

          In this manner we find out which certificate is used for OWA. You should get a result similar to:

          OWA Certificate

          We need the one that has W as service.

        5. Using the Exchange Management Shell run:
          Get-OwaVirtualDirectory |fl InstantMessaging*

          This returns the current Lync integration settings. You should get a result like:

          OWA Instant Messaging Settings

          This means that for the moment there is no integration between your Exchange 2010 and Lync 2010 servers.

        6. Using Exchange Management Shell run:
          Set-OwaVirtualDirectory "owa (default web site)"
          -InstantMessagingServerName <LyncPoolName>
          -InstantMessagingCertificateThumbprint <Thumbprint>
          -InstantMessagingEnabled $True -InstantMessagingType OCS

          <LyncPoolName> is your current Lync pool name

          <Thumbprint> is the policy thumbprint property. This is one of the policy settings we saw inIntegrating Lync 2010 with Exchange 2010 – Part 1 under Control via Lync Server 2010 in-band policies.

        7. Using Exchange Management Shell again run:
          Get-OwaVirtualDirectory |fl InstantMessaging*

          ...to verify if the current Lync integration settings are as we want them. You should get a result like:

          OWA Instant Messaging Settings

        8. From the command prompt Reset IIS server by running:
          iisreset /noforce

      • On the Lync 2010 front end server do the following tasks:

        1. Open Lync Topology Builder and create "New Trusted Application Pool"

          New Trusted Application Pool

        2. Select "Single computer pool", enter your Exchange Server name under "FQDN" and click "Next"

          Application Pool Settings

        3. Select your Lync Front End pool and click "Finish"

          Application Pool Next Hop

        4. Use Lync Topology Builder to publish the topology just created

          Publish Topology

        5. Using Lync Server Management Shell run:
          Get-CSTrustedApplicationPool

          This will help you check if the Trusted Application Pool was created correctly. You should get a result like:

          Get-CsTrustedApplicationPool

        6. From the Exchange Management Shell run:
          New-CsTrustedApplication -ApplicationId <OWAApp>
          -TrustedApplicationPoolFqdn <TAPFqdn> -Port <AppPort>

          <OWAApp> is the name that you want to give to this Application

          <TAPFqdn> is the Full Qualified Domain Name of your OWA server

          <AppPort> can be any port that is not used for any other service

          This will add Outlook Web App as a trusted application in Lync Server.

        7. Using Lync Server Management Shell run:
          Get-CsTrustedApplication

          ...to verify if we have the right settings. You should get a result like:

          Get-CsTrustedApplication

        8. Using Lync Server Management Shell run:
          Enable-CsTopology

          ...so as to apply the changes we just did at the Lync configuration

        9. Test in Outlook Web App if chat and presence is available

          OWA Presence

        10. A very important aspect is that you can disable or enable chat in OWA for certain users using Outlook Web App Mailbox Policies

          OWA Policy

      Conclusion

      Today we continued discussing how to integrate Lync Server 2010 with Exchange 2010. Here we saw how to enable access to presence and instant messaging in Outlook Web App OWA.

      In the third and final part of this article, we will see how to also integrate the Exchange 2010 Unified Messaging Server role with Lync.

      Exchange 2010 Unified Messaging brings voice and e-mail messaging into one place. Integrating Lync with Exchange we get a voice solution that replaces and is dramatically better than standard PBX solutions.

        In Integrating Lync 2010 with Exchange 2010 – Part 1 we started our discussion focusing on integrating the Outlook Client interface. In Integrating Lync 2010 with Exchange 2010 – Part 2 we turned our attention to the Outlook Web App and saw how to provide users with Lync functionality through it. Today we conclude this series by integrating the Exchange 2010 Unified Messaging Server with Lync.

        Exchange 2010 and Lync 2010 Voice Integration

        Exchange Server 2010 Unified Messaging helps you get voice messaging and e-mail messaging into one place, accessible from a normal phone or a computer. Integrating Lync Server 2010 with Exchange we get a voice solution that replaces and is dramatically better than standard PBX solutions. Here are the steps needed to achieve this integration.

        1. Install Exchange UM Role - I will not cover this aspect here. This is well documented at the Microsoft site, check:
          Install the Exchange 2010 Unified Messaging Server Role

        2. Configure certificates - Make sure that you have digital certificates installed and configured on each UM server. The certificates have to be issued by a root CA trusted by the Exchange and Lync servers.

          • To find out if a certificate is in use for UM, from the Exchange Management Shell run:
            Get-ExchangeCertificate

            UM Certifcate

            The one that has U as service is the one that you need.

          • If no certificate is selected for the UM role, at the Exchange Management Shell on the server(s) that have the UM role installed, run:
            Enable-ExchangeCertificate -thumbprint <CertificateThumbprint> -Services UM

            <CertificateThumbprint> is the thumbprint of the certificate that will be used for this service.

        3. Create and configure an Exchange UM SIP dial plan.

          You need to create a SIP dial plan on the Exchange UM server and then associate the Unified Messaging servers to it.

          • On the Exchange UM server, using the Exchange Management Shell run:
            New-UMDialPlan -Name UMDialPlan
            -NumberOfDigitsInExtension 5
            -URIType SipName
            -VoIPSecurity Secured
            -CountryOrRegionCode 44

            This will create a new Dial Plan with the following settings:
            UMDialPlan - the name of the new dial plan
            5 - the number of digits available in the extension number
            SipName - means that this dial plan will support SIP URIs
            Secured - means that the traffic will be encrypted using mutual Transport Layer Security (TLS).
            44 - is the region code for UK.

          • Next using the Exchange Management Shell run:
            Set-UMServer -Identity UMExch -DialPlans UMDialPlan -UMStartupMode TLS

            This will configure the server UMExch to use the UMDialPlan just created and to start the UM service in TLS mode.

          • Restart the Exchange UM service

        4. On the Exchange UM server create and configure a new AutoAttendant.

          The UM auto attendant enables the Unified Messaging server to answer incoming calls.

          Using the Exchange Management Shell run:
          New-UMAutoAttendant -Name UMAutoAttendant
          -UMDialPlan UMDialPlan
          -SpeechEnabled $true
          -PilotIdentifierList +4400000
          -Status Enabled

          This will create a new auto attendant named UMAutoAttendant that will be speech enabled and answers to the +4400000 number

        5. On the Exchange UM server run the exchucutil.ps1 script

          From the scripts folder on the Exchange UM server (usually C:\Program Files\Microsoft\Exchange Server\v14\Scripts) using the Exchange Management Shell, run the exchucutil.ps1 script.

          This will perform the following tasks:

          • Grant permission to Lync Server to read Exchange UM AD objects like the SIP dial plans created in the previous task

          • Creates a UM IP gateway object for each Lync Server Enterprise Edition pool or Standard Edition server

          • Creates an Exchange UM hunt group for each gateway

          Before running this script you need to make sure that all the AD replication has completed and that the Dial plan you created in 3 (Create and configure an Exchange UM SIP dial plan) was replicated.

        6. Configure Lync Server dial plans

          For Exchange Server 2010 RTM the Enterprise Voice dial plan has to have a name that matches the Exchange UM dial plan FQDN.

          For Exchange Server 2010 SP1 or later, the Lync Server dial plan and Exchange UM SIP dial plan names do not need to match.

          On the Lync Server run the Exchange UM Integration tool, ocsumutil.exe (C:\Program Files\Common Files\Microsoft Lync Server 2010\Support\OcsUmUtil.exe).

          Exchange UM Integration Utility

          This tool will create Subscriber Access and Auto Attendant contact objects. It will also validate that there is an Enterprise Voice dial plan with a name that matches the Exchange UMdialplan FQDN. If you are running Exchange Server 2010 SP1, the dial plan names do not need to match, and you can ignore the tool's warning about this.

          • Click Load Data to get the information from Active Directory. This will bring you a screen like this:

            SIP Dial Plans

          • Click Add to add a Subscriber Access contact

            Exchange UM Subscriber

          • Click Add to add an Auto-Attendant contact

            Exchange UM AutoAttendant

          • Finally you should get a screen like this. You can safely ignore the warning if you are using Exchange 2010 SP1 or later

            Completed Dial Plan

        7. Enable Enterprise Voice users for Exchange UM

          The last step that you need to do is to enable Voice users to be able to use the Exchange UM. To do that, run the following Exchange Management Shell cmdlet:
          Enable-UMMailbox -Identity testuser@testdomain.com -UMMailboxPolicy UMPolicy -Extensions 12345 -SIPResourceIdentifier testuser@testdomain.com -Pin 23753465 -PinExpired $true

          This will enable testuser@testdomain.com for ExchangeUM.

          To find out more about this command check the TechNet documentation for Enable-UMMailbox.

        Conclusion

        This completes our journey in the integration of Exchange 2010 and Lync 2010. Once you are a little bit familiar with both products, getting this to work is fairly easy.

        Integration pays dividends in terms of productivity as users are able to employ both products through the same interfaces they work with every day. So it is definitely worth the effort. Integration should indeed be at the top of your priority list once these two products are deployed.

        comments

        0 Responses to "Integrating Lync 2010 with Exchange 2010"