Teams Outlook Add-in

Sie können mit dem Microsoft Teams Client Besprechungen für sich selbst und für Kanäle planen, wenn das Teams Backend auf ihr Exchange Postfach zugreifen kann. Mit der Installation des Teams Clients auf ihrem PC installiert Teams aber auch ein COM-Add-in für Outlook, damit Sie auch in Outlook Termine mit Microsoft Teams planen können. Diese Seite schaut etwas hinter die Kulissen und die Besonderheiten.

Outlook und Meetings

Wenn Anwender eine Besprechung planen, dann werden die meisten Anwender noch mit Outlook arbeiten und im Kalender zu einem Meeting einladen. Microsoft Teams integriert sich hier per Add-in sowohl beim Termineintrag selbst als auch als Menü beim Anlegen neuer Elemente:

Diese Funktion ist einfach nutzbar und plant im Hintergrund einen Teams-Termin. Im Januar 2020 konnte diese Methode aber zwei Funktionen noch nicht bereitstellen:

  • Termin in Kanal planen
    Damit ist es möglich, dass ein Termin direkt im Kanal eines Teams angeheftet und von dort auch weiter gepflegt wird. Für eine Zusammenarbeit ist dies ein Vorteil. Wenn der Schwerpunkt eines Termins aber nicht mit einem Teams Team verbunden ist, dann ist aber auch die Einladung aus dem persönlichen Kalender eine legitime Variante
  • Planung eines LiveEvent
    Mit dem Add-in für Outlook können Sie keine größeren Meetings, z.B. "Live Events" planen.
  • Anpassen der Meeting Optionen
    Wenn Sie für ein geplantes Meeting entsprechende Optionen anpassen wollen, dann geht dies nicht direkt in Outlook, sondern der Link startet einen Browser, in dem Sie mit den gleichen Zugangsdaten an der Cloud angemeldet sein müssen.

Diese Einschränkungen sollten Sie aber nicht davon abhalten, Teams mit Outlook zu nutzen. Verhindern können Sie die Installation des Add-ins sowieso nicht.

Installation

Wichtig: Das Meeting Add-in funktioniert nur in Verbindung mit dem Teams Desktop Client. Es reicht nicht, Teams in einem Browser zu starten.

Es gibt keine eigenständige Installationsquelle für das Outlook Add-in. Es ist Bestandteil des Teams Clients und wird auch mit dem Teams Client immer wieder aktualisiert. Insofern steht das Add-in etwas neben der neuen Software von Teams, die eigentlich eine "Progressive Web App" ist, die auf JavaScript durch ein Electron-Framework mit der Chromium-Engine gehostet wird. Das Add-in selbst wird im Benutzerverzeichnis installiert. Bei mir ist das

C:\Users\username\AppData\Local\Microsoft\TeamsMeetingAddin\1.0.20275.4\x64

Dort finden sich die aktuelle und vorherige Version für 32 und 64bit und ganz viele Sprachdateien ( ca. 43MB):

Neben all den DLLs ist aber eine Textdatei interessant, in welcher der Installationsverlauf protokolliert wird:

C:\Users\<username>\AppData\Local\Microsoft\TeamsMeetingAddin\meeting-addin-install-logs.txt

Genau genommen können Sie hier den kompletten Verlauf der Versionen über die Monate nachverfolgen. Bei mir fängt es 2018 an. Hier nur die Zeilen, in denen der Text "of the meeting add-in is now installed" vorkommt.

