Some of what I am covering here has been cover in the Skype for Business Technical Readiness Webcast Series session on the client experience presented last week by Nikolay Muravlyannikov. The link for registering for these sessions (and recording) was announced here:
Skype for Business sessions now included in Office 365 Summits
http://blogs.office.com/2015/01/14/skype-business-sessions-now-included-office-365-summits/
The Skype for Business client has two user interfaces (UI):
- Lync UI
- Skype UI
For organisation who have invested heavily in end-user training, the whole topic on the transition of the client and UI from Lync to Skype for Business is very important.
By having these UI’s this enable organisations already running Lync to control the roll-out of the newer Skype UI in order to update any in-house training material and communication.
Depending on what your server platform is the client will default the client UI as follows:
Platform | Default Client UI |
Lync Server 2010 | Lync 2013 |
Lync Server 2013 | Lync 2013 |
Skype For Business Server | Skype for Business |
Skype For Business Online | Skype for Business |
If your running on Skype for Business server, then there is a Client Policy setting to Enable Skype UI via in-band provisioning via the following cmdlet:
Set-CsClientPolicy –EnableSkypeUI $true
Obviously this Client Policy entry only exist in Skype For Business Server. If you want to force disable the Skype UI you can just set EnableSkypeUI to $false.
Now what about if you running Lync Server 2013 on Lync Online I might hear you ask, well you’re in luck you can control the Skype UI too via in-band provisioning or via the client registry.
How? Having spent far too many hours looking the Lync 2013 client registry and in-band provisioning traces some settings are interchangeable even though they aren’t documented due to the way the client works.
Method #1: Client Registry
Using the client registry will probably be preferable for organizations running on Lync Online (and maybe Skype For Business Online) as they don’t have access to make client policy changes, so registry setting can be easily deployed via Active Directory group policy.
In the Registry under HKCU\Software\Microsoft\Office\15.0\Lync you need to create a 32-bit REG_BINARY called EnableSkypeUI with a value of 00 00 00 01 this will force the Lync UI (Disabling the Skype UI) or via the command prompt you can run:
reg add HKCU\Software\Microsoft\Office\Lync /v EnableSkypeUI /t REG_BINARY /d 00000001 /f
and if you want to force enable the Skype UI, then EnableSkypeUI needs to have a value of 1 or via the command line you can run:
reg add HKCU\Software\Microsoft\Office\Lync /v EnableSkypeUI /t REG_BINARY /d 00000001 /f
For these to take effect you have to complete restart the Skype for Business client (not just sign-out and sign-in)
Method #2: Lync Server 2013 In-Band Provisioning
Using Lync Server 2013 In-Band Provisioning will be preferable for organization running Lync Server 2013 can have yet to upgrade or are upgrading to Skype for Business.
Like Skype for Business we can control this via the client policy however unless you running the February 2015 update or later for Lync Server 2013 when the EnableSkypeUI entry was adding then it is a little different as the entry doesn’t exist. However we can actually still add the entry using either of the below:
$ClientPolicy = Get-CsClientPolicy "Global" $ClientPolicyEntry = New-CsClientPolicyEntry -Name "EnableSkypeUI" -Value "0" $ClientPolicy.PolicyEntry.Add($ClientPolicyEntry) Set-CsClientPolicy -Instance $ClientPolicy
-or-
$ClientPolicyEntry = New-CsClientPolicyEntry -Name "EnableSkypeUI" -Value "0" Set-CsClientPolicy -Identity "Global" -PolicyEntry $ClientPolicyEntry
this will again disable the Skype UI.
And if you want to enable the Skype UI use either of the below:
$ClientPolicy = Get-CsClientPolicy "Global" $ClientPolicyEntry = New-CsClientPolicyEntry -Name "EnableSkypeUI" -Value "1" $ClientPolicy.PolicyEntry.Add($ClientPolicyEntry) Set-CsClientPolicy -Instance $ClientPolicy
-or-
$ClientPolicyEntry = New-CsClientPolicyEntry -Name "EnableSkypeUI" -Value "1" Set-CsClientPolicy -Identity "Global" -PolicyEntry $ClientPolicyEntry
NOTE: Like the client registry settings, the Skype for Business client need to be restarted following the client policy being applied rather than a normal client logon as with other in-band settings
You can remove all Client Policy entries via Set-CsClientPolicy -Identity global -PolicyEntry $Null do take care have define other settings in the ClientPolicyEntry field as you will need to use something like this:
$y = Get-CsClientPolicy -Identity global $y.PolicyEntry.RemoveAt(0) Set-CsClientPolicy -Instance $y
If you haven’t seen what the Skype for Business client looks like have a look here:
Lync Online is becoming Skype for Business
https://technet.microsoft.com/library/en-us/dn913785.aspx
Special thanks to John A. Cook and Keith Hanna who helped validate all of this post and content.
UPDATE #1 (17/04/2014) Updated to reflect released version of Skype for Business client with change of registry key type and location.