#Lync Question 44: What SQL collation should I use

I have been asked this question quite a few time now.

As much as I believe (according to a few SQL administrations) it is best practice to match the server collation with the database collation for performance reasons for Lync you really don’t want to this.

The server collation should be Latin1_General_CI_AS

If you interested all the Lync Server 2013 databases use Latin1_General_BIN collation, this is a case sensitivity collation and if you happen to match the collation then you will probably run into issues with mirroring the archiving and monitoring databases as they their database naming is mixed case.

#Lync Question 37: How do I control the Personal Information Manager (PIM) setting in the Lync client

I am working at the moment on a large IBM Notes/Sametime migration which will implement Microsoft Lync and Exchange whereby Lync is being delivered to users before they get their Exchange mailboxes due to the quantity of data being migrated.

There are a few challenges with this whereby some functionality (to name a few) can’t be delivered:

  • IM Conversation
  • Call History
  • Calendar Integration
  • Voicemail

By default the Lync client will look for the autodiscover.sipdomain DNS record in order create a connection to Exchange Web Services (EWS).  If Outlook is installed then some functionality will come directly from Outlook via MAPI, which itself will by default use the service connection point (SCP) from Active Directory when using on-premise Exchange otherwise will use autodiscover DNS records or SRV record.

In my case, if a mailbox can’t be found then the Lync client will ask for authentication, (per below) it bit like Lync Phone Edition.  With the Mobility Policy you can disabled Exchange integraiton


If you go into Tools -> Options, in the Personal tab, there is the Personal Information Manager (PIM) settings whereby you can set it to None.

If you interested this setting when set in the client is actually written to the backend database and if you logon to another Lync client with the same user, the setting follows the user.

With download -level clients (i.e. Lync 2010) you could control this on a machine via the registry.

Configuring the personal contacts store on client computers for Lync Server 2013

However this does not work for Lync 2013, however it is possible to control this via a Client Policy Entry using either of the below:

$ClientPolicy = Get-CsClientPolicy "Global"
$ClientPolicyEntry = New-CsClientPolicyEntry -Name "PersonalContactStoreOverride" -Value "1"
Set-CsClientPolicy -Instance $ClientPolicy


$ClientPolicyEntry = New-CsClientPolicyEntry -Name "PersonalContactStoreOverride" -Value "1"
Set-CsClientPolicy -Identity "Global" -PolicyEntry $ClientPolicyEntry

The great thing about this is (for me) that it can be revered back at a later date once the user’s have Exchange mailboxes or it is possible assign an specific client policy which grants PIM, IM and Call History for groups of users.

#Lync Question 34: Can I stretch a pool between two datacentres

Although I did cover why you can’t stretch a Front-end pool between two datacentres in: #Lync Question 4: Can I stretch a 2013 Front-End pool between two datacentres

So what about the other Lync pools?

Officially “Stretched pools are not supported for the Front End, Edge, Mediation, and Director server roles.” per Supported Lync Server 2013 Topologies

However they are support oddly for persistent chat server pools per Using a stretched Persistent Chat Server pool for disaster recovery


Supported Lync Server 2013 Topologies

Using a stretched Persistent Chat Server pool for disaster recovery


#Lync Question 30: Can you make a Lync/Skype call to an Xbox One Console

For businesses with travelling users it is an important use case to provide a means of communicating with friends/family whilst away from home.

Today (March 2014) the Skype/Lync integration (V1) is limited to audio calling only and yes peer-to-peer audio calling works to Xbox One!  both initiated from Lync and from the Xbox One.

During Lync Conference 2014 it was announced V2 integration will be released later in CY2014 and will introduce video calling.

During the Q&A in “Technical deep-dive into Lync-Skype Video” session by Carl Olivier and William Looney at Lync Conference 2014 it was asked whether video calling would work to the Xbox One and yes it will!

#Lync Question 23: What is Enhanced Presence Privacy

Another one of these topic that come up again and again.

With enhanced presence privacy, a user’s presence is visible to contacts in his or her Contacts list but not to other people within the organization.

