If you are in Europe and have noticed that Teams is no longer installing with your M365 apps, this isn’t a bug, it is due to the European Competition ruling:
https://blogs.microsoft.com/eupolicy/2023/08/31/european-competition-teams-office-microsoft-365/
The fix is to deploy the Teams Machine wide installer onto your devices:
https://learn.microsoft.com/en-us/microsoftteams/msi-deployment
To make things easier, I have created a script which will:
- Download the latest version
- Package it to IntuneWin
- Deploy to Intune
All you have to do is assign it.
The script can be found on GitHub here:
Or PSGallery:
Install-Script -Name deploy-teams-machine-installer
If you want to deploy the new client instead, follow this guide from Arno van Dijk
Hopefully this is useful
this script used to work, but lately after it uploads the chunks to azure i get the following error:
y within 2210 milliseconds
[=================================================] 100%
INFO File ‘c:\temp\\TeamsMachine\installTeamsMachine.intunewin’ has been generated successfully
[=================================================] 100%
INFO Done!!!
Intunewin c:\temp\\TeamsMachine\installTeamsMachine.intunewin Created
Invoke-UploadWin32Lob:
Line |
1160 | … appupload = Invoke-UploadWin32Lob -SourceFile “$appfile” -DisplayName …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Aborting with exception: System.Management.Automation.ParameterBindingValidationException: Cannot bind argument to parameter ‘Exception’ because it is null.
at System.Management.Automation.ExceptionHandlingOps.CheckActionPreference(FunctionContext funcContext, Exception exception)
at System.Management.Automation.Interpreter.ActionCallInstruction`2.Run(InterpretedFrame frame)
at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
0
Are you using PS5 or PS7? If it’s 7, can you try 5 for me please?
Thanks Andrew for the write-up. Regarding Your script that install the classic Teams
Issue #1 – does not create the temp folder initially. I had to create it manually on the C:\ drive
Issue #2 – Once the install starts (it starts downloading and installing) and then it says failed on the toast notification. Upon checking Teams did not install.
Issue#3 – Detection script has a weird up side down question mark which probably means it is not being formatted as UTF-8 https://learn.microsoft.com/en-us/mem/intune/fundamentals/remediations. I mean the detection is running otherwise it would not even start downloading and installing on the test VM but yeah why risk having weird characters in the detection script when we can eliminate it all together.
things I like:
– uploading Win32 apps to Intune without the use of IntuneWin32app module
– extracting the MSI product code from the MSI file to build the uninstall string
– checking if Graph module is v1 or V2
– modularity
but hopefully you do more testing on your end and address these issues
Hi,
I’ll switch to $env:temp in the next release.
For issue 2, check for AV on the machine, that sometimes catches the Teams installer
It’s definitely in UTF-8
( $detectionscript | Out-File $detectionscriptfile -Encoding utf8)
, but I’ll see if there is a rogue space or somethingHi Andrew,
I noticed there was new documentation related to deployment of Teams here:
https://learn.microsoft.com/en-us/deployoffice/teams-install
It states: As of October 23rd, 2023, new installations of Microsoft 365 and Office 365 will include Teams only if a Teams service plan is in place.
But all our tenants include the old M365 E3 license which has the Teams service included but the app is still not deploying in the Microsoft 365 Apps for Windows package in Intune. Do you have any idea what is going on here? We are in the EU so is that notice only for tenants outside the EU?
Hi Glenn,
Are you using XML or the GUI for the application?
When did you create the app in Intune?
It was created using GUI and it was made back in 2022. Should I just re-create it?
I would give it a try first. It could be when the bug was fixed, it wasn’t for existing configurations
Isn’t changing the XML for Office to include Teams be better and easier?
That wasn’t an option when this post was written, there was a fault with both the XML and ODT where it wouldn’t install Teams
We want to push it to our autopilot group, will this reinstall it on the current devices? Or will detect it and leave the current installation?
If you have machine based installer already, it will detect it
Hi Andrew,
thanks for the script!
Can the script be used for updating the “Teams Machine wide installer”, too?
I ask because the installer behaves a little bit special if a (older) version is already installed (prior to the EU ruling). If you try it by hand, it says “there is already another version installed… uninstall it first”.
Hi Lothar,
This script won’t as the detection will notice it already exists and ignore it.
If the other one was also deployed using Intune, I would configure supersedence for this new one and set it to uninstall the old version first
What got me most excided was the script O.O.
i want to use this aswell to roll out every application
Have a look at the Remote Help one as well, that one does assignment of the app
Thanks! All working now
Seem to get an error when running:. Do I need to connect to graph first?
Invoke-UploadWin32Lob : Aborting with exception: Microsoft.Graph.PowerShell.AuthenticationException: Authentication needed. Please call Connect-MgGraph.
at System.Management.Automation.MshCommandRuntime.ThrowTerminatingError(ErrorRecord errorRecord)
At line:1063 char:18
+ … appupload = Invoke-UploadWin32Lob -SourceFile “$appfile” -DisplayName …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Invoke-UploadWin32Lob
Hi Jordan,
Yes, I’ve updated to 1.0.1 now with Graph connection added