Thursday, May 12, 2011

Understanding and Troubleshooting Microsoft Exchange Server Integration

#lync #exchange #integration This document introduces you to some of the new client features that are available whenever Microsoft Lync Server 2010 communications software is integrated with Microsoft Exchange Server 2010. Successfully integrating these two enterprise communications solutions can be challenging, especially considering that there are subtle differences in the way that services from each product are leveraged by Lync Server 2010 clients.

  • Version: May2011 Date Published: 5/11/2011 Language: English
  • Microsoft_Lync_Server_2010_Understanding_Exchange_Integration.doc

Download it now (here)

Source: Microsoft Download

Tuesday, May 10, 2011

Enterprise Voice is HOT!

imageTags: #lync #rgs #voice As discussed in earlier blog posts I'm really convinced that Microsoft Lync can replace your (current) sometimes old-fashioned PBX. Besides all the other cool features and business enablers like (virtualization support, collocation components etc) Enterprise Voice is getting more serious now.

Doing various projects now running Microsoft Lync as PBX lot’s of questions are coming up at customers. And I really do understand. So if you have doubts or additional questions feel free to read this blog post and sent me your questions or comments. Lots of questions I got from customers are:

  • Q: Is there something like hunt groups in Microsoft Lync? A: Yes, this functionality is covered by Response Group Service. If your organization has groups of people who answer and manage certain types of calls, such as for customer service, an internal help desk, or general telephone support for a department, you can deploy Response Group to manage these types of calls. The Response Group application routes and queues incoming calls to designated persons, who are known as agents. You can increase the use of telephone support services and reduce the overhead of running these services by using Response Group. TIP: Response Groups can be managed my PowerShell or the (Lync CP). I really recommend to create and maintain your RG”s by PowerShell since it is easy to use and very powerful. This feature is controlled via various PowerShell commands. The commands I used the most.
  • Set-CsRgsAgentGroup -Instance <AgentGroup> [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

    Set-CsRgsQueue -Instance <Queue> [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

    Set-CsRgsConfiguration -Identity <RgsIdentity> [-AgentRingbackGracePeriod <Int16>] [-Confirm [<SwitchParameter>]] [-DefaultMusicOnHoldFile <AudioFile>] [-DisableCallContext <$true | $false>] [-Force <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

    Set-CsRgsWorkflow -Instance <Workflow> [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

    TIP: there are lots of more useful PowerShell cmdlet’s to configure RGS. See the complete list of the cmdlets that ship with Lync Server 2010.

    TIP: You can also open the Response Group Configuration Tool webpage directly from a web browser by connecting to https://<webPoolFqdn>/RgsConfig.

     

  • Q: Is there a music on hold functionality? A: Yes, this functionality is easy to set on each level in your Lync infrastructure via Set-CSClientPolicy Global -EnableClientMusicOnHold:$TRUE and [MusicOnHoldAudioFile] can be used and is used to see where your WMA file is placed. TIP: You can simply place that WMA file on a [UNC-path] centrally. If you are using Lync also from outside of your firewall I really suggest to put this (music)file in Group Policy and set it via that way. When set to True, music will be played any time a caller is placed on hold. When set to False, music will not be played any time a caller is placed on hold. The default value is False.
  • TIP: The Call Park application supports only Windows Media audio (.wma) files for music on hold. The recommended format for Call Park music-on-hold files is Media Audio 9, 44 kHz, 16 bits, Mono, CBR, 32 kbps.

  • Q: Is there functionality for common area phones? A: Lync Server introduces support for common area phones, which makes it possible to use Lync Server to provide phone service and unified communications functionality from common areas, such as building lobbies. Same here Common Area phones can be maintained and configured by PowerShell. Example:  Set-CsCommonAreaPhone -Identity <UserIdParameter> [-Confirm [<SwitchParameter>]] [-Description <String>] [-DisplayName <String>] [-DisplayNumber <String>] [-DomainController <Fqdn>] [-Enabled <$true | $false>] [-EnterpriseVoiceEnabled <$true | $false>] [-LineURI <String>] [-PassThru <SwitchParameter>] [-SipAddress <String>] [-WhatIf [<SwitchParameter>]]

Conclusion: all these features and functionality are well documented and nice to read. I really suggest you download the latest Microsoft Lync Server 2010 Documentation Help File (here) and read how powerful Lync is and how it can replace your existing PBX-infrastructure. Much success while implementing!

Next: lots of new and cool stuff is coming up! If you are interested in how to implement a AudioCodes Mediant 1000 and configure Enterprise Voice in Microsoft Lync check out this weblog one more time Winking smile

Sources: Microsoft Lync Server 2010 Documentation Help File, TechNet

Friday, May 6, 2011

Training, Training and Training

Lots of extra training material is published on Microsoft Downloads. #lync #training #rgs #voice

Lync Phone Edition rollout and TIPS

imageToday I really got a nice opportunity to configure and install the Microsoft Lync Phone Edition 2010 (Polycom CX3000) in a customer network. Since I didn’t touched the “spider phone” much I was really surprised to have one in my hands. More information about the Polycom CX3000 (here).

As many of probably know it is pretty easy to plug in the device but you need to make a step further to make it actually visible in your Microsoft Lync Server environment. Visible as that you can use the device as common are (conferencing) phone and also that the device is updated automatically without any human interference. More information about that part read the documentation how the Device Update Web service is working etc.

I can really encourage you the read the specific (Admin Guides) documentation on how you can configure this. In the basic you need to have the following components in place to make sure this work and provide a solution which is secure.

  • Network Infrasturcture (IP / VLAN)
  • Microsoft Lync Server - deployed (Standard or Enterprise)
  • Microsoft Lync Phone Edition (device like I used: CX3000)
  • (Windows) Server CA (advice: Enterprise CA)
  • DC / DNS / DHCP (with a specific scope configuration)
  • NTP Server

As the IT pro (MSFT) documentation is a very good guidance I would like to share my thoughts on extra material you really should read to make it more clear. First read is absolutely all the good stuff Jeff Schertz created on this blog about updating and configuring the devices (here) more stuff (here). Check also his artcile on Common Area Phones (here). After the read of all these good stuff I would like to point out some things you really need to configure and test to make sure everything is working. As all these items are crucial to make this work.

Good to know is that a device like the CX3000 is going through a bootstrapping process to get connected and fully operational:

  1. Finding the VLAN ID
  2. Obtain an IP Address
  3. Find the Device Update Service
  4. Check for Updates
  5. Obtain Registrar FQDN and Web Service URL
  6. Connect to the Web Service and Download the Root CA Certificate Chain
  7. Authentication Process
  8. Receive and Publish Certificate.
  9. Log on to the Lync Server

Useful tools and (PowerShell)commands:

test-CsPhoneBootstrap

(No device is actually needed in order to run the test.) In order to connect to Lync Server 2010, Lync 2010 Phone Edition-compatible devices need to use Dynamic Host Configuration Protocol (DHCP) to retrieve the address of a Lync Server Registrar; these devices must also provide a valid phone number and associated personal identification number (PIN) in order to be authenticated by the system. (This process is known as "bootstrapping".)

Background: the Test-CsPhoneBootstrap cmdlet enables administrators to verify that a given user -- using the phone number and PIN assigned to him or her -- is able to log on to the system from a Lync 2010 Phone Edition-compatible device. (Source: MSFT)

Example: test-CsPhoneBootstrap –TargetFQDN server01.contoso.local -PhoneOrExt tel:+31123456789 -PIN 12345 -verbose

TIP: Another tip here (as Jeff Schertz already said) while testing do only use one network interface card (active for the bootstrap) as I expect also issues when having multiple network card who are active.

TIP: As a double check I really suggest to trace your switch(es) while testing and setup (and run) a local instance of for example Wireshark during the actual test (on that only activated networkcard). This give you a better understanding about the setup and the stack itself.

TIP: As I discovered it myself make sure for Windows Firewall is allowing the traffic to the specific endpoint ((DHCP server) on the network.

DHCPUtil.exe -EmulateClient

(No device is actually needed in order to run the test.)

DHCPUtil does not configure the DHCP servers by itself. It delegates that responsibility to a script which can be changed to suit the organization’s need. After it calculates the values for various options, DHCPUtil passes these values to a script, which can then take appropriate action. (Source: IT documentation MSFT)

TIP: As I really suggest to run this test from a different machine in the same segment and VLAN as your (conference) phones.

The most interesting part here is while testing it on a machine in the same VLAN / segment and gives you the feedback that you correctly configured the DHCP options. Beneath a result you need to have to make sure your configuration is working (this script was run in my own environment but it should be overall the same).

Example: C:\stufftoinstall\Lync>DHCPUtil.exe –EmulateClient

image

Certificate

After connecting to the Registrar, the first thing the device does is to download the server’s certificate issuer’s chain of trust. This is stored on the device and is used to verify that the certificate the server uses to authenticate itself with. Upon receiving the address of the Registrar and Web Services, the device connects to the web server and downloads the root certificate chain. This is a certificate chain of trust linking the web server to the certificate authority. This assists the device in requesting a certificate for authentication, as well as improving efficiency in subsequent secured communication.

For sure my answer is that NTP is crucial to make this work because during  the actual login process the certificate chain of your rootCA is downloaded and needs to be validated on its timestamp.To validate the certificate chain is actually download review your outcome of the bootstraplogging and search for:

VERBOSE: Target server fqdn or web service url not provided. Will have to do
DHCP Registrar Discovery. 'DHCPDiscovery' activity started.
Starting DHCP registrar discovery... DHCP discovery message send. Waiting for dhcp servers to respond. Response received for the DHCP Discovery message. Found registrar fqdn : frontendpool.contoso.local.
Found web service url :
https://cswebfe.contoso.local:443/CertProv/CertProvisioningService.svc.
DHCP registrar discovery activity completed successfully.
'DHCPDiscovery' activity completed in '1.4601416' secs.
'STActivity' activity started.
Trying to download a certificate chain from web service.
Web Service url :
http://cswebfe.contoso.local/CertProv/CertProvisioningService.svc
Certificate chain downloaded successfully.
'STActivity' activity completed in '3.7707621' secs.
'STActivity' activity started.
Trying to get web ticket.

NTP service

Background: Network Time Protocol (NTP) is the default time synchronization protocol used by the Windows Time Service in Windows Server operating systems. NTP is a fault-tolerant, highly scalable time protocol and is the protocol used most often for synchronizing computer clocks by using a designated time reference.

Microsoft Lync 2010 Phone Edition communications software requires NTP to set the correct time and date for phones running Lync 2010 Phone Edition.Network Time Protocol (NTP) must be configured correctly for the device. See also the good post on the BCUC blog about NTP (here) Thanks Brian!

Microsoft Lync Phone Edition searches for an NTP server in Domain Name System (DNS) by searching for the following:

  • NTP SRV record (User Datagram Protocol, or UDP, port 123)
  • _ntp._udp.<SIP domain> pointing to NTP Server (on your network).

If Microsoft Lync Phone Edition cannot find the NTP SRV record, it will attempt to use http://time.windows.com as an NTP server by searching for the following:

  • NTP A record
  • time.windows.com (as this is not always allowed by firewall restrictions I really suggest my option first is to correctly configure NTP in your own network infrastructure.

Conclusion:

image

Party smileThe best of it is that you have a up and running device at the end and better you got a infrastructure prepared to rollout all kind of devices to rip and replace your legacy and out of support PBX (conference) devices.

Since lots of stuff (and new stuff) is coming up I really recommend downloading Microsoft Lync Server 2010 (Trail) and test if out yourself. Cheers!

Thursday, May 5, 2011

Microsoft Lync Server 2010 Resource Kit

This stuff is really interesting and worth reading. My favorite is Enterprise Voice Winking smile Version: May2011/ Date Published: 5/4/2011 / Language: English #lync #ev

The Lync Server 2010 Resource Kit is the technical reference for the product. This book extends the product planning, deploying, and managing documentation in the Lync Technical Library. This book serves as a companion to the product documentation to learn how the product works under the hood.

The following chapters are available as separate Word documents.

  • Technical Overview
  • New Features Overview
  • Response Group Application
  • SharePoint Integration
  • Enterprise Voice
  • Conferencing and Collaboration
These chapters are also available together in a .zip file.
The Microsoft Lync Server 2010 Resource Kit book is currently being developed. Chapters will be available for download while this book is being completed. For information about the continuing release of chapters, check DrRez.
  • Conferencing_and_Collaboration.doc Download
  • Enterprise_Voice.doc Download
  • Microsoft_Lync_Server_2010_Resource_Kit_Chapters.zip Download
  • New_Features_Overview.docx Download
  • Response_Group_Application.doc Download
  • SharePoint_Integration.doc Download
  • Technical_Overview.doc Download