Technische Voraussetzungen & Vorbereitende Maßnahmen
Für die Umsetzung der Anbindung einer STARFACE an Microsoft Teams mit Hilfe eines Patton SmartNodes sind folgende Voraussetzungen bzw. Anforderungen zu erfüllen:
- Patton SmartNode SBC (oder IAD oder Gateway) mit Trinity-Firmware 3.18.1 oder neuer; bevorzugt SN5500, SN5600 oder Virtual SmartNode mit Teams-Lizenzen.
Öffentliche IP-Adresse für den SBC (DNAT-/Portforwarding-Szenarien werden nicht untersützt).
Info In Patton Trinity Firmwareversion 3.19 und höher (ab Februar 2021) werden DNAT-/Portforwarding-Szenarien unterstützt! Der SBC benötigt damit keine eigene öffentliche IP-Adresse mehr, sondern kann über Portforwardings erreichbar gemacht werden.
- FQDN bzw. vollqualifizierter Domänenname für den SBC (z.B. sbc01.meinefirma.de) mit Verweis im DNS auf dessen öffentliche IP-Adresse.
- X.509 Zertifikat für den SBC von einer öffentlichen, vertrauenswürdigen Stammzertifizierungsstelle sowie Zugriff auf den zugehörigen privaten Schlüssel. Das Zertifikat muß auf den FQDN des SBC ausgestellt sein.
- Der Patton SmartNode SBC muß eine korrekte Datums-/Uhrzeitkonfiguration besitzen und sich bestenfalls per NTP mit einer präzisen Zeitquelle synchronisieren.
- Folgende Informationen werden zusätzlich für die Konfiguration benötigt:
- STARFACE IP-Adresse
- Liste aller STARFACE-Benutzer, die die Teams-Anbindung verwenden sollen, inklusive ihrer Telefonnummern (intern/extern) und den SIP-Kontodaten (Benutzername und Kennwort).
Selbstverständlich müssen der SBC und die anzubindende STARFACE per SIP und RTP unbeschränkt miteinander kommunizieren können.
Lizenzierung
Die Patton SmartNode SBC müssen über Lizenzen mit der gewünschten Anzahl SIP-Sessions (gleichzeitige Gespräche) sowie SRTP-Channels (Anzahl verschlüsselter Kanäle) ausgerüstet werden. Da die Kommunikation mit Microsoft zwingend Verschlüsselung voraussetzt, müssen für die zu erwartende Anzahl gleichzeitiger Gespräche sowohl SIP-Sessions, wie auch SRTP-Channels in gleichem Maße lizenziert werden.
Die Modelle der Serie SmartNode SN5500 lassen sich so auf bis zu 200 gleichzeitige Gespräche aufrüsten.
Das Modell SmartNode SN5600 ist für bis zu 1.000 parallele Gespräche ausgelegt.
Der virtualisierte SmartNode kennt keine Beschränkungen – diese sind von der Leistungsfähigkeit der virtuellen Hardware abhängig.
Die von Patton ausgestellte Lizenzdatei sieht hierbei wie folgt aus und kann direkt per Copy&Paste auf der Kommandozeile des Geräts eingegeben werden:
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
# SIP Sessions [sip-sessions], license serial number: 44879, system serial number: 00aabb0f2439
# Additional SIP Sessions: 20 [extra-sessions=20]
install license YdDBmT/IKgN3CZyBjNDJ6S1m+0yyXlneLhjVeNnWyl3SC
# SRTP Channels [srtp-channels], license serial number: 44880, system serial number: 00aabbcc2439
# Additional SRTP Channels: 20 [extra-channels=20]
install license Gure82bMZFNNe229ee+rEWaV2eVfOe2PJfIFzt60uKwEe |
Ob die Lizenzen erfolgreich eingespielt wurden, kann anschließend über die Eingabe von show system licenses überprüft werden:
Codeblock |
---|
0F2439(cfg)#show system licenses
Local Licenses
==============
The following licenses are available on the local device:
Serial Number: 00A0BA0F2439
-------------------------------------------------------------------------------
Source: Available: Usage:
License Name Blt-In + Inst. + Leased = Total = Alloc + Free
-------------------------------------------------------------------------------
sip-sessions 4 20 57 81 81
srtp-channels 8 20 28 28
voice-channels 4 4 4
-------------------------------------------------------------------------------
iprouter Y Y
sip-registrar Y Y
sip-tls-srtp Y Y
transcoding Y Y
------------------------------------------------------------------------------- |
VoIP Profile
Das VoIP-Profile bestimmt die Parameter, mit denen die Audiokommunikation zwischen SBC und Teams respektive SBC und STARFACE abläuft.
Codeblock | ||||
---|---|---|---|---|
| ||||
profile voip pf_voip_microsoft codec 1 g711alaw64k rx-length 20 tx-length 20 silence-suppression voice-update-frames srtp key-lifetime 31 media-processing forced srtp transmission forced rtp rtcp-multiplexing |
Erweitern | ||
---|---|---|
|
|
Codeblock | ||||
---|---|---|---|---|
| ||||
profile voip pf_voip_starface codec 1 g711alaw64k rx-length 20 tx-length 20 silence-suppression voice-update-frames media-processing forced rtp rtcp-multiplexing |
Erweitern | ||
---|---|---|
|
|
Routing Tabellen
Routingtabellen definieren, zwischen welchen Schnittstellen (Interfaces) Anrufvermittlung stattfindet. Die Vermittlung von Anrufen kann von verschiedenen Parametern abhängig gemacht werden und es können Regelwerke (Complex-Functions oder Mappingtabellen) auf den vermittelten Anruf angewendet werden.
Codeblock | ||||
---|---|---|---|---|
| ||||
routing-table |
called-e164 rt_from_teams route default dest-interface if_sip_starface cf_teams2starface routing-table |
called-e164 |
Erläuterungen:
- Zeile 1: Das Mapping calling-e164 to calling-uri konvertiert eine konkrete anrufende Telefonnummer zu einer anrufenden SIP-URI.
- Zeile 2-4: Konkrete Telefonnummern werden eine SIP-URI (des jeweiligen STARFACE SIP-Accounts) übersetzt, so dass der Anruf von der STARFACE dem richtigen Endgeräteaccount zugeordnet werden kann. Die IP-Adresse der SIP-URI muß der IP-Adresse der STARFACE entsprechen, da die STARFACE eingehende Anrufe von Teams ansonsten nicht dem richtigen Endgeräte-SIP-Account zuordnen kann.
rt_from_starface
route default dest-service hg_microsoft-teams cf_starface2teams |
Erweitern | ||
---|---|---|
| ||
|
Interfaces und SIP-Gateways
Codeblock | ||||
---|---|---|---|---|
| ||||
interface sip if_sip_microsoft-directrouting-primary
bind context sip-gateway gw_sip_wan_5062
route call dest-table rt_from_teams
remote sip.pstnhub.microsoft.com 5061
local sbc.meinefirma.de 5062
hold-method direction-attribute inactive
no call-transfer accept
privacy
address-translation outgoing-call contact-header user-part fix sbc.meinefirma.de
use profile voip pf_voip_microsoft
srtp renegotiate-on-connect
penalty-box sip-option-trigger interval 60 timeout 60 force tls
session-timer 3600
trust remote
trust 52.114.0.0/16
interface sip if_sip_microsoft-directrouting-secondary
bind context sip-gateway gw_sip_wan_5062
route call dest-table rt_from_teams
remote sip2.pstnhub.microsoft.com 5061
local sbc.meinefirma.de 5062
hold-method direction-attribute inactive
no call-transfer accept
privacy
address-translation outgoing-call contact-header user-part fix sbc.meinefirma.de
use profile voip pf_voip_microsoft
srtp renegotiate-on-connect
penalty-box sip-option-trigger interval 60 timeout 60 force tls
session-timer 3600
trust remote
trust 52.114.0.0/16
interface sip if_sip_microsoft-directrouting-tertiary
bind context sip-gateway gw_sip_wan_5062
route call dest-table rt_from_teams
remote sip3.pstnhub.microsoft.com 5061
local sbc.meinefirma.de 5062
hold-method direction-attribute inactive
no call-transfer accept
privacy
address-translation outgoing-call contact-header user-part fix sbc.meinefirma.de
use profile voip pf_voip_microsoft
srtp renegotiate-on-connect
penalty-box sip-option-trigger interval 60 timeout 60 force tls
session-timer 3600
trust remote
trust 52.114.0.0/16
service hunt-group hg_microsoft-directrouting
timeout 3
drop-cause normal-unspecified
drop-cause no-circuit-channel-available
drop-cause network-out-of-order
drop-cause temporary-failure
drop-cause switching-equipment-congestion
drop-cause access-info-discarded
drop-cause circuit-channel-not-available
drop-cause resources-unavailable
route call 1 dest-interface if_sip_microsoft-directrouting-primary
route call 2 dest-interface if_sip_microsoft-directrouting-secondary
route call 3 dest-interface if_sip_microsoft-directrouting-tertiary
location-service ls_microsoft
domain 1 microsoft.com
domain 2 sip-du-a-eu.pstnhub.microsoft.com
domain 3 sip-du-a-us.pstnhub.microsoft.com
domain 4 sip-du-a-as.pstnhub.microsoft.com
domain 5 pstnhub.microsoft.com
domain 6 sip.pstnhub.microsoft.com
domain 7 sip2.pstnhub.microsoft.com
domain 8 sip3.pstnhub.microsoft.com
identity-group DEFAULT
user phone
authentication inbound
authenticate none
registration outbound
register none
call outbound
transport-protocol force tls
call inbound |
Erweitern | ||
---|---|---|
| ||
|
Codeblock | ||||
---|---|---|---|---|
| ||||
interface sip if_sip_starface
bind context sip-gateway gw_sip_lan_5060
route call dest-table rt_from_starface
remote starface.meinefirma.de
hold-method direction-attribute sendonly
early-disconnect
no call-transfer accept
no call-transfer emit
address-complete-indication accept set
address-translation incoming-call calling-e164 from-header
address-translation incoming-call calling-uri from-header
address-translation incoming-call calling-name from-header
use profile voip pf_voip_starface
trust remote
authentication-service as_starface-sipaccounts
username user.01 password meingeheimessippasswort01
username user.02 password meingeheimessippasswort02
username user.03 password meingeheimessippasswort03
location-service ls_starface
domain 1 starface.meinefirma.de
identity-group teams
authentication outbound
authenticate 1 authentication-service as_starface-sipaccounts
authentication inbound
authenticate none
registration outbound
registrar starface.meinefirma.de
lifetime 180
register auto
call outbound
call inbound
identity user.01 inherits teams
identity user.02 inherits teams
identity user.03 inherits teams |
Codeblock | ||||
---|---|---|---|---|
| ||||
context sip-gateway gw_sip_lan_5060
bind location-service ls_starface
interface if_gw_sip_lan_5060
transport-protocol udp+tcp 5060
no transport-protocol tls
bind ipaddress ROUTER if_eth00 if_eth00
context sip-gateway gw_sip_lan_5060
no answer-untrusted-hosts
no shutdown
context sip-gateway gw_sip_wan_5062
use profile tls pf_tls_default
bind location-service ls_microsoft
interface if_gw_sip_wan_5062
no transport-protocol udp+tcp
transport-protocol tls 5062
bind ipaddress ROUTER if_eth01 if_eth01
spoofed contact-header manual sbc01.fluxpunkt.de port 5062
spoofed via-header manual sbc01.fluxpunkt.de port 5062
context sip-gateway gw_sip_wan_5062
no answer-untrusted-hosts
connection-reuse
no shutdown
|
IP-Router und physikalische Netzwerkport-Konfiguration
Codeblock | ||||
---|---|---|---|---|
| ||||
context ip ROUTER
interface if_eth00
ipaddress if_eth00 192.168.1.1/24
tcp adjust-mss rx mtu
tcp adjust-mss tx mtu
interface if_eth01
ipaddress if_eth01 123.123.123.123/28
tcp adjust-mss rx mtu
tcp adjust-mss tx mtu |
Codeblock | ||||
---|---|---|---|---|
| ||||
port ethernet 0 0
bind interface ROUTER if_eth00
no shutdown
port ethernet 0 1
bind interface ROUTER if_eth01
no shutdown |
Die IP-Adresse der calling-uri muß der IP-Adresse der STARFACE entsprechen!