Nicht immer ist es angenehm, wen sich Teams beim Systemstart automatisch in den Vordergrund drängt. Aus diesem Grund gibt es in Microsoft Teams die Einstellung "Anwendung im Hintergrund öffnen". Dadurch wird Teams nur im System Tray angezeigt, der Benutzer erhält aber doch alle Benachrichtigungen und Anrufe.
Table of Contents
Konfiguration mit PowerShell und Intune
Um die Einstellung mit Intune zu setze, nutze ich ein PowerShell Script.
Die Kurzform dieses beendet Teams, falls es geöffnet ist, tauscht im Konfigurationsfile die Option "openAsHidden" aus und startet Teams im Anschluss im Hintergrund.
# End acitve Teams process
if(Get-Process Teams -ErrorAction SilentlyContinue){Get-Process Teams | Stop-Process -Force}
# Replace/Set "openAsHidden" option to true
(Get-Content $ENV:APPDATA\Microsoft\Teams\desktop-config.json).replace('"openAsHidden":false', '"openAsHidden":true') | Set-Content $ENV:APPDATA\Microsoft\Teams\desktop-config.json
# STart Teams in background
Start-Process -File $env:LOCALAPPDATA\Microsoft\Teams\Update.exe -ArgumentList '--processStart "Teams.exe" --process-start-args "--system-initiated"'
Codesprache: PHP (php)
Wenn ich dieses Script nun aber direkt verteile, kann es sein, dass es ausgeführt wird, während der Benutzer am Arbeiten ist. Falls der Benutzer dann gerade in einem Gespräch oder Meeting ist, wird dieses beendet.
Um einem solchen Verhalten vorzubeugen, nutze ich die "RunOnce-Funktion". Die Beschreibung dazu habe ich dir im vergangenen Blogbeitrag: "Run once at Startup" erstellt.
Das vollständige Script, bereit zum Upload findest du hier auf GitHub:
Das Script must du nach dem Download nur noch hochladen und zuweisen. Dies kannst du im Endpoint Manager unter "Devices > Windows > PowerShell scripts" machen.
Hier wählst du "Add", vergibst einen aussagekräftigen Namen. Anschliessend lädst du das Script hoch und setzts die Settings analog meines Screenshots.
Im letzten Schritt weisst du das Script lediglich noch einer gewünschten Gruppe zu und speicherst die Konfiguration ab. Sobald das verwaltete Gerät das Script ausgeführt hat, wird die Einstellung beim nächsten Login des Benutzers gesetzt. Zusätzlich wird das Script auf dem lokalen Gerät bereinigt.
Nach der Ausführung wird Teams bereits im Hintergrund geöffnet.
Einstellung als User manuell setzen
Als User kann die Einstellung mit wenigen Klicks aktiviert werden. Dazu navigierst du in Teams in die Einstellungen.

In den Teams Einstellungen findest du dann gleich den Punkt "Anwendung im Hintergrund öffnen". Ist dieser angewählt, öffnet sich Teams beim Systemstart im Hintergrund.
When are you deploying this, after a device is setup or when @ enrollment and configuration? Something I'm seeing with a similar thing is that when assigned, and a user is setting up a new device - a script like this times out and the device setup fails.
Are you deploying this to a dynamic group after device setup is completed?
I usually deploy this to a Device Group (but in User context).
If you have troubles, you could not include it in the ESP phase or disable the ESP User part entirely.
For tht you have to create a custom policy with an OMA-URI:
Name: Disable User ESP
OMA-URI: ./Vendor/MSFT/DMClient/Provider/MS DM Server/FirstSyncStatus/SkipUserStatusPage
Data type: Boolean Value: True