Deploy New Microsoft Teams App on Windows using Intune

In this blog post, we will explore the process of deploying the New Microsoft Teams app on Windows 10 and Windows 11 devices using the Intune admin center.

Microsoft has completely redesigned the New MS Teams app. It was made generally available to users starting on October 5, 2023. It’s twice as fast and uses 50% less computing resources than the previous Teams version.

You can read more about the new Microsoft Teams app here: Switch to the new Microsoft Teams. To deploy the new Microsoft Teams app on macOS devices, please refer to this guide: Deploy New Microsoft Teams on macOS using Intune.

Remove Personal Microsoft Teams

If you want to first remove Personal Microsoft Teams, either built-in or installed versions, you can use the script remove_teams.ps1. This script can be downloaded from my GitHub repository to Uninstall Microsoft Teams from Windows 11 devices. You can use #step-2-deploy-powershell-script to deploy the script via Intune.

Once the app is removed, proceed to the steps to install New Microsoft Teams app on Windows devices via Intune using the steps provided in the next sections of the post.

1. Download New Microsoft Teams App

The first step is downloading the installation files required to deploy the New Microsoft Teams App. We will require two files, teamsbootstrapper.exe, and MSTeams-x64.msix, for offline Installation of the new MS Teams app. You can obtain both files by using the links provided below:

  1. Download the .exe installer.
  2. Download MSTeams-x64.msix.

If you intend to deploy the New Microsoft Teams app on a Windows operating system with an architecture other than 64-bit, you’ll need to download the corresponding .msix from the Microsoft website and use it for the deployment.

2. Download PowerShell Scripts

I’ll utilize the following three PowerShell scripts to deploy the new Microsoft Teams app on Windows devices.

  • Install.ps1: This script will deploy the new Microsoft Teams using its offline installer.
  • Uninstall.ps1: This script will uninstall the new Microsoft Teams App.
  • Detect.ps1: This script will detect the new Microsoft Teams App on the target devices.

You can download all these scripts from my GitHub repository. Here is the link: Microsoft Teams (new) PowerShell scripts. I have also provided the script content below:

Install.ps1

<# 
.SYNOPSIS 
Install New Microsoft Teams App on target devices 
.DESCRIPTION 
Below script will install New MS Teams App Offline.
 
.NOTES     
        Name       : New MS Teams App Installation Offline
        Author     : Jatin Makhija  
        Version    : 1.0.0  
        DateCreated: 12-Jan-2024
        Blog       : https://cloudinfra.net
         
.LINK 
https://cloudinfra.net 
#>
# Define paths and filenames
$msixFile = ".\MSTeams-x64.msix"
$destinationPath = "C:\windows\temp"
$bootstrapperPath = ".\teamsbootstrapper.exe"

# Copy MSTeams-x64.msix to the destination directory
Copy-Item -Path $msixFile -Destination $destinationPath -Force

# Check if the copy operation was successful
if ($?) {
    # If successful, execute teamsbootstrapper.exe with specified parameters
    Start-Process -FilePath $bootstrapperPath -ArgumentList "-p", "-o", "$destinationPath\MSTeams-x64.msix" -Wait -WindowStyle Hidden
    Write-Host "Microsoft Teams installation completed successfully."
} else {
    # If copy operation failed, display an error message
    Write-Host "Error: Failed to copy MSTeams-x64.msix to $destinationPath."
    exit 1
}

Uninstall.ps1

./teamsbootstrapper -x

Detect.ps1

<# 
.SYNOPSIS 
Detect New Microsoft Teams App on target devices 
.DESCRIPTION 
Below script will detect if New MS Teams App is installed.
 
.NOTES     
        Name       : New MS Teams Detection Script
        Author     : Jatin Makhija  
        Version    : 1.0.0  
        DateCreated: 12-Jan-2024
        Blog       : https://cloudinfra.net
         
.LINK 
https://cloudinfra.net 
#>
# Define the path where New Microsoft Teams is installed
$teamsPath = "C:\Program Files\WindowsApps"

# Define the filter pattern for Microsoft Teams installer
$teamsInstallerName = "MSTeams_*"

# Retrieve items in the specified path matching the filter pattern
$teamsNew = Get-ChildItem -Path $teamsPath -Filter $teamsInstallerName

# Check if Microsoft Teams is installed
if ($teamsNew) {
    # Display message if Microsoft Teams is found
    Write-Host "New Microsoft Teams client is installed."
    exit 0
} else {
    # Display message if Microsoft Teams is not found
    Write-Host "Microsoft Teams client not found."
    exit 1
}

