Configure Microsoft Teams offloading in VMware Horizon

With VMware Horizon 8 or the new naming format, Horizon 2006 (YYMM) Microsoft Teams offloading / media optimization is supported. Media Optimization for Microsoft Teams redirects audio calls, video calls, and viewing desktop shares for a seamless experience between the client system and the remote session without negatively affecting the virtual infrastructure and overloading the network.

What is supported

The Media Optimization for Microsoft Teams offers the following features:

  • Accepting and making audio and video calls
  • Multiparty audio and video conferencing
  • Transfer, forward, mute, hold, and resume a call
  • PSTN calls via dial pad
  • Desktop screen sharing
  • Multi monitor screen sharing and screen picker for screen sharing
  • Volume control from the remote desktop
  • Active speaker identification


Media Optimization for Microsoft Teams has the following limitations:

To enable this feature you need  to configure the following settings:

  • Install Horizon 2006 client and enable media optimization.
  • Import the Horizon 2006 GPOs and enable the Group Policy setting for Microsoft Teams
  • Perform a machine-wide installation of Microsoft Teams on the golden image

In this example, I will configure a Windows 10 client with a custom Horizon 2006 client installation, import and configure the GPO settings for Microsoft Teams on the Domain Controller and install Microsoft Teams on the Windows 10 Golden Image.

Horizon client

Install a custom installation of the Horizon client.

  • Download the Horizon 2006 client, link
  • Install the client and select “Customize installation”

  • Scroll down and select “Media Optimization for Microsoft Teams”
  • After the installation reboot the Windows client

VMware Horizon Group Policies

 Download and configure the Microsoft Teams GPO.

  • Download the GPO bundle from the VMware  download site

  • Extract the .zip file
  • Copy all the files to the %systemroot%\PolicyDefinitions folder on your Active Directory
  • Create a GPO and configure the Teams offloading settings:
    • Computer Configuration
      • Policies
        • Administrative Templates
          • VMware View Agent Configuration
            • VMware HTML5 Features
              • VMware WebRTC Redirection Features

  • Enable the Media Optimization for Microsoft Teams setting



VDI – Golden Image

Install the Microsoft Teams client on a Windows 10 32 or 64 bits OS.

  • Download the 32 or 64 bits Teams client, here is a link to the 64-bits version, link
  • Perform a machine-wide installation because Teams won’t work properly with a per-user installation on a non-persistent setup.
msiexec /i <path_to_msi> /l*v <install_logfile_name> ALLUSER=1 ALLUSERS=1

More information on installing Microsoft Teams can be found here, link. More information on installing VMware Teams can be found here, link.

Check session mode

To check if the Teams session is running in optimized, failback, or natively (without optimization) mode in the VDI session go the Teams client. In the Teams client go the the user account and navigate to about and select version. As you can see in the picture below, the session is optimized (VMware Media Optimized) which means offloading works.


After configuring these settings Microsoft Teams offloading is configured. For Microsoft Teams offloading you need at least an advanced Horizon license. Microsoft Teams offloading is now available in the Horizon standard subscription license, see link.

NVMe SSDs are not recognized anymore after upgrading to VMware ESXi 7

Last week VMware released vSphere 7. The first thing I did was upgrading my homelab. My homelab has two  hosts (Shuttle SH370R6 Plus and a Shuttle SH370R8 Plus). After upgrading my hosts from VMware ESXi 6.7 Update 3 to VMware ESXi 7, the NVMe SSDs are not recognized anymore. I Have the following NVMe SSD disks in the hosts:

  • Samsung SSD 970 EVO 1TB NVMe
  • Samsung SSD 950 PRO 512GB NVMe

My college and fellow vExpert Jesper Alberts encountered the same problem with his Supermicro X9DRL-iF and Samsung 970 EVO MZ-V7E1T0BW NVMe SSD homelab.

To fix this, perform a clean installation of VMware ESXi 7. After the clean installation, the NVMe disks are recognized.

Update May 16, 2020: Jeffrey Kusters experienced the same problem and was able to provide William Lam the support bundle of the host that failed the upgrade. William Lam and the VMware support team discovered quickly that we used the wrong esxcli update command (esxcli software vib update). The correct command to upgrade an ESXI host is: esxcli software profile update. William explains the commands in his blog found here, link.

So the steps when upgrading a standalone ESXi host are:

  • Stop the VMs on the ESXi host
  • Enter Maintenance Mode
  • Copy to VMware ESXI offline bundle to a datastore with enough space available. In this example I use the “nfs01” datastore
  • SSH to the host and perform the following command: esxli software sources profile list -d /vmfs/volumes/<datastore>/<>
[root@esxi01:~] esxcli software sources profile list -d /vmfs/volumes/nfs01/ISO/
Name                          Vendor        Acceptance Level  Creation Time        Modification Time
----------------------------  ------------  ----------------  -------------------  -----------------
ESXi-7.0.0-15843807-standard  VMware, Inc.  PartnerSupported  2020-03-16T10:48:54  2020-03-16T10:48:54
ESXi-7.0.0-15843807-no-tools  VMware, Inc.  PartnerSupported  2020-03-16T10:48:54  2020-03-16T10:48:54
  • This list the image profiles available from the offline bundle
  • Execute the command: esxcli software sources profile update -d /vmfs/volumes/<datastore>/<> -p <Image profile>
[root@esxi01:~] esxcli software sources profile update -d /vmfs/volumes/nfs01/ISO/ -p ESXi-7.0.0-15843807-no-tools
  • When the upgrade is completed successfully, reboot the ESXi host
  • Log in and exit the maintenance mode on the ESXi host

Thanks, to  Jeffrey and William for solving this problem. Great community work!

VMware Tools pvscsi and vmxnet3 drivers delivered by Windows Update

Today I was updating a Windows Server 2016 template VM with Windows Updates. During the update, I notice that the pvscsi and vmxnet3 drivers are updated by the Windows Updates process.

In 10.3.10 of VMware Tools, the pvscsi and vmxnet3 drivers available through Windows Update for Windows Server 2016 and Windows Server 2019 Operating Systems. This means that the pvscsi and vmxnet3 drivers are updated as part of the Windows Updating process. This reduces the number of reboots needed.

So make sure that all the Windows Server 2016 and 2019 VMs have at least version 10.3.10 (or higher) of the VMware Tools installed to reduce the number of reboots.