However this is a topic that comes with the thought of employees bothering Exec’s/CEO/Chairman and often comes up after deployment of a new IM platform, however ultimately any employee can pick up the phone and ring an Exec/CEO/Chairman althought they might just end up speaking to their personal assistant.   I am hearing less and less of this argument now, the world is moving on now.

The enhanced presence privacy feature is more for European countries which have laws which require privacy rather than individuals wishing it.  Enabling enhanced presence privacy mode is not without its own issues do to enabling it on a pool level and being closed by default which is the privacy requirement and user education (settings in Options/Status in Lync client) to make it public which is unlike to actioned therefore organisations would have little to no presence as thus removes one of the core benefits of Lync and Microsoft UC.

Due to the result of being enabled on a pool level, typically with large deployment, you would have to dedicated a Front-End Pool (or SE) for users in a country with privacy requirements so it don’t effect the overall presence availability for the other users outside of the specific locations with the privacy laws.

The public/private setting from the client is one of a few that stored in the Lync User Database on the back-end server as it need to be maintained across all clients and device for a user rather than in the local registry of the client.

Earlier is year (2013), a 3rd party tool called ‘Lync User Management Tool (LUMT)’ this allows a Lync Administrator to change the setting for a user/s which is good for situations whereby enhanced privacy mode can be enabled (thus everyone is private) and using the LUMT as part of provisioning everyone can be set to public by default.  This is great for smaller deployments and overcomes the issue with enhance presence privacy being pool level.


Lync User Management Tool (LUMT)

Configuring Enhanced Presence Privacy Mode


#Lync Question 17: Can you setup Oauth between On-Premise Lync Server 2013 and Office 365

Having somewhat gone round the houses with this with a hybrid deployment recently as both:

  • High-resolution Contact Photo in Lync 2013 client and Lync Web App.
  • Archiving Content (IM and Meeting) in Exchange.

Are supported with Lync Server 2013 On-Premise with Exchange Online per:

Supported Lync Server 2013 Hybrid Configurations

Both of which required Unified Contact Store (UCS) which has a prerequisite for Oauth.


Exchange Server and SharePoint Integration Support

“Server-to-server authentication between an on-premises server and an Office 365 component is not supported in this Lync Server 2013 release. Among other things, this means that you cannot set up server-to-server authentication between an on-premises installation of Lync Server 2013 and Microsoft Exchange 365.”

Note: “this Lync Server 2013 release” having opened a support case Oauth is not currently possible.

So it maybe following the O365 upgrade/transition from 2010 to 2013 is completed and/or another update to Lync Server and/or Office 365.

#Lync Question 12: What is new in Lync 2013 Client CU1

Apart from the usual stability and performance improvements, there are the following:

  • Under Lync Options and then Alerts there are the following new options
    • Enables users to hide offline contacts in the contact list.
    • Enables users to receive buddy invites from untrusted networks.
  • Improves the support for high dots per inch (DPI) displays, for Microsoft Narrator, and for other accessibility features.
  • Fixes bugs that are related to Location sharing and settings.
  • Fixes bugs that are related to Tabbed Conversations.
  • Enables participants to join online meetings by dialing out to their telephone number if online meetings are scheduled by a non-audio-enabled Lync 2013 user.
  • Improves the handling of devices that have both a front-facing and rear-facing camera.
  • Improves the user experience when you join a Lync meeting in a Lync Room System-enabled room.

The following updates are included in this release:

  • 2760512
  • 2767852

However there is no real details what this are/were….maybe nothing/maybe something is coming with CU1 for server?  maybe just the above.

There are two sets of updates Lyncloc and Msores

To enable these Lync 2013 updates, make sure that both the Lyncloc package and the Msores package are installed.


Description of the Lync 2013 updates: February 2013

#Lync Question 10: How do I test Lync Win8 App and Lync Mobile App connectivity

With the Microsoft Lync Connectivity Analyzer tool

(64 bit) http://www.microsoft.com/en-us/download/details.aspx?id=36535

(32 bit) http://www.microsoft.com/en-us/download/details.aspx?id=36536

Microsoft Lync Connectivity Analyzer helps Lync administrators find out if the deployment and configuration of their Lync Server environment meets the requirements to support connections from Lync Windows Store app for Windows 8 and Windows RT and from Lync mobile apps.

