Microsoft did a good job on creating the Surface Hub documentation on TechNet here: https://technet.microsoft.com/en-us/windows/mt631724
However it’s also an extensive read. For which we decided to dive into and make a little subset of commands, needed for the account creation for a Surface Hub.
Also the used commands and creation/validation scripts are valid on an Exchange 2013 SP1 or later environment. If you’re one of those rocking an older version, RTM, for whatever reason; this read might be for you.
This is because we now will use an alternative way of enabling the account and setting the password – in SP1 and later this can be done by using the same command.
Below commands are used and tested in an Exchange 2013 RTM environment;
Account Variables:
<Surface Hub UPN> | e.g. SurfaceHub01@contoso.com |
<Surface Hub Alias> | e.g. SurfaceHub01 |
<Surface Hub Name> | e.g. Surface Hub 01 |
<Surface Hub Password> | e.g. F4br1k4m@2016 |
ActiveSync Policy | $eapolicy is a variable for a new policy, but any applicable policy can be used. |
<S4B Poolname> | Lync or Skype for Business Pool Name |
Exchange
Create User Account
and Enable it in Exchange. From Exchange Management Shell:
New-Mailbox -UserPrincipalName <Surface Hub UPN> -Alias <Surface Hub Alias> -Name “<Surface Hub Name>” -Room
Create ActiveSync Policy
with “PasswordEnabled $True”. Of course, an already created one could be used as well:
$easPolicy = New-MobileDeviceMailboxPolicy -Name “SurfaceHubs” -PasswordEnabled $false -AllowNonProvisionableDevice $true
Set ActiveSync Policy
Set-Mailbox “<Surface Hub UPN>” -Type Regular
Set-CASMailbox “<Surface Hub UPN>” -ActiveSyncMailboxPolicy $easPolicy
Set Room Mailbox Settings again
Set-Mailbox “<Surface Hub UPN>” -Type Room
Set correct Exchange Settings
Set-CalendarProcessing -Identity “<Surface Hub UPN>” -AutomateProcessing AutoAccept -AddOrganizerToSubject $false –AllowConflicts $false –DeleteComments $false -DeleteSubject $false -RemovePrivateProperty $false -AddAdditionalResponse $true -AdditionalResponse ‘This is a <tla rid=”surface_hub”/> room!’
Disable password expiry and enable account
Set-ADAccountPassword “<Surface Hub UPN>”‘ -Reset -NewPassword (ConvertTo-SecureString -AsPlainText <Surface Hub Password> -Force)
Set-AdUser “<Surface Hub UPN>” -PasswordNeverExpires $true -Enabled $true
Lync/Skype for Business
Now, continueing on the Skype for Business or Lync server:
Enable Room Account for Lync/Skype for Business
Enable-CsMeetingRoom -SipAddress “<Surface Hub UPN>” -RegistrarPool <S4B Poolname> -Identity <Surface Hub UPN or Alias>
-and if applicable-
Set-CsMeetingRoom -Identity <Surface Hub UPN> -EnterpriseVoiceEnabled $true
Set-CsMeetingRoom -Identity <Surface Hub UPN> -LineURI “tel:+xxxxxxxxx“