2018-10-29-10:13:45.070  Version 1.0.18261.4 of the meeting add-in is now installed
2018-11-07-03:35:22.674  Version 1.0.18288.4 of the meeting add-in is now installed
2018-11-14-12:28:21.273  Version 1.0.18303.2 of the meeting add-in is now installed
2018-11-30-10:52:26.834  Version 1.0.18317.2 of the meeting add-in is now installed
2019-01-07-11:00:54.758  Version 1.0.18345.2 of the meeting add-in is now installed
2019-02-06-10:53:57.399  Version 1.0.18361.3 of the meeting add-in is now installed
2019-02-12-10:47:18.232  Version 1.0.19029.3 of the meeting add-in is now installed
2019-03-09-06:24:15.913  Version 1.0.19036.2 of the meeting add-in is now installed
2019-04-12-12:00:11.233  Version 1.0.19098.3 of the meeting add-in is now installed
2019-04-12-03:28:35.066  Version 1.0.19071.2 of the meeting add-in is now installed
2019-04-20-01:35:42.900  Version 1.0.19098.3 of the meeting add-in is now installed
2019-04-26-01:58:36.440  Version 1.0.19106.2 of the meeting add-in is now installed
2019-07-03-12:17:14.983  Version 1.0.19127.3 of the meeting add-in is now installed
2019-07-27-07:59:24.711  Version 1.0.19163.4 of the meeting add-in is now installed
2019-07-30-02:31:36.682  Version 1.0.19127.3 of the meeting add-in is now installed
2019-08-02-11:49:03.488  Version 1.0.19163.4 of the meeting add-in is now installed
2019-08-21-12:11:54.100  Version 1.0.19178.2 of the meeting add-in is now installed
2019-09-15-11:22:30.060  Version 1.0.19231.3 of the meeting add-in is now installed
2019-10-18-09:24:52.210  Version 1.0.19238.2 of the meeting add-in is now installed
2019-10-19-05:01:14.840  Version 1.0.19252.2 of the meeting add-in is now installed
2019-11-22-01:52:29.883  Version 1.0.19296.2 of the meeting add-in is now installed
2019-12-18-12:23:06.890  Version 1.0.19317.2 of the meeting add-in is now installed
2020-02-29-12:03:55.482  Version 1.0.19350.3 of the meeting add-in is now installed
2020-03-24-10:46:26.261  Version 1.0.20031.2 of the meeting add-in is now installed
2020-06-04-12:22:32.751  Version 1.0.20091.2 of the meeting add-in is now installed
2020-07-01-02:09:43.958  Version 1.0.20130.1 of the meeting add-in is now installed
2020-07-24-05:36:05.907  Version 1.0.20107.1 of the meeting add-in is now installed
2020-08-28-11:25:21.853  Version 1.0.20130.1 of the meeting add-in is now installed
2020-09-19-09:28:03.341  Version 1.0.20240.5 of the meeting add-in is now installed
2020-10-14-01:10:30.490  Version 1.0.20244.4 of the meeting add-in is now installed
2020-11-19-11:46:02.039  Version 1.0.20275.4 of the meeting add-in is now installed

Microsoft aktualisierte das Add-in sehr regelmäßig. Am Beispiel der letzten Installation schaue ich mir die Details einmal an:

2020-11-19-11:46:00.778  System.ArgumentException: Eine Unterschlüsselstruktur kann nicht gelöscht werden, da der Unterschlüssel nicht vorhanden ist.
   bei System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
   bei Microsoft.Win32.RegistryKey.DeleteSubKeyTree(String subkey, Boolean throwOnMissingSubKey)
   bei Microsoft.Win32.RegistryKey.DeleteSubKeyTree(String subkey)
   bei Squirrel.MeetingAddinInstaller.<InstallMeetingAddinAsync>d__15.MoveNext()
2020-11-19-11:46:00.795  There is no version.txt. Falling back to getting version from folder name
2020-11-19-11:46:00.814  Version: 1.0.20275.4; addinPackageDirectory: 1.0.20275.4
2020-11-19-11:46:00.832  .dead exists: False
2020-11-19-11:46:00.848  before cleanup unused versions
2020-11-19-11:46:01.152  Addin directory exists. Copy was successful
2020-11-19-11:46:01.173  COM registration. Regsvr Path: C:\WINDOWS\system32\regsvr32.exe, 
                         Arguments: /s /n /i:user "C:\Users\fcarius\AppData\Local\Microsoft\TeamsMeetingAddin\1.0.20275.4\x64\Microsoft.Teams.AddinLoader.dll"
2020-11-19-11:46:02.039  Version 1.0.20275.4 of the meeting add-in is now installed

Die Fehlermeldung wird ignoriert. Ich weiß nicht, welche Schlüssel das Setup hier löschen möchte aber die scheint es auch nicht zu geben. Interessanter ist, dass das Setup ältere Versionen wegräumt um nach der Bereitstellung dann seine Version zu registrieren. In dem Zuge ist auch ein Blick in das Setup von Teams selbst eine Quelle zur Fehlersuche

C:\Users\fcarius\AppData\Local\Microsoft\Teams\SquirrelSetup.log