3. Create an Intunewin file

As we will be utilizing the Win32 app deployment method to deploy this app, the application must be uploaded in the .intunewin file format. Let’s check the steps to create .intunewin file:

  • Create a New folder that will hold all New Microsoft Teams app Installation files. I have created a folder in C:\temp called NewTeamsInstaller.
  • Move All Installation files into the NewTeamsInstaller folder, which includes the below files:
    1. Install.ps1
    2. Uninstall.ps1
    3. MSTeams-x64.msix
    4. teamsbootstrapper.exe
Copy all MS Teams Installation files in one folder
  • Create an empty folder called Output anywhere in C:\ or D:\ drive. You can name it whatever you like. This will be the folder where we will generate .Intunewin file. I have created this folder in C:\temp.
Create a folder called Output where we will generate .Intunewin file
  • Launch the PowerShell console as an administrator and then navigate to the folder where the Microsoft Win32 Content Prep Tool is located to set it as the current directory.
  • Run IntunewinAppUtil.exe You will get options to specify the Source Folder, Setup File, Output Folder, and Catalog Folder.
    • Source Folder: Provide the folder where all application setup files are copied. C:\temp\NewTeamsInstaller.
    • Setup File: Provide the file’s name to execute it on the target device. We are going to use the Install.ps1 file to Install the app, so provide the Setup file as Install.ps1.
    • Output folder: Provide a location of a folder where .Intunewin file will be generated. You can provide any folder you like, But I generally create an empty Output folder. C:\temp\Output.
    • Catalog folder: Specify N not to specify any Catalog folder, or press Enter to skip.
Use IntuneWinAppUtil.exe to create .Intunewin file
  • The .intunewin file generated is in the Output folder location specified when it was created. We will use this file to create the Win32 app deployment from the Intune admin center.
New Microsoft Teams App .intunewin file has been created successfully

If you are facing any Issues, creating .Intunewin file. You can refer to my step-by-step guide, which provides more details on How to create an IntuneWin file.

How to create Intunewin file (Step-by-step) Guide

4. Create Win32 App Deployment for New Teams App

Now that we have created .intunewin file. Using this file, we will create a Win32 app deployment on the Intune admin center to deploy the New Microsoft Teams app on the target devices.

