Teams SBA -Telefonie ohne WAN
Teams gibt es nur als Cloud-Lösung. Das stellt besondere Anforderungen an die Verfügbarkeit bei der Nutzung von Telefonie mit Teams Selbst mit einem lokalen Gateway und Direct Routing bedeutet ein Ausfall von Teams oder des Internet Links eine schwerwiegende Störung. Bei Skype for Business gab es dazu extra die SBA - Survivable Branch Appliance, mit der beim Ausfall der WAN-Verbindung ein Notbetrieb möglich ist. Diese Seite beschreibt Lösungen mit Teams, SBCs und passenden Endgeräten.
Diese Seite wurde schon Ende 2019 geschrieben, weil Kunden nach Möglichkeiten einer "Notfalltelefonie" gesucht haben. Auf "Whats new in Teams Nov 2020" wurde erstmals öffentlich eine Teams SBA genannt.
Die Funktion ist mittlerweile Public und
verfügbar
Survivable Branch Appliance (SBA) for Direct Routing
https://learn.microsoft.com/en-us/microsoftteams/direct-routing-survivable-branch-appliance
Teams SBA (Dez 2020)
Schon Skype for Business hatte die Anforderung, dass ein WAN-Ausfall die Telefonie-Funktion nicht stören sollte. Ohne Cloud wollte man als Firma aber nicht in jeden Standort einen Skype for Business Standard Server oder sogar Enterprise Pool aufbauen. Das lohnt sich erst bei mehreren Clients und jeder Pool braucht ja dann auch wieder eine Veröffentlichung der WebDienste und idealerweise auch einen Edge-Server. Daher war es "üblich", wenn eine kleinere Niederlassung über den Pool der Zentrale mit bedient wird.
Technisch konnte man schon damals vor Ort ein TK-Gateway oder einen SBC platzieren, damit eine Kopplung zu einer lokalen Telefonanlage oder einem Amtskopf möglich war. Nur ohne WAN-Verbindung konnten die Anwender natürlich auch nicht mehr telefonieren. Daher hat Microsoft bei Skype for Business für diesen Sonderfall die Funktion SBA - Survivable Branch Appliance / SBS Survivable Branch Server" vorgesehen. Es war ein kleiner Windows Server, der von den als "Failover-Lösung" eine klar umrissene Funktion bereitgestellt hat, nämlich eingehende und ausgehende Telefonate. Andere Funktionen wie Präsenz, ResponseGroups, Konferenzen etc. waren nicht möglich.
Auf der Ignite 2020 wurde erstmals eine SBA erwähnt und auf der Seite "What's new in Microsoft Teams Nov 2020" gibt es ebenfalls einen Absatz:
To support the most critical conversations in the event of an outage, the new
Survivable Branch Appliance (SBA) allows you to place and receive PSTN calls
even in the event of a WAN outage. This SBA is now available to certified
Session Border Controllers (SBC) vendors, allowing SBCs to link with the Teams
client in the event the client cannot reach the Microsoft Calling network.
Quelle:
https://techcommunity.microsoft.com/t5/microsoft-teams-blog/what-s-new-in-microsoft-teams-november-2020/ba-p/1945889
Ganz überraschend ist das aber nicht, denn Microsoft hat schon auf der Ignite 2020 ca. 1 Minute darüber gesprochen
Ignite 2020: Microsoft Teams Calling Made Simple
https://myignite.microsoft.com/sessions/ce579550-8c9b-4e96-8354-6b7776de14ac
Minute 11:50-12:50
Mehr als das Bild war damals aber noch nicht öffentlich.
Quelle
https://myignite.microsoft.com/sessions/ce579550-8c9b-4e96-8354-6b7776de14ac
Minute 12:00
Damit ist die Katze nun aus dem Sack, dass erneut die SBC-Hersteller eine Software auf oder neben ihrem Gateway bereitstellen können, damit Teams Clients auch ohne Internet zumindest eine rudimentäre Telefonie-Funktion nutzen können. Der Teams Client wird also erkennen, wenn er keine Verbindung mehr zur Cloud hat und dann auf eine Verbindung zum lokalen Service auf oder neben dem SBC schwenken. Über den Weg sind zumindest eingehende und ausgehende direkte 1:1 Anrufe möglich. Allerdings fehlen natürlich viele Funktionen, die Teams ansonsten noch rund um die Telefonie mitliefert, aber nur mit dem Backend in der Cloud möglich sind. Dazu zählen Group Calls, Voicemail, Transcription u.a.
Wenn das Teams Backend oder die Internetanbindung gestört ist, dann fehlt in Teams aber nicht nur die Telefonie sondern jegliche Funktion wie Presence, Chat, Kalender, Adressen, Teams und Kanäle. Wir kommen also wieder an den Punkt, wo wir einmal mehr über Wahrscheinlichkeiten eines Ausfalls von Komponenten nachdenken müssen. Das betrifft auch ihre lokale TK-Außenanbindung. Das sind auch immer wenige ISDN-Anschlüsse, die ausfallen können. Ihr Carrier kann dann die Rufnummern vielleicht auf ein Mobiltelefon umleiten. Wenn Sie schon einen SIP-Trunk haben, dann ist das eine IP-Verbindung, die vermutlich die gleiche Ausfallwahrscheinlichkeit hat, wie ihre Internetanbindung. Hier geht es dann drum sich Gedanken über eine Backup-Leitung o.ä. zu machen. Wie wäre es den SBC und den SIP-Trunk gleich mit in die Cloud zu legen und damit lokal noch weniger Abhängigkeiten zu haben.
- What's new in Microsoft Teams Nov 2020
https://techcommunity.microsoft.com/t5/microsoft-teams-blog/what-s-new-in-microsoft-teams-november-2020/ba-p/1945889 - Ignite 2020: Microsoft Teams Calling Made Simple
https://myignite.microsoft.com/sessions/ce579550-8c9b-4e96-8354-6b7776de14ac - Microsoft Teams telephony Survivable Branch Appliances (SBA)
https://tomtalks.blog/2020/09/microsoft-teams-telephony-survivable-branch-appliances-sba/ - Teams SBA on Linux (SBA - Survivable Branch Appliance)
https://techcommunity.microsoft.com/t5/microsoft-teams/teams-sba-on-linux-sba-survivable-branch-appliance/m-p/1020420 - Survivable Branch Appliances (SBAs) mit
Direct Routing
https://www.audiocodes.com/de/solutions-products/products/products-for-microsoft-365/direct-routing-survivable-branch-appliances
Survivability im Logging
Manchmal muss ich in Teams Logs nach Problemen suchen. Sie kennen sicher die Tastenkombination "CTRL-ALT-SHIFT-1", um die Teams Supportdateien zu erfassen. Hier habe ich vor einiger Zeit auch eher zufällig erste Einträge gefunden:
MSTeams Diagnostics Log 5.11.2021__10_09_13.txt "callingConstants": { "telemetry": { "survivability": { "applianceModeLivenessChecksIntervalInMs": 300000, "cloudModeLivenessChecksIntervalInMs": 900000, "pingTimeoutInMs": 3000, "applianceFqdns": "", "applianceAccountConfigServiceUrls": { "calling_trouterUrl": "wss://{appliance_fqdn}:4444/v3/c", "calling_registrarUrl": "https://{appliance_fqdn}:8443/V2/registrations", "calling_callControllerServiceUrl": "https://{appliance_fqdn}:8443/api/v1/conv", "calling_conversationServiceUrl": "https://{appliance_fqdn}:8443/api/v1/conv" }, "applianceLivenessUrlFormat": "https://{appliance_fqdn}:8443/api/v1/keepalive" },
Ausgangssituation
Wenn ich heute per Direct Routing telefoniere, dann nutze ich folgende Wege:
Mein Teams Client kommuniziert mit dem Teams Backend über Internet und auch der SBA spricht mit dem Teams-Backend. Wenn ich Direct Routing und Media Bypass eingerichtet habe, dann bleibt die Audio-Kommunikation (RTP) im LAN. Sie sehen aber sofort, dass ein Ausfall der Internet-Verbindung die Signalisierung unterbricht und damit keine Verbindungen mehr aufgebaut werden können. Rein technisch könnte das Endgerät natürlich direkt mit dem SBC sprechen und telefonieren. Die beiden Endpunkte müssten nur entsprechend ausgestattet sein.
In die Richtung wird die SBA-Funktion mit Teams gehen.
Alternative: SIP-Fallback
Aber wir haben bei Net at Work schon viel früher diskutiert, wie so eine Notfallfunktion denn aussehen könnte. Wir haben schon zu Zeiten von Lync und Skype for Business über solche Konfigurationen nachgedacht, als noch Telefone von "SNOM" zertifiziert waren. Die SNOM-Telefone konnten sich nämlich nicht nur per SIP an Lync/Skype anmelden sondern über zusätzliche Konten im Telefone auch noch mit SIP-Vermittlungsstellen arbeiten. Damals waren aber Gateways von Audiocodes, Sonus/NET etc. noch reine Gateways und haben Endgeräte nur sehr rudimentär unterstützt.
Aber schon damals konnte man natürlich eine klassische SIP-Vermittlung, z.B. Asterisk, FreePBX u.a., zusätzlich betreiben. Mit einer passenden Konfiguration konnten dann eingehende Anrufe über das Gateway zu Skype geroutet werden. Wenn Skype aber nicht verfügbar ist, kann das Gateway den Fehler/Timeout abfangen und den Anruf an einen anderen Proxy weiter reichen. Mittlerweile können sogar Session Border Controller mit einigen Einschränkungen als Gegenstelle für SIP-Telefone dienen. Sie können natürlich so nicht die Funktion einer vollwertigen VoIP-Vermittlungsstelle abbilden aber für einen Notbetrieb kann es schon ausreichend sein, Anrufe zu tätigen und anzunehmen.
Es könnte also durchaus möglich sein, dass eine "Basisfunktion" intern bereit gestellt wird, wenn der Teams Client mit dem SBC direkt kommunizieren könnte. Das Bild zeigt die theoretischen Kommunikationswege.
Diese Funktion ist sogar heute schon möglich. Allerdings nicht mit dem Microsoft Teams Client. Sie könnte aber als "Backup" für ausgewählte Endstellen natürlich einfache SIP-Telefone an den SBC anbinden.
Sie müssen den SBC dann nur so konfigurieren, dass er eingehende Anrufe an eine Nebenstelle zu Teams sendet aber bei einem Fehler den Anruf auf die SIP-Endstelle umleitet. So bleibt das Telefon "stumm", wenn Teams funktioniert. Diese Funktion wird oft als "Alternate Routing". Diese Funktion des SBC wird auch gerne genutzt, um z.B. klassische Endgeräte (Fax, DECT, Türsprechstellen, Aufzugstelefone etc.) einzubinden, wenn es keine vollwertige PBX auf dem Gelände mehr gibt.
Sie können über den Weg natürlich auch auf ihrem Windows PC einen Softphone-Client installieren, der per SIP mit dem SBC spricht. Achten Sie aber darauf, dass sich der Teams Client und das Softphone nicht um die gleichen "TEL"-URIs und USB-Headsets streiten.
Allerdings wird natürlich die Konfiguration etwas aufwändiger, da sie nicht nur die "Basic-PBX" im SBC oder daneben aufgestellter Technik konfigurieren und pflegen müssen sondern auch die Endgeräte erfordern eine Provisionierung und Anmeldung.
- Use #anynodeSBC parallel calling to ring
a #MicrosoftTeams user's dialed number. This
can be done simultaneously on the Team‘s
Client and desktop phone connected to a #PBX
https://twitter.com/anynodeSBC/status/1238372040278753280
Yealink Teams Device und SIP
Nur weil die Teams Client von Microsoft kein SIP zu einem SBC sprechen, ist das ja noch kein KO-Kriterium, dass es nicht andere Geräte gibt, die einen Teams-Client starten UND zugleich SIP sprechen können. Sie können ja z.B. ein Android-Tablet als "Telefon" missbrauchen, indem Sie es mit einem Headset oder Handset ausstatten und zusätzlich auch einen SIP-Client installieren. Es gibt aber noch drei namhafte Hersteller, die "Teams-Telefone" bereit stellen.
Bislang habe ich es nur bei den Telefonen von Yealink gefunden, dass die Telefone nicht nur den Teams-Client starten sondern im Hintergrund parallel auch noch einen SIP-Client nutzen können
Damit können dann zumindest die Anwender mit einem Yealink-Telefon auf dem Tisch nicht nur per Teams sondern auch über SIP telefonieren.
Die Firma Ribbon/Sonus hat mit Yealink dazu eigens eine Beschreibung für ihre SBCs veröffentlicht. Mit etwas Erfahrung können Sie das Telefon so auch an SBCs von Audiocodes und anderer Hersteller anbinden.
- Best Practice - Configure SBC Edge for Yealink Teams Client
Local Survivability
https://support.sonus.net/display/UXDOC80/Best+Practice+-+Configure+SBC+Edge+for+Yealink+Teams+Client+Local+Survivability#BestPractice-ConfigureSBCEdgeforYealinkTeamsClientLocalSurvivability-TeamsClientSurvivabilityOperation
Weitere Links
- Direct Routing
- Direct Routing und Media Bypass
- SBA - Survivable Branch Appliance / SBS Survivable Branch Server
-
Survivable Branch Appliance (SBA) for Direct Routing
https://learn.microsoft.com/en-us/microsoftteams/direct-routing-survivable-branch-appliance -
Survivable Branch Appliances (SBAs) mit Direct Routing
https://www.audiocodes.com/de/solutions-products/products/products-for-microsoft-365/direct-routing-survivable-branch-appliances - Best Practice - Configure SBC Edge for Yealink Teams Client
Local Survivability
https://support.sonus.net/display/UXDOC80/Best+Practice+-+Configure+SBC+Edge+for+Yealink+Teams+Client+Local+Survivability#BestPractice-ConfigureSBCEdgeforYealinkTeamsClientLocalSurvivability-TeamsClientSurvivabilityOperation - Use #anynodeSBC parallel calling to ring a #MicrosoftTeams
user's dialed number. This can be done simultaneously on the
Team‘s Client and desktop phone connected to a #PBX
https://twitter.com/anynodeSBC/status/1238372040278753280 - Teams SBA on Linux (SBA - Survivable Branch Appliance)
https://techcommunity.microsoft.com/t5/microsoft-teams/teams-sba-on-linux-sba-survivable-branch-appliance/m-p/1020420 - Asterisk (Telefonanlage)
https://de.wikipedia.org/wiki/Asterisk_(Telefonanlage)
Mit Links zu anderen SIP-Vermittlungen - AudioCodes release Virtual Direct Routing Survivable Branch
Appliance (DR-SBA)
https://tomtalks.blog/audiocodes-release-virtual-direct-routing-survivable-branch-appliance-dr-sba/