Auch hier sind die Aktionen zum Add-in zu sehen:

2021-01-18 22:48:54> MeetingAddinInstaller: There is no version.txt. Falling back to getting version from folder name
2021-01-18 22:48:54> MeetingAddinInstaller: Version: 1.0.20289.5; addinPackageDirectory: 1.0.20289.5
2021-01-18 22:48:55> MeetingAddinInstaller: .dead exists: False
2021-01-18 22:48:55> MeetingAddinInstaller: path to .dead: C:\Users\fcarius\AppData\Local\Microsoft\TeamsMeetingAddin\1.0.20289.5\.dead
2021-01-18 22:48:55> MeetingAddinInstaller: before cleanup unused versions
2021-01-18 22:48:55> MeetingAddinInstaller: Addin directory exists. Copy was successful
2021-01-18 22:48:55> MeetingAddinInstaller: Version 1.0.20289.5 of the meeting add-in is now installed
2021-01-18 22:48:55> PresenceAddinInstaller: Installing Teams Presence addin for Outlook...
2021-01-18 22:48:55> PresenceAddinInstaller: check if UC TypeLib points to current\resources\assets\tlb\Uc.tlb
2021-01-18 22:48:55> PresenceAddinInstaller:   2 is registered under HKLM and file exists. Registration not needed!
2021-01-18 22:48:55> PresenceAddinInstaller: UC Typelib WIN64 is registered under HKCU and file exists. Registration not needed!

Sogar die Registrierung mit REGSVR32.DLL ist sichtbar.

2021-01-18-10:48:55.192 COM registration. Regsvr Path: C:\WINDOWS\system32\regsvr32.exe, 
      Arguments: /s /n /i:user "C:\Users\fcarius\AppData\Local\Microsoft\TeamsMeetingAddin\1.0.20289.5\x64\Microsoft.Teams.AddinLoader.dll"

Dort finden Sie auch die Hinweise zum Presence Addon.

Die Registrierung können Sie also auch von Hand nachholen, wenn hier etwas schief gegangen sein sollte oder per SCCM o.ä. auch an den Benutzer verteilen.

# Zuerst beenden wir Teams und Outlook, damit keine DLLs gesperrt sind
Stop-Process -Name “Outlook” -Force -ErrorAction SilentlyContinue
Stop-Process -Name “Teams” -Force -ErrorAction SilentlyContinue

# Ermitteln des Addin Ordners
$FolderName = (Get-ChildItem -Path "$env:LOCALAPPDATA\Microsoft\TeamsMeetingAddin" -Attributes Directory | `
   Sort-Object | `
   Select-Object -Last 1).Fullname
# Registrieren der DLL
& "$($env:SystemRoot)\System32\regsvr32.exe" /s /n /i:user "$($FolderName)\x64\Microsoft.Teams.AddinLoader.dll"
# Rueckgabe des Fehlercode an aufrufenden Prozess
exit $LASTEXITCODE

Nach solchen Aktivitäten sollten Sie immer zuerst Teams und dann Outlook starten. Outlook, bzw. dass Add-in verbindet sich per COM-API mit dem Teams Desktop Client ,um weitere Informationen zu erhalten. Teams sollte also schon laufen. Nach der erfolgreichen Installation sollten Sie das Add-in in den Outlook-Optionen finden:

Über die Funktion zur Verwaltung von COM-Add-Ins können Sie das Add-In auch noch deaktivieren:

Auch diese Einstellung können Sie nicht nur durch die GUI sondern auch direkt in der Registrierung anpassen.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Office\Outlook\addins\TeamsAddin.FastConnect]
“Description”=”Microsoft Teams Meeting Add-in for Microsoft Office”
“FriendlyName”=”Microsoft Teams Meeting Add-in for Microsoft Office”
“LoadBehavior”=dword:00000003

Der Parameter "LoadBehaviour" ist hier interessant. Der Wert "3" lädt die DLL automatisch.

Über diese Einträge kann z.B. eine Inventarisierungssoftware recht schnell erkennen, das dieser Benutzer den Teams Desktop-Client mit Outlook Add-in installiert hat.

Meeting Policies

Sie können die generelle Funktion des Add-in natürlich wie alle anderen Outlook-Erweiterungen über Gruppenrichtlinien und die Registrierung steuern. Allerdings erlaubt Teams auch eine Provisionierung über Richtlinien aus der Cloud heraus. Bei den "Meeting Policies" gibt es unter anderem die Funktion, die Nutzung des Outlook Add-in zu unterbinden.