`To Create Win32 app deployment, follow the below steps:

  1. Sign in to the Intune admin center.
  2. Click on Apps and then click on All Apps.
  3. Click on + Add and Select Windows app (Win32) from the app type, then click Select.
  • App Information: Click on Select app package file and browse to .Intunewin file.
New MS Teams App Win32 App deployment - App Information tab
New MS Teams App Win32 App deployment - App Information tab
  • Program:
    • Install command: %SystemRoot%\sysnative\WindowsPowerShell\v1.0\powershell.exe -windowstyle hidden -executionpolicy bypass -command .\install.ps1
    • Uninstall command: %SystemRoot%\sysnative\WindowsPowerShell\v1.0\powershell.exe -windowstyle hidden -executionpolicy bypass -command .\uninstall.ps1
    • Installation time required (mins): Keep default, which is 60 minutes.
    • Allow available uninstall: Yes
    • Install behavior: System
    • Device restart behavior: Select No specific action.
New MS Teams App Win32 App deployment - Program tab
  • Requirements: You can specify the requirements that devices must meet to deploy the app. If your devices mix 32-bit and 64-bit types, check the boxes for 32-bit and 64-bit in the operating system architecture drop-down menu. Else, go with 64-bit.
    • Operating System Architecture: 64-bit
    • Minimum operating system: Select the minimum OS requirement for this deployment.
  • Detection Rules: We will utilize the Detect.ps1 PowerShell script to identify the app installation on the target computers. Follow the settings below to configure the detection script for the app deployment. Click on Next to proceed. Download Detect.ps1 from the GitHub Repo: Download Detect.ps1 from GitHub.
    • Rule format: Use a custom detection script.
    • Script file: Browse to the PowerShell script Detect.ps1.
    • Run script as 32-bit process on 64-bit clients: No
    • Enforce script signature check and run script silently: No
New MS Teams App Win32 App deployment - Detection Rules tab
  • Assignments: Click on Add group to add an Entra security group containing users or devices. You can start by adding a few devices to test the application deployment, and once the testing is successful, you can add more devices.
New MS Teams App Win32 App deployment - Assignments tab
  • Review + create: Review the deployment and click on Create to start the deployment process.

Sync Intune Policies

The device check-in process might not begin immediately. If you’re testing this policy on a test device, you can manually kickstart Intune sync from the device itself or remotely through the Intune admin center.

Alternatively, you can use PowerShell to force the Intune sync on Windows devices. Restarting the device is another way to trigger the Intune device check-in process.

Monitoring Deployment Progress

From the Intune admin center > Apps > All apps. Click on the MS Teams app deployment and check the Overview page to show the deployment status.

  • If you click Device Install Status, you will find the app deployment status for each target device. Confirm the deployment’s success by checking the Status column, which should appear Installed.
Monitoring New Microsoft Teams App deployment status on Intune admin center
Monitoring New Microsoft Teams App deployment status on Intune admin center

End User Experience

After the successful completion of the app deployment on the target devices, follow the steps below to check and confirm the app installation on a device:

  • Click on the Windows logo and search for the Teams app.
  • If the app is installed successfully, you will find the Microsoft Teams (work or school) app with the new logo. This confirms that the app has been deployed successfully on the devices.
Confirm the Installation of New Microsoft Teams app from the Start Menu

Further Reading

To learn more about the New Microsoft Teams App, explore the links below:

31 thoughts on “Deploy New Microsoft Teams App on Windows using Intune”

  1. Is this install system wide context? Our organization does not want Teams installed on a per profile basis which leads to out of date clients if a user hasn’t logged into the machine in a while to update their install.

    Reply
    • Yes, the “Install behavior” is set to “System” in the Program tab when creating the app deployment. Therefore, the installation will occur in the System Context. I hope this answers your query.

      Reply
  2. Many Thanks, QQ I get a Edge Webview2 runtime Requirement on launch. is that something that auto deploys as this worked via Co portal / live system but on autopilot it installed this package but said lacked Edge Webview2 Runtime (so wondered if I need to make a dependancy app to deploy this as a Device app. – Or better to do as user as This Runtime might get auto added later?

    Reply
  3. works pretty good, the first time it stated the app was installed but it was not. Had to do a uninstall and then the next install worked.

    Reply
  4. My devices come with an office suite including Teams Personal and want to uninstall Teams personal and install Teams work or school only. Devices are enrolled as Windows Autopilot. What would be the best practice?

    Reply
  5. Great article, but the detection script incorrectly identifies that the Teams client is installed, even though it’s not. Thats the reason why some comments here indicate that it’s installed, but in reality, it isn’t.

    Reply
    • Yes, indeed. I’m using the script below instead.

      ———-
      $Pkg = Get-AppxPackage -Name “MSTeams” -AllUsers -ErrorAction SilentlyContinue

      if ($null -ne $Pkg) {
      write-host “Success – $($Pkg.PackageFullName) v$($Pkg.version) is installed”
      exit 0
      }
      ————

      Reply
  6. I am using this in my autopilot as a required app. Installs fine during device app phase, but wants to install again in the user phase, this is not set as a User Required App. Unfortunately it errors with 0x80070643 during the user phase. It still works and has no issues, but was hoping you may understand why this is occurring and possibly how to stop it.

    Reply
  7. I find that the app installed, as the files are listed in the Program Files -> WindowsApps directory, but it doesn’t show up in start menu or add/remove programs.

    Anyone got any ideas on that?

    Reply
  8. It says Teams has installed successfully on the Intune side. But even after restarting the device Teams is not there and it doesnt show in control panel – programs and features. It also doesnt show up in Settings – Apps&Features. Any ideas?

    Reply
  9. Thank you. May I know what is the difference between deploying as win32app as intunewin file vs Line of business app using msix ?

    Thank you.

    Reply
  10. Very nice!
    Thanks! Works like a charm.

    But I still don’t understand why Microsoft can’t just make relevant packages and add them to Intune. Even though they have paid for it, they still need technicians to solve basic deployment problems.

    Reply
  11. Hey

    Great article. I was wonder can we use this on AVD/VDI enviroment. Is there another trigger or installer we need? Similar to classic “machine-wide” and vdi regkeys

    Many thanks
    Matt

    Reply
  12. Both the Install and Uninstall scripts did not work, and the company portal returned errors until I changed the install and uninstall commands to “powershell.exe -ExecutionPolicy Bypass -File .\Install.ps1” and “powershell.exe -ExecutionPolicy Bypass -File .\Uninstall.ps1”, respectively. I wonder why…
    Maybe this will be helpful to someone.

    Big Thank you to the author for the detailed manual.

    Reply
  13. Hi. Great article. I was wondering if this installs the latest version of Teams on an endpoint? I was reading bootstrapper -p does this? but I tried running this command and it fails.

    Reply

Leave a Comment