Surface Hub: Skype for Business vs Teams

Surface Hub supports running both Skype for Business and Microsoft Teams, based on the Teams mode you configure.

Skype for Business supports both On-Premises and Online deployments, whereas Teams is available online only.

The following table lists the major differences between the Skype for Business and the Microsoft Teams functionalities on Surface Hub:

Functionality Microsoft Teams Skype for Business
Join Scheduled meetings
Create Ad-hoc meetings
Make/Receive PSTN calls* ✔ Outbound only
Make/Receive Audio calls
Make/Receive Video calls
Instant messaging
Screen sharing
Auto camera switching
Store update**
Windows update**
Whiteboard launch
Maximum live incoming video 4 simultaneous streams 2 simultaneous streams
Connect to On Premises environment
Can be used with Meeting Room license
Can be used with another UC app
QOS Ready

* PSTN calling is Subject to licensing
** Skype for Business is part of the OS and will update when OS updates are available. Microsoft Teams is a Windows Store UWP app and will update automatically from the store as updates become available.

  • In Teams mode 0 and 1 the appropriate UI will launch based on the type of the invite; the Skype UI will launch if it’s a Skype for Business scheduled meeting, and the Teams UI will launch id it’s a Teams scheduled meeting.
  • You can still launch the full Teams client from the Microsoft Edge browser on Surface Hub, that will provide you with the full Microsoft Teams experience, using the Surface Hub’s cameras, microphones, speakers and touch.
  • Launching the Microsoft Whiteboard from inside the Teams app will automatically grant access to anyone in the meeting (Tenant limitations apply), enabling them to co-author simultaneously from any supported device.

Download and install the Microsoft Teams app using Intune

I was looking for an ‘easy’ way to push the Microsoft Teams app to devices using Intune.

Since the ‘Windows S’ Teams app is no longer available, the options were to either create a ‘Line of Business’ app in Intune or use Graph API. Both valid options, but – why?

Looking at the documentation to install Microsoft Teams using MSI, you can use System Center Configuration Manager, Group Policy or any third-party distribution mechanisms for broad deployment. As Intune falls into the latter, if you’re on a modern-managed environment – I prepared a script for that purpose.

The script will do the following:

  • Download the x64 MSI installer directly from Microsoft. (You can use the x86 MSI as well if you need)
  • Extract the installer to a folder on the client machine and run the installation quietly with the least possible privileges .

New-Item -ItemType Directory -Force -Path  C:\TeamsAutomation
Set-Location C:\TeamsAutomation
Invoke-WebRequest -Uri "" -OutFile "Teams_windows_x64.msi"
msiexec /i Teams_windows_x64.msi

Based on the default behavior of the installer, whenever a user signs into a new Windows User Profile, the installer will be launched and a copy of the Teams application will be installed in that user’s appdata folder. If a user already has the Teams app installed in the appdata folder, the MSI installer will skip the process for that user. So you can rest assure that the client doesn’t reinstall itself every time a user signs in.

Save the above script as a .ps1 file and upload in to Intune PowerShell:

In the Intune Devices Management Portal (, go to Device configuration – PowerShell scripts and click to Add a new PowerShell script.

Provide a name and the location of the .ps1 file you created:

Upload Script


Click to configure settings, and make sure that both ‘Run this script using the logged on credentials’ and ‘Enforce script signature check’ are set to ‘No’:

Script Settings

Click ‘OK’ and ‘Create’ and assign the scripts to the device groups you desire.

Right after syncing, you’ll see the following events on your machine:




These will confirm that the installation was successful and users will be signed in to Teams automatically on the next log on.







Deploy the Microsoft Teams for Surface Hub app using Intune

Originally written for the Microsoft Teams for Surface Hub (Preview) app, this article is now updated to support the GA version of the app. Images may still contain ‘Preview’.

In this post, I’m going to cover the steps required to push the Microsoft Teams for Surface Hub app to Surface Hubs and configure its options using Intune.

To push the app to the Surface Hub you’ll have to you’ll have to configure Intune and the Microsoft Store for Business to push apps to the Surface Hub. Follow this post to configure both if you haven’t done it yet.

Remember – you must acquire the offline license version of the Microsoft Teams app (No purchase required) to be able to push it using Intune:

After syncing the store with Intune, you’ll see the app in the Apps list:

Next, configure the Microsoft Teams app CSP settings in Intune.

Create a new Device configuration profile in Intune. Set the Platform to Windows 10 and later, and the Profile type to Custom:

There are two dedicated CSPs we’re using to configure the app on the Surface Hub. Both must be present for the app to work:

./Vendor/MSFT/SurfaceHub/Properties/SurfaceHubMeetingMode is the CSP that replaces the .ppkg files you’ll be using if you’re manually installing the app. it comes with the values of 0, 1 or 2 and would act as follows:

  • 0 – Skype for Business is the preferred app on the Surface Hub’s Start Screen, however you can still join Microsoft Teams meetings.
  • 1 – Microsoft Teams is the preferred app on the Surface Hub’s Start Screen, however you can still join Skype for Business meetings.
  • 2 – Microsoft Teams is the exclusive app on the Surface Hub’s Start screen and Skype for Business is disabled.

The Data type for this setting is Integer and you can choose any value from the above as illustrated in the following image:

./Vendor/MSFT/SurfaceHub/Properties/VtcAppPackageId is the CSP representing the app ID that’s replacing Skype for Business; Microsoft Teams. The value for this CSP is always Microsoft.MicrosoftTeamsforSurfaceHub_8wekyb3d8bbwe!Teams

The Data type for this CSP is String. Copy and paste the value from the line above as illustrated in the following image:

To assign the policies (App deployment and Device configuration) to the Surface Hubs, create a security group with the Surface Hubs device accounts:

Go back to the Microsoft Teams for Surface (Preview) app in the Apps list and click ‘Assignments’. Assign the app to the Security Group you created with the following settings:

  • Assignment type must be Required.
  • On the Select groups to include list, choose the group you created earlier and set the license type to Device Licensing:
  • Click ok and save the configuration.

    Next, for the Device configuration profile, assign it to the Security Group you created:

    Intune will push the and settings immediately. You may need to restart the Surface Hub to complete the process.