Microsoft Lync Connectivity Analyzer attempts to connect to your Lync server using the same services and protocols that are used by Lync Windows Store app and Lync apps for mobile platforms.  You can perform the connection tests over your internal network or an external network that connects to your Lync server. Lync Connectivity Analyzer provides a report with detailed information about each connection step to help you validate your configuration and troubleshoot connection problems.
Lync Connectivity Analyzer tests the following Lync server components:

  • Autodiscover service
  • Authentication Broker (Reach) service
  • Mobility (MCX) service
  • WebTicket service

Lync Connectivity Analyzer tests the configuration of the following other components:

  • Publication of DNS records for Autodiscover URLs
  • Certificates
  • Proxy servers

Documenting a #Lync Environment

As a consultant I tend to do a fair amount of documentation. For the most part this is as part of a design (before deployment) discussing architecture decisions related to requirements but also as part of deployment covering the configuration of the platform whether firewall rules, DNS entries plus also Lync Policies and Settings.

Since the release of Lync Server 2010 I have primarily using my backup script and the dump function to dump each of the Get-Cs* cmdlet to dump configuration to .txt file and then I could drop then into Word Tables with minimal effort, if a bit tedious.

I’m not a person to standstill and am always improving my methodology based on what I think works, doesn’t plus also learn and see.  With my new backup script the dump function will be expanded to output to either TXT, CSV or XML.  Where I want to get to is take the dump files and be able to run them through another script to dump everything into an Excel file.  Spending a few hours copying an pasting isn’t my idea of fun.

One of the goal is for my backup script to be able to document everything about a deployed Lync environment to use as a deliverable or to understand an existing environment for a migration (for consultant) or to phone home for (for support engineers)

My friend and PowerShell guru (among other things) Flaphead has written me a quick and dirty script to take CSV dump file and import them all into Excel.  Post here

To dump Lync to CSV, Just open the Lync Server Management Shell create a new empty directory and change directory into it and run the cmdlet

foreach($i in Get-Command Get-Cs*) { if($i.CommandType -eq “Cmdlet”){if (($i.name -eq “Get-CsAdminRoleAssignment”) -or ($i.name -eq “Get-CsClientCertificate”) -or ($i.name -eq “Get-CsClientPinInfo”) -or ($i.name -eq “Get-CsRgsConfiguration”) -or ($i.name -eq “Get-CsUserPoolInfo”) -or ($i.name -eq “Get-CsBackupServiceStatus”) -or ($i.name -eq “Get-CsClientAccessLicense”) -or ($i.name -eq “Get-CsDatabaseMirrorState”) -or ($i.name -eq “Get-CsEffectivePolicy”) -or ($i.name -eq “Get-CsPersistentChatEligiblePrincipal”) -or ($i.name -eq “Get-CsPoolBackupRelationship”) -or ($i.name -eq “Get-CsPoolFabricState”) -or ($i.name -eq “Get-CsTestUserCredential”) -or ($i.name -eq “Get-CsWebTicket”)){} Else {. $i.Name | export-csv -notypeinformation $i”.csv”}}}

Firstly CSV (or text files) aren’t the best to use for Lync as they won’t dump all properties over well as some have to be expanded using | Select Object -ExpandProperty, ultimately I will rewrite a script to import from XML file to overcome this.

With regarding to my new Backup script, ‘Backup-CsServer.ps1’, I was busy in the run up before Christmas with my first Lync Server 2013 design and also study for both the new Lync Server 2013 Exams (70-336 and 70-337) passed both :).  I will post more information nearer to General Availability (GA) of the script…hey it works for the Lync Server product group 😉

Blocking #Lync Mobile on specific mobile platforms within Lync Server 2013

Quite a while ago a customer wished to block Lync Mobile on iOS and Android platforms as it didn’t conform to their corporate device policy, sadly with Lync Server 2010 couldn’t do this out-of-the-box and could only be done by blocking the specific user-agent ID’s via a iRule on F5 or on TMG via a HTTP filter.

However it seem there is a solution in Lync Server 2013 within the client version policy (not somewhere I go very often)