I think I've managed to create a deployment process for new Teams that doesn't disrupt end users working in classic Teams or Outlook.
Migration process goals:
install new Teams while classic Teams is still installed
install the new Meeting add-in for Outlook that is bundled with new Teams
switch the user to the new Meeting add-in for Outlook without disruption
switch the user to new Teams by default via Teams admin center
remove classic Teams without affecting the Meeting add-in in Outlook
The main issue is that uninstalling classic Teams "de-registers" the Teams Meeting Add-in and removes it from Outlook by removing registry entries from
HKEY\_CLASSES\_ROOT\CLSID\{19A6E644-14E6-4A60-B8D7-DD20610A871D}
HKEY\_CLASSES\_ROOT\TeamsAddin.FastConnect\CurVer
HKEY\_CLASSES\_ROOT\TeamsAddin.FastConnect.1\CLSID
HKEY\_CLASSES\_ROOT\TypeLib\{C0529B10-073A-4754-9BB0-72325D80D122}
HKEY\_CLASSES\_ROOT\WOW6432Node\CLSID\{19A6E644-14E6-4A60-B8D7-DD20610A871D}
To resolve this, we can (re)run the Teams Meeting installer MSI in the user context after classic Teams has been uninstalled.
Package preparation:
On a reference computer with classic Teams and the Teams Meeting add-in for Outlook installed, run the latest version of the new Teams bootstrapper.exe. Copy the "MicrosoftTeamsMeetingAddinInstaller.msi" from "C:\Program Files\WindowsApps\MSTeams\_23335.219.2592.8659\_x64\_\_8wekyb3d8bbwe" (note that the path is version specific) for use later. Uninstall classic Teams from the user profile with Add & remove programs, then verify that the Teams Meeting add-in for Outlook is no longer available in Outlook. Run the "MicrosoftTeamsMeetingAddinInstaller.msi" in the user context on the reference computer to verify that the Teams Meeting add-in is once again available in Outlook.
Deploy new Teams to co-exist with classic Teams, but use the add-in bundled with new Teams:
Create a deployment package in SCCM/Intune that includes the bootstrapper.exe and the "MicrosoftTeamsMeetingAddinInstaller.msi", a step that runs the bootstrapper.exe, a step that copies the "MicrosoftTeamsMeetingAddinInstaller.msi" to a location on the C: drive (such as C:\Program Files\Microsoft\TeamsMeetingAddin\1.23.33413\MicrosoftTeamsMeetingAddinInstaller.msi, and a scheduled task triggered at user logon that runs the "MicrosoftTeamsMeetingAddinInstaller.msi".
This will set the user up to begin using new Teams and will replace the classic Teams Outlook add-in with the new Teams Meeting add-on the next time the user logs on.
Uninstall classic Teams and repair the Meeting add-in (use this when you're ready to remove classic Teams):
Create a second package in SCCM/Intune that creates a scheduled task triggered at user logon that uninstalls classic Teams, immediately thereafter runs "MicrosoftTeamsMeetingAddinInstaller.msi" and adds the LoadBehavior=3 value to HKEY\_CURRENT\_USER\SOFTWARE\Microsoft\Office\Outlook\Addins\TeamsAddin.FastConnect.
Uninstalling classic Teams in the user context can be done silently with the command %localappdata%\Microsoft\Teams\Update.exe --uninstall -s
The registry values to load the Teams Meeting add-in in Outlook are:
[HKEY\_CURRENT\_USER\SOFTWARE\Microsoft\Office\Outlook\Addins\TeamsAddin.FastConnect]
"LoadBehavior"=dword:00000003
"Description"="Microsoft Teams Meeting Add-in for Microsoft Office"
"FriendlyName"="Microsoft Teams Meeting Add-in for Microsoft Office"
This process will remove classic Teams and then "re-register" the new Teams Meeting add-in and enable it in Outlook the next time the user logs on.
What other solutions have people found?
Thanks.