Ich habe nun nicht gesondert nachgeschaut, ob damit schon die Installation des Add-in unterbunden wird oder das Add-In beim Zugriff auf Teams einfach die Information bekommt, dass es für diese Benutzer inaktiv ist. Bei den Besprechungsrichtlinien werden mehrere Einstellungen in einem Set zusammengefasst und dann an die Anwender zugewiesen.

Checkliste Add-in fehlt

Mit den bisher beschrieben Informationen sollte es ihnen recht einfach sein, die häufigsten Fehler mit dem Add-In zu lösen. Aber manchmal erscheint das Menü dennoch nicht. Dann gibt es noch einige Punkte, die sie prüfen können:

Prüfung

Status

Teams Interop Mode

Es gibt fünf! Betriebsarten von Teams pro Anwender, die auch über die Verwendung von Meetings bestimmen. Das AddOn ist nur sichtba mit

  • Island
    Dann sehen Sie aber neben dem Teams-Icon vielleicht auch noch das Skype for Business Symbol
  • Teams Only
    Das ist das Wunschziel, wenn es nach Microsoft in der Cloud geht
  • SfBWithteamsCollabandMeeting
    Hier ist IM/Präsenz und Telefonie noch bei Skype for Business aber die Anwender können schon mit Teams Besprechungen planen

Mit der Betriebsart "SfBOnly" oder "SfbwithTeamsCollab" gibt es keine Besprechungsplanung in Teams und damit auch kein sichtbares Add-in in Outlook.

Add-in installiert

Kontrollieren Sie bitte, ob der Anwender tatsächlich die Desktop-Version von Teams gestartet hat und nicht die Browser-Version. Sie können auch nachschauen, ob die DLL im richtigen Verzeichnis vorhanden ist.

C:\Users\username\AppData\Local\Microsoft\TeamsMeetingAddin

Auch ein Blick in das Installationsprotokoll kann einfache Fehler sichtbar machen.

C:\Users\<username>\AppData\Local\Microsoft\TeamsMeetingAddin\meeting-addin-install-logs.txt

Angeblich müsste man Teams Desktop als Administrator installieren, damit die Registrierung der COM-DLLs klapt. Das kann ich aber nicht beststätigen.

Kontrolle der Outlook-Optionen

Prüfen Sie, ob das Teams Add-in in Outlook erscheint und aktiv ist.

Richtlinien

Prüfen Sie, ob sie per Gruppenrichtlinien bestimmte Outlook Add-ins blockieren oder übe die Teams Meeting Policy den Zugriff unterbunden haben

Falsche Outlook Version

Anscheinend sind nicht alle Outlook Versionen gleich. So soll die Add-in Funktion mit "Outlook 2016 Home and Business" nicht funktionieren.

UAC  Admin

Haben Sie Outlook vielleicht "als Administrator" gestartet? Dann kann es nicht mit Teams kommunizieren.

Damit sollten die meisten Fälle eigentlich gelöst sein.

Interessant sind aber Sonderfälle, die einen weiteren Einblick in die Funktion des Add-Ins erlauben

Sonderfall: Outlook ohne Teams

Auf meinem PC habe ich den Teams Desktop installiert aber nicht gestartet. Danach habe ich Outlook gestartet. Das Add-in war sichtbar aber ich konnte keinen Termin planen.

Für mich hat es den Eindruck, dass das Add-In per COM-API sich mit dem Teams-Desktop verbinden. Da hier keine Antwort kommt oder Teams nicht angemeldet ist, wird folgende Fehlermeldung angezeigt.

Sie können damit aber auch davon ausgehen, dass das Add-in ohne den Teams Client mit arbeiten kann. Es nutzt also nicht die Graph-API oder eine andere Schnittstelle, um ein Meeting zu planen, sondern bedient sich dem Teams Desktop Client.

Sonderfall unterschiedliche Benutzer

Für den zweiten Test war ich in Outlook wieder normal mit meinem Postfach verbunden. Ich habe mich aber in Microsoft Teams mit einem Benutzer aus einem anderen Tenant angemeldet. Dieser Benutzer hatte ein Exchange Online Postfach, welches aber nicht mit Outlook geöffnet war.

Ich konnte erfolgreich ein Meeting planen, welches von Outlook auch in meinem Kalender abgelegt wurde. Das Meeting war natürlich nicht beim dem Benutzer zu sehen, welcher an Teams angemeldet war. Dennoch stellt sich nun die Frage, wem das Meeting "gehört". Also habe ich das Meeting in Outlook erneut geöffnet:

Hier sieht erst einmal alles "gut" aus aber ich kann schon den Unterschied erkennen. Der in Outlook angemeldete Anwender hat eigentlich eine Office 365 E5-Lizenz mit Dialin-Audiokonferenz-Funktion. Hier sehen wie aber keine Einwahlnummern und Telefon-PIN. Das ist ein erstes sichtbares Zeichen, dass dieses Meeting wohl nicht zu meiner Benutzerkennung passt.

Für eine zweite Prüfung bediene ich mich den Besprechungsoptionen, die eine Webseite starten. An der Webseite bin ich mit dem gleichen Konto angemeldet, mit dem ich auch Outlook starte. Die Meldung ist eindeutig:

Dieser Benutzer ist nicht der Organisator dieser Besprechung, obwohl ich diese ja eigenhändig angefordert und die Einladungen mit meiner Adresse versendet habe.

Wenn ich den gleichen Link in einem Browser verwende, in dem ich mit dem Teams-Konto angemeldet bin, dann sehe ich die Optionen und auch den Displaynamen des Organisators

Wenn Sie genau hinschauen, dann können Sie in der URL die GUID des "Organisators" erkennen. Sie entspricht der Benutzer-ID des AzureAD-Kontos

Insofern gibt es hier schon die Möglichkeit, den Besitzer eines Meetings und sogar den Tenant zu ermitteln.

Da fehlt nur noch ein Befehl, um alle Meetings einer Firma oder einer Person aus dem Backend aufzulisten, um z.B. Reports zu erstellen.

Achtung:
Hier lauert also eine Fall für die Benutzer, welche mit mehreren Konten arbeiten und sich im Teams Desktop-Client ummelden. Sie laden zu Besprechungen ein, bei denen Sie selbst nicht Besitzer sind und ggfls. sogar in einem anderen Tenant mit anderen Compliance-Einstellungen stattfinden.

Benutzer sollten also im Teams Desktop-Client immer mit dem gleichen Konto verbunden sein, welches auch für Outlook verwendet wird.

Diese Konfiguration ist natürlich auch ein Compliance und Datenschutzthema. Ein Anwender ohne Teams Lizenz könnte ja Teams mit seinem "Privat-Konto" nutzen und damit Meeetings samt Desktopsharing u.a. "planen"

Sonderfall: Gastzugriff

Der dritte Test erfolgt wieder mit dem gleichen Konto in Outlook und Teams. Allerdings habe ich in Teams den Tenant gewechselt. Ich nutze mein "Gast-Recht", um in einem anderen Tenant mitzuarbeiten. Mein Team Desktop Client ist "gefühlt" in dem anderen Tenant. obwohl ich immer noch mit meiner primären Anmeldeadresse angemeldet bin.

Der Versuch hier nun ein Meeting mit Outlook zu planen schlägt mit folgendem Fehler feht:

Outlook versucht ohne weitere Prüfung ein Meeting als "Gast" in dem anderen Tenant anzufordern. Als Gast kann ich aber in diesem anderen Tenant kein Meeting planen und daher bekomme ich eine Fehlermeldung.

Gäste können, aus meiner Sicht zurecht, keine Besprechungen in einem anderen Tenant planen. Daher ist hier kein Risiko zu sehen

Es gibt aber einige Fürsprecher, die genau das Feature vermissen. Ein Gast, der so intensiv mit Teams arbeiten muss, sollte aus meiner Sicht dann einen Benutzer in dem Tenant samt Lizenz bekommen. Es ist ja schon angekündigt, dass Teams einen "Multi Account Support" bekommen soll.

COM-API ist nicht tot

Als Microsoft das erste mal mit Teams auf dem Desktop gestartet ist, habe ich das Elektron-Framework und den Chromium-Renderer gesehen und alles war "JavaScript, WebRTC" und alles neu. Sie können ja den Teams Client als Desktop-Version starten und alternativ im Browser aufrufen. Es sieht nicht nur fast identisch aus sondern es ist sogar überwiegend der gleiche Code, der hier genutzt wird. Das bezieht auch Linux und MacOS mit ein. Nur die mobilen Clients (Android/IOS) nutzen eine eigene Codebasis. Aber lange hat es so ausgesehen, also diese neue Welt der "Apps", "Progressive Web Apps", "SinglePage Apps" keine Brücke mehr zur alten Welt bereitstellen würden.

Das Bild wurde aber löchrig, also erste Produkte eine "Belegt-Anzeige" (Siehe Teams Presence und Office IM API) als USB-Gerät angebunden haben und der notwendige Clients nicht mit dem Internet gesprochen hat. Auch das Outlook Add-in spricht nicht wirklich mit dem Teams Backend oder Microsoft Graph API in der Cloud sondern verbindet sich zum lokalen Teams Desktop Client.

Der Teams Desktop-Client stellt weiterhin eine Schnittstelle bereit, über den solche Produkte quasi von der Seite her eine Verbindung aufbauen und auf Informationen zugreifen können. Leider sind die Beschreibungen dieser API nicht gut zu finden und ich gehe nicht davon aus, dass die COM-API des Teams Desktop Client nicht besonders leistungsfähig ist. Sie muss einfach nur den Anforderungen der Office Desktop-Produkte genüge tun und das ist nun mal:

  1. Bereitstellen von Presence Informationen
    Für die farbigen Icons des Status bei Personen
  2. Termine planen
    Um die Meeting-URLs zu erhalten
  3. Aktionen aus der "Kontaktkarte" auslösen
    z.B. eine Instant Message zu starten.

Dafür reicht es und da Microsoft ja die Hoheit sowohl über den Teams Desktop Client als auch die Office ProPlus-Desktopprodukte (Outlook, Word, Excel etc.) hat, können diese so eng miteinander arbeiten. Drittprodukte auf Basis dieser Schnittstelle bewegen sich allerdings immer auf unsicherem Boden, da Änderungen sehr schnell erfolgen können. Sie haben es an meinem persönlichen "Update-Protokoll" ja gesehen, dass das Outlook Add-in sehr oft aktualisiert wird.

Zusammenfassung

Die genauere Betrachtung des Outlook Add-Ins für Microsoft Teams hat einige interessante Aspekte aufgezeigt.

  • Es ist ein COM-Add-in, welches mit dem Teams Client spricht
    Es verbindet sich nicht direkt mit dem Teams Backend und muss sich auch nicht um eine Authentifizierung kümmern.
  • Es prüft nicht, ob das Teams-Konto mit dem Outlook-Konto übereinstimmt
    Der Skype for Business Client hat per Default die SIP-Adresse mit den ProxyAdresses verglichen und z.B. verhindert, dass verpasste Unterhaltungen im falschen Postfach landen.
  • Die COM-API habe ich nicht analysiert
    Wenn aber die Add-ins für Outlook sowohl den Präsenzstatus lesen als auch Meetings über den Teams Client steuern können, dann scheint die COM-API durchaus für 3rd Party Lösungen interessant zu sein. Leider ist eine Doku dazu sehr dünn gesät. (Teams Presence)

Die Funktionsweise der API erlaubt aber auch ganz kreative Optionen bei Migrationen. Wenn das Outlook-Add-in direkt mit dem lokal installierten Microsoft Teams Desktop Client spricht und es keine direkte Verbindung zum Backend gibt, dann könne ein Anwender mit Outlook und einem lokalen Exchange Server problemlos Teams-Meetings planen, obwohl es noch keinen Exchange Hybrid Mode gibt und er müsste gar nicht mal mit dem gleichen Konto auch an Office 365 angemeldet sein. Es könnte auch ein andere Konto sein. Zugegeben, schön ist es nicht, wenn der Anwender kein für Teams erreichbares Exchange Postfach hat oder sogar mit zwei Postfächern und damit zwei getrennten Kalendern arbeiten müsste. Zudem ist nie sicher, dass Microsoft die Funktion nicht irgendwann ändert.

Aber für eine kurze Übergangszeig könnte eine Firma mit lokale Exchange ganz schnell Teams (ohne Online Postfach, Ohne Hybrid Mode) ausrollen und Termine planen.

Weitere Links