关于程序员:浅谈Microsoft-Teams-Direct-Routing

10次阅读

共计 13917 个字符,预计需要花费 35 分钟才能阅读完成。

大家好,我是本期的实验室研究员——王远。明天我将通过试验和残缺的操作过程,向大家介绍通过 Microsoft Teams Direct Routing 相干技术实现在 Teams 中接听与拨打 PSTN 电话以及率领大家疾速实现 Direct Routing 及 SBC 的残缺配置流程。接下来就让咱们一起到实验室中一探到底吧!

微软 MVP 实验室研究员

Teams Phone System

在应用 Teams 的用户或者还未应用 Calling Service 这个性能,文言就是能够在 Teams 上拨打和接听电话,场景例如:所有员工均可应用 Teams 拨打手机和座机以及各种服务号码,而打进来的号码显示都是企业座机,同样手机拨打企业总机号通过分机号或者 DID 号码间接呼通 Teams 用户;或在 Teams 会议中通过 PSTN 电话呼入,或呼叫内部座机 / 手机通过语音的形式退出 Teams 会议。


在 Teams 中实现 PSTN 呼叫是依附 Phone System 来实现的,就如同传统企业外部电话零碎应用 PBX 零碎一样。通过 Phone System,用户能够应用 Teams 来拨打和接听呼叫、转接呼叫以及将呼叫设为静音或勾销静音。Phone System 用户能够单击其通讯簿中的姓名,而后 Teams 呼叫此人。要拨打和接听呼叫,Phone System 用户能够应用其挪动设施、带笔记本电脑或电脑的耳机,或者应用 Teams 电话。Phone System 管理员能够从用于消息传递、合作等的同一主机治理呼叫选项和设置。

在 Teams 中实现 PSTN 呼叫的形式有两种,别离是:

  • 基于云服务:Phone System with Calling Plan
  • 基于现有 PSTN:Phone System with Direct Routing

Phone System with Calling Plan

这是最为简略的一种形式,把 Microsoft 当作运营商,间接购买通话套餐就行,就好比咱们买了一部手机,而后就是抉择 SIM 卡的运营商是电信 / 联通 / 挪动,抉择好了运营商之后就抉择是 199 还是 299 或 399 的套餐了,购买了套餐后就能够用手机拨打和接听电话了。所以 Calling Plan 也是 SaaS 服务的一种,架构如下:

Phone System with Direct Routing

Direct Routing 对比较复杂的一种形式,但绝对更加灵便多变,Calling Plan 是微软给你号码用于拨打和接听电话,那么 Direct Routing 能够应用企业本人的电话号码在 Teams 上拨打和接听内线电话,同时还反对主动呼叫助理,呼叫队列,用户分机号等等性能,通过 SBC 语音网关能够实现更多的号码规定以及路由规定,基于这种形式实现在 Teams 中拨打和接听电话须要购买一台 SBC 语音网关设施用于对接本地电话线路运营商和 Microsoft Teams,架构如下:

Direct Routing 原理

要应用 Teams 拨打接听 PSTN 电话,不单单是购买一台 SBC 语音网关,还须要配置拨号打算,让用户在 Teams 拨号盘输出的号码能依照预期转换成 E.164 格局并依据用户所在位置及策略将 PSTN 呼叫路由到不同目的地语音网关并最终通过 E1 线路送达至运营商。

首先,Teams Phone System 遵循的规定 E.164

E.164 是国际电信联盟电信 (ITU-T) 的倡议,它定义了用于公共替换电话网络和其余数据网络的国内公共电信编号打算,还定义了电话号码格局 E.164 号码最多有 15 位数字,并以[+] 前缀书写。可确保 PSTN 上的每个设施都有寰球惟一的号码。此号码容许电话和短信能够正确路由到不同国家 / 地区的各个手机 / 座机。规范的 E.164 号码的格局为:

[+] [国家号码] [区域号码] [目标号码]

例如:咱们在国外游览的时候心愿拨打国内号码应急的时候正确的拨号应该是如下(以成都某座机为例阐明):


(E.164 格局号码解读)
下面的电话号码能够从寰球任意一个角落精准的呼叫到成都的一个叫 88888888 的座机号码上,同样拨打手机规定也是须要在后面增加 +86

而 Phone System 也是遵循这种号码格局,所以在 Teams 上要拨打电话肯定会在电话号码前增加一个 [+] 号。

(Teams 严格遵循 E.164 格局)

然而呢在 Teams 上为用户调配号码能够不那么严格的依照 E.164 的规范格局,因为在 Teams 中咱们是无奈针对某个用户的分机号去定义国家和对应地区的,所以在 Teams 外面用户号码只有满足是以 + 结尾的号码就行,例如设置某用户分机号为 tel:+1234,个别咱们就说这个用户的 Teams 分机号是 1234。

其次,国内座机拨打电话规定

依据通信管理局和工信部要求手机号是 1:1 且实名认证的,所以咱们只能采纳 座机号码 的形式与 Phone System 对接。而座机号码的 PSTN 线路又包含 SIP 中继和 E1 线路(也就是咱们所说的 30B+ D 线路),国外不同的规范下也有叫 T1 线路(23B+D)。

那么针对座机号码的拨打和接听咱们须要理解如下规定:

拨打本地座机:间接输出当地座机号码即可开始呼叫;

拨打本地手机:间接输出当地手机号码即可开始呼叫;

拨打当地座机:输出目标地区号 + 目的地座机号码能力开始呼叫;

拨打当地手机:在当地手机号码前加 0 能力开始呼叫;

拨打本地服务号码:间接输出 3 位或 5 位服务号码即可开始呼叫;

拨打当地服务号码:输出目标地区号 + 3 位或 5 位服务号码能力开始呼叫;

拨打 800 热线号码:间接输出 800 结尾的热线号码即可开始呼叫即可开始呼叫;

拨打海内电话:在开明国内短途性能后输出 00 国家代码 [目的地号码] 即可开始呼叫,其中打头的 00 是咱们国家的国内冠字号,次要作用是用来启动国内短途的号码;

特地揭示在座机拨打国内长途号码的时候区号都是 010、021、028 这类号码

仔细的同学曾经发现了 E.164 格局和咱们国内座机的拨号形式齐全不一样。对的,国内座机都是间接输出数字开始呼叫。并且国内的区号都是 010、021、028 这类号码,以 0 结尾的,精确的说在规范的 E.164 格局中地区号是没有 0 的,例如 010 变成规范格局后变成 +8610 对应北京地区区号,021 变成规范格局后变成 +8621 对应上海地区区号、028 变成规范格局后变成 +8628 对应成都地区区号。

最初,Teams Direct Routing

基于 E.164 和咱们国内的座机拨打规定的回顾,咱们接下来须要理解如何将一个预期想打进来的号码在 Teams 下来做号码转换,以及拨打该号码的用户是否有权限拨打短途号码,以及这个呼叫要从哪台语音网关出局,理解分明这些问题才好去做 SBC 和 Teams 语音路由策略布局。

拨号打算:

Teams 上的拨号规定的建设,能够使用户在拨号的时候不必过多思考 E.164 规定,用户只管依照惯例拨打电话习惯间接输出须要拨打的号码,剩下的交给 Teams 来帮用户主动欠缺成各种 E.164 格局送到 SBC 设施。

例如我在 Teams 拨号盘上输出一个手机号码(手机号前未加 0 示意是本地手机号)进行号码规定检测,后果会在号码后面主动补上 +86,而匹配的规定是本地手机号。


(在 Teams 管理中心测试手机号转换)


(在 Teams 客户端输出手机号呼叫)


(Teams 拨号界面主动为手机号增加 +86 并开始呼叫)
又例如给一个北京用户调配了成都的拨号策略,那么北京的用户要拨打北京本地一家单位的一个号码就会变成 +8628 成都的区号送到 SBC 语音网关,最终到成都电信运营商。这时候要么这个是空号,要么这个号码归属于成都某个单位或集体,总之必定打不到预期的北京当地单位的电话。


(治理用户拨号打算)
为了不便大家了解,请看上面这张拨号图,红色标记局部拨号记录我用的全局默认的拨号打算,绿色标记局部拨号记录是给以后账号调配了 CN-Chengdu 这个拨号打算的。

因为以后我的 Microsoft365 租户注册地为香港,即便我的全局拨号策略外面没有创立任何的拨号规定,默认会在所拨号码后面加上香港的地区号 +85,大赞微软!

当调配了 CN-Chengdu 拨号打算策略后,在 Teams 拨号盘外面输出 66668888 这个号码会主动填充上中国的国家代码 +86 和成都的地区代码 28。有了拨号打算 Teams 才晓得用户拨号的最终用意是本地电话还是长途电话还是其余电话。

(不同的拨号打算最终号码转换成果不一样)

语音路由策略:

语音路由更像是 Teams Phone System 拿到了一个用户最终想要拨打的号码之后要去匹配这个号码应该往哪台语音网关设施路由,所以这外面波及到了以下这张图上的内容。

例如:

下图有一条策略叫 CN-Chengdu-AllCalls,匹配的拨号模式是只有是在 Teams 上拨打的号码后面带“+”号就间接路由给 【cdsbc.and-sc.com】 这台语音网关并最终从成都的电信运营商发动呼叫到目标号码,这是最粗犷的模式。

那么,如果我只心愿成都某某共事应用 Teams 拨打电话的权限为只能拨打本地的座机,不容许拨打短途和国内电话呢?很简略,咱们只须要创立一条语音路由(下图中曾经有 CN-Chengdu-Local),在这条路由外面咱们写好匹配的拨号模式为 ^+8628\d+,这个拨号模式意思是只有在 Teams 拨号盘外面最终的号码是以 +8628 结尾的任意号码,咱们都把这个号码路由到 【cdsbc.and-sc.com】 这台语音网关并最终从成都的电信运营商发动呼叫到目标号码,反之是以 +86XX 其余号码结尾的呼叫一律不进行路由。同样咱们也须要在语音路由策略外面创立对应的策略应用 PSTN 用法关联到语音路由上,并最终把这条策略调配给限度拨打短途的用户即可。

(语音路由)


(语音路由策略)
下面的一个需要是成都当地某用户只能拨打当地电话,而实际上当地电话除了本地座机还有本地手机,咱们给出的策略是 +8628 结尾的号码才进行路由,而本地的手机变成 E.164 格局后是【+86189XXXX1042】这样的号码,依据策略这样的号码是不能被路由到语音网关的。所以,如果只是匹配一个拨号模式这个做法是不合理的,禁止拨打短途的场景中还应该包含能拨打本地手机号,那么这时候咱们就须要实现两个动作:

①在语音路由中减少 CN-Chengdu-Mobile,写好匹配的已拨号模式为 ^+86(1[345789]\d{9})$,这个拨号模式意思是以 +86 结尾,第二位数是 1,第三位数是 3 /4/5/7/8/ 9 并且前面还有 9 位任意数字的号码,这个其实就是咱们的手机号码规范的 E.164 格局,例如 +86147xxxx9999,这个手机号外面的 1 对应的规定中的第二位数,4 对应的第三位数,7xxxx9999 对应规定中的 d{9}, 也就是 9 位任意数字,并在 PSTN 用法中新建一个 CN-Chengdu-Mobile 进行关联到这条语音路由。


(新增 CN-Chengdu-Mobile 语音路由并创立 PSTN 用法)
②在已有的 CN-Chengdu-Local 语音路由策略中编辑 PSTN 用法新增加上 CN-Chengdu-Mobile 去关联拨打成都本地手机的路由。


(现有 CN-Chengdu-Local 策略中增加 CN-Chengdu-Mobile PSTN 用法)
实现以上两步操作后利用 CN-Chengdu-Local 这条语音路由策略的用户不论是拨打本地座机还是手机都能把拨打的号码路由到 【cdsbc.and-sc.com】 这台语音网关,并最终到电信运营商。

所以语音路由及策略包含:

  • 匹配的已号码模式
  • PSTN 用法
  • 关联的 SBC 语音网关

其中 PSTN 用法只是一个标识,同时关联语音路由策略和语音路由,当 Teams 上拨号盘输出的号码转换成 E.164 格局的号码并匹配上了咱们在语音路由中定义好的号码模式后就把这个 E.164 格局电话号码路由到 SBC 语音网关进行下一步的解决。从以上的配置中初看可能会有点绕,然而我认为只有把各种路由,策略,PSTN 用法的命名进行规范化还是比拟容易了解的。

布局 Direct Routing

整个 Phone System with Direct Routing 技术中波及到 3 大部分,别离是:

  • Microsoft365 租户:提供 Phone System 及 Direct Routing 技术和语音路由配置
  • SBC 语音网关:提供会话边界控制器用于将本地 PSTN 网络连接至 Microsoft Phone System
  • PSTN 运营商:俗称电话线路运营商,如电信、挪动、联通,提供中继或 E1 线路用于 PSTN 接入和拨出。

Microsoft 365 租户

首先要保障以后你领有一个 Microsoft 365 寰球版独立租户(Phone System 目前曾经反对 GCC DoD 环境)

在以后的 Microsoft365 中绑定企业域名,Microsoft 365 默认域名为.onmicrosoft.com,SBC 设施 FQDN 不反对此类通用域名,仅反对.contoso.com 此类域名。


(Microsoft 365 中绑定的域名)

领有对 Micrsofot 365 环境操控权限,操作账户至多须要 Teams 管理员权限用于增加 SBC 设施、配置语音路由策略、调配策略等操作。

在 Microsoft 365 上还须要独自的 Phone System 许可调配到用户,如果是 E5/A5 许可曾经自带了 Phone System 许可,若非此版本的许可,还须要额定购买 Phone System 许可并调配到须要拨打和接听电话的用户。

Direct Routing 能够在 Teams Admin Center 中配置,也能够在 Powershell 中配置,如需通过 Powershell 配置则须要提前装置 Teams 模块用于近程连贯,命令如下:

Install-Module -Name PowerShellGet -Force -AllowClobber

Install-Module -Name MicrosoftTeams -Force -AllowClobber

因为 SBC 与 Phone System 之间应用 Direct Routing 技术间接连贯,全副采纳 https TLS 协定所以须要相互信赖对方,此时 Direct Routing 节点为:

  • sip-all.pstnhub.microsoft.com
  • sip.pstnhub.microsoft.com
  • sip2.pstnhub.microsoft.com
  • sip3.pstnhub.microsoft.com

通过查问得悉 Microsoft Direct Routing 应用由 Baltimore CyberTrust Root 颁发的证书,所以,在配置之前须要获取到这张 CA 证书,并导入 SBC 设施用于信赖 Teams Direct Routing。

SBC 语音网关

在 SBC 这部分首先是须要一台通过微软认证的设施能力进行配置,已通过认证的 SBC 设施包含如下品牌:

AudioCodes、Ribbon Communications、Thinktel、Oracle、TE-SYSTEMS、Metaswitch、Cisco、Avaya、Nokia、Italtel、Ericsson、Cataleya、ULTATEL、Atos、Sansay Inc.、Enghouse Networks、Patton Electronics Co.、M5 Technologies(previously known as Media5 Corporation)、Ekinops、46 Labs LLC

具体的型号版本能够通过此链接查问:

  • https://docs.microsoft.com/zh…

其次,SBC 设施须要一个 FQDN 名称,且在公网 DNS 中能解析,用于 Teams Phone System 在互联网中发现 SBC 设施,所以此时还须要企业 IT 管理员领有公网 DNS 管理权限。

此外 SBC 设施须要一个固定公网 IP 地址对外映射端口,用于和 Phone System 建设 SIP 连贯,所以 DNS 解析的 IP 也应该是这个公网固定 IP 地址。

对于 SBC 设施对外映射的端口如下:

(留神:媒体端口 16384-16884 依据设施不同端口范畴有所不同)

最初 SBC 设施还须要一张 SSL 证书(可应用通配符证书 *.contoso.com),用于与 Phone System 建设 SIP Trunk 连贯时应用,目前通过 Direct Routing 技术连贯到 SBC 网关时,SBC 上的 SSL 证书仅反对以下证书颁发机构(GCC 环境仅反对 DigiCert 颁发机构颁发的证书):


(反对的证书颁发机构)

PSTN 运营商

最初就是 PSTN 运营商须要提供的线路了,能够是 SIP 线路,也能够是 E1 线路接到 SBC 设施上即可。

其实,一套 Teams Direct Routing 施行起来并非简略,除了以上列举到的内容以外还包含:客户的拨号习惯和拨号规定是如何定义的,多站点 SBC 的布局,依据不同用户的拨号权限配置策略等等并非一篇文章就能细化进去,还须要多方沟通。接下来的文章将会为大家分享配置阶段的操作。

以上,咱们曾经理解到 Teams Phone System with Direct Routing 的相干原理以及施行前的布局接下来我将持续率领大家疾速实现 Direct Routing 及 SBC 的残缺配置流程。

Microsoft Teams 配置

在做配置之前倡议依照肯定的规范格局来命令各种规定和策略以便前期运维,例如能够依照:国家 - 地区 - 规定形容的形式来命名,例如:

US-CA-Local 示意美国加利福利亚州本地电话

CN-CD-Local 示意中国成都本地电话

本文以 PowerShell 配置来进行分享(需提前装置好 Teams 模块,上一篇有相干要求和装置命令)。

通过 Connect-MicrosoftTeams 命令连贯到 Teams 远程管理。


(PS 连贯至 Teams 管理中心)

步骤 -1,创立拨号打算

在创立拨号打算之前能够用 Get-CsTenantDialPlan 查看下以后曾经有的拨号打算及具体的规定,例如我这里曾经有了 CN-Beijing 和 CN-Chengdu 这两个地区的拨号打算,大家能够看具体的规定外面曾经定义好了北京的区号是 10,成都的区号是 28,拨打本地电话的时候 Teams 的拨号规定都会依据以后用户所调配的拨号策略对电话号码区号进行主动补齐。


(查看以后已有的拨号打算)

接下来我模仿新建一个上海地区的拨号打算。
在前面的配置中还会用到上海地区的拨号打算,为了不便配置将上海地区的拨号打算赋予一个变量,前面的配置能够间接调用这个变量。

定义一个变量 DPParent,值为 CN-Shanghai。

而后应用 New-CsTenantDialPlan 命令创立一个拨号打算合集,形容中能够自定义为 shanghai dial plan。

接下来创立一个新的号码标准规定,也就是具体的拨号规定,例如:客户定义了外部分机号,Teams 之间相互拨打分机号而不须要输出 UPN 地址来进行呼叫,定义的外部分机号是 4 位,在分机号后面增加一个“+”变成一个的 E.164 格局号码。

创立的这个号码标准规定再放到之前创立的拨号打算 CN-Shanghai。


(创立拨号打算及规范化号码规定)
接下来去定义一些拨打各种内线电话的号码标准规定,并对这些规定加以命名。

以 CN-Shanghai-Local 这个号码标准规定为例阐明:

在 Teams 拨号盘外面拨打的号码以 1 到 9 结尾的 7 位数或 9 位数的电话号码,须要转换成 +8621[Teams 拨号盘外面输出的号码],也就是说这条规定对应的是拨打上海本地的号码,会在拨打的号码后面主动加上“+8621”来转换成 E.164 格局进而通过 Direct Routing 将这通电话呼叫送到 SBC 网关。


(创立号码标准规定)
通过 Set-CsTenantDialPlan 将创立好的 Normalization 利用到 CN-Shanghai 这个拨号打算。

(利用号码标准规定到拨号打算)

这样一个中国上海地区的拨号打算曾经创立结束,能够回到 Teams Admin Center 核心通过图形化界面来测试创立拨号规定是否失效。

此时在我的租户中就存在着 3 条自定义拨号打算的别离是:CN-Beijing、CN-Chengdu、CN-Shanghai。


(拨号打算合集)
进入 CN-Shanghai 拨号打算后,咱们所创立的号码规范化规定曾经全副呈现。

此时在测试中输出 66666666 这个号码,默认就是上海本地的一个电话号码,这时候预期应该是 +862166666666,而后果也合乎预期,并告知我匹配的是 CN-Shanghai-Local 这条规范化规定。


(上海本地号码标准测试)
如果应用这个拨号打算的用户须要拨打一个成都的短途座机呢?咱们来看看后果

留神下:这里我输出的短途号码是严格依照咱们国家电信局针对国内长途的拨号规定以 028 结尾的号码,不过在 E.164 格局中会将 28 后面的 0 给吃掉,变成 +862866666666,这是合乎咱们预期的。

特地留神:国内运营商依据地区不一样不肯定能承受 +8628 这样的目标区号,在我的项目中须要跟运营商沟通确认,如果不反对承受 +8628 相似的区号仅承受 +86028 这类区号,此时有两种形式能够解决这个问题:

  • 办法一:在拨号打算的号码标准规定中将转换的号码规定改写成 +860$1,把吃掉的 0 补回来。
  • 办法二:在 SBC 语音网关的号码转换规则中将 Teams 送过来的号码把 0 补上。


(短途号码标准测试)

步骤 -2,创立 PSTN 用法

回到 PowerSherll 中新增一个 PSTN 用法标识,定义为 CN-Shanghai-AllCalls。


(创立 PSTN 用法)

步骤 -3,创立 PSTN 网关

接下来就须要创立 PSTN 网关了,因为在语音路由中除了要用到匹配拨号打算模式和定义的 PSTN 用法以外还须要晓得这条路由最终走到哪台 PSTN 网关。

所以先定义好如下信息:

  • PSTN 网关的 FQDN 名称为 shsbc.and-sc.com;
  • SIP 信令监听端口为 5061;
  • 最大并发量为 30(E1 线路最大并发为 30);

而后应用 New-CsOnlinePSTNGateway 命令创立好 PSTN 网关。


(创立 PSTN 用法)

步骤 -4,创立语音路由

创立好语音网关后就能够开始创立语音路由了,首先咱们还是定义好 PSTNGW 变量的值为 shsbc.and-sc.com。

而后应用 New-CsOnlineVoiceRoute 命令创立一条语音路由,命名为 CN-Shanghai-AllCalls,关联的 PSTN 用法也是方才创立好的 CN-Shanghai-AllCalls,并定义好匹配到只有是以 + 结尾的所有号码就利用到这条策略,并最终路由到 shsbc.and-sc.com 这台 PSTN 网关。

不难看出我这里比较简单粗犷,所有用户其实都能够拨打任意电话,无论是短途还是本地电话,如果权限划分比拟粗疏,能够针对哪些用户能够拨打短途座机,哪些用户能够拨打短途手机来创立更多的语音路由和 PSTN 用法,并调配给相应的人员(具体配置可参之前的文章)。


(创立语音路由)

步骤 -5,创立语音路由策略

定义好了下面的语音路由,咱们再应用 New-CsOnlineVoiceRoutingPolicy 来创立语音路由策略,命名为 CN-Shanghai-AllCalls 并关联到 PSTN 用法为 CN-Shanghai-AllCalls。


(创立语音路由策略)

步骤 -6,利用策略到用户并测试

最初咱们拿一个测试用户设置 URI 为 tel:+0000 作为他在 Teams 上的号码,并启用他的企业语音性能(前提是这个用户必须要有 Phone System 的许可哦)。

命令为 Set-CsUser,如下图:


(设置用户线路号码)
能够应用 PowerShell 去调配策略也能够在 Teams 管理中心通过图形化界面去设置用户的拨号打算和语音路由策略(绿色标记局部曾经显示该用户在 Teams 上的电话号码为 +0000)。


(能够在 UI 界面编辑用户策略)
此时,咱们在 Teams 上的配置就曾经全副实现,在 Direct Routing 中也能看到咱们创立的 shsbc 语音网关曾经呈现,只不过是处于非活动状态而已,因为 SBC 语音网关还未配置与 Phone System 建设 SIP Trunk 连贯。


(SBC 设施列表及状态)
在语音路由中也能看到针对上海地区全副容许外呼的语音路由匹配的拨号模式就是只有是以 + 结尾的号码,关联上 PSTN 用法后就间接送到 shsbc.and-sc.com 这台语音网关。


(CN-Shanghai-AllCalls 语音路由规定)

SBC 语音网关配置

目前微软认证的语音网关品牌根本都是国外品牌,例如 Audiocodes 和 Ribbon 均在 Azure 利用市场提供基于虚拟机的语音网关。例如:


(奥科 VE 系列 SBC)


(ribbon SWeLite SBC)
所以,我将基于 Azure 上的 SBC 去为大家分享如何创立 SBC 虚拟机及配置 SBC。以 Ribbon SBC SWe Lite 为例跟大家整个配置流程如下:

  • 创立 SBC 虚拟机;
  • 创立公网 DNS 记录指向 Azure 虚拟机固定公网 IP;
  • 申请蕴含 SBC FQDN DNS 的证书(可应用通配符证书);
  • 筹备 MS Phone System CA 证书(公众号中回复“证书”即可获取下载链接);
  • SBC 虚拟机端口映射;
  • SBC ACL 配置;
  • SBC SIP Server 配置;
  • SBC SIP Profiles 配置;
  • SBC TLS Profiles 配置;
  • SBC Media Profiles 配置;
  • SBC Media List 配置;
  • Signaling Group 配置;
  • SBC Call Routing 配置;
  • SBC Transformation 配置;

看着貌似挺多的 …. 别胆怯跟着我持续往下看

基于 Azure 的 SBC 只能与运营商进行 SIP 对接,如果本人购买了如 ribbon SBC1000/2000 这样的设施是能够反对 E1 线路间接接到设施上,所以在创立 SIP Signaling Group 的时候只能抉择基于 IP 的信令而不能创立 ISDN 信令。

Part-1,创立 SBC SWe Lite 虚拟机

首先你须要一个可用的 Azure 租户,而后间接搜寻 Ribbon 即可,抉择 SBC SWe Lite & Quick Launch,如果间接抉择 SBC SWe Lite 也能够依据 Ribbon 提供的零碎镜像来创立虚拟机,然而要留神不能抉择 D 系列虚拟机,除了 DS3_v2 虚拟机外都是最多只能反对 2 张网卡,能够抉择 B 系列虚拟机,因为在 SWE 中须要 3 张网卡,一张网卡用于治理,另外两张网卡用于传输信令和媒体,另外还须要进行简单的 IP 路由配置,所以倡议采纳 Quick Launch。


(SBC SWe Lite & Quick Launch)
而后点击创立。


(创立 SBC SWe Lite 虚拟机)
接下来抉择资源组,这里我采纳间接新建的形式,也能够在创立虚拟机之前在 Azure Portal 中创立好资源组以及子网,并定义虚拟机搁置的地位为东亚地区(所属区域能够在 Teams Admin Center 中通过寰球地图疾速查看哪些区域语音网关存在故障),填写好虚拟机名称(一旦创立后虚拟机的名称无奈批改,倡议应用天文 - 性能 - 角色)以及并发呼叫范畴。


(创立资源组及虚拟机命名)
接下来抉择虚拟机的大小,用于 demo 的默认是 2 核 4GB 内存齐全足够,主动创立存储诊断账户。


(抉择虚拟机大小)
接下来进入网络配置,会依据虚拟机的命名主动创立虚构网络,如 CN-SH-SBC-SWeLite-VirtualNetwork,同时还会创立三个不同子网的网卡别离用于治理、信令和媒体传输。


(确认子网信息)

接下来进入 SWeLite 的预设置,包含管理员用户名及明码(前面通过 Web 治理 SBC 时的登录账号)、对 SBC 零碎定义包含主机名以及域名(这里要和上一篇文章在 Teams 上新建的 PSTN 网关 FQDN 保持一致)。

(定义治理账号及初始密码,FQDN)
接下来进行创立虚拟机前的配置查看,如果无误点击创立后大概 5 分钟左右就会将 SBC SWeLite 虚拟机依照预期设置创立实现。

(查看无误即可创立机虚拟机)
创立实现后点击左侧输入栏,此时将 SBC SWeLite 的治理 FQDN 和公网 IP 地址复制进去,首次进入 SBC 治理网页可用应用治理 FQDN 也可用应用 IP 地址间接拜访,另外 SBC 设施的公网 DNS 也须要解析到这个公网 IP 用于与 TeamsDirect Routing 通信。

(治理 FQDN 及公网 IP 地址)


(应用 IP 地址间接登录)


(应用 FQDN 地址间接登录)

Part-2,配置 SBC 前的筹备工作

1、创立公网 DNS 解析记录,将 shsbc 主机指向 52.175.60.156


(Teams 拨号界面主动为手机号增加 +86 并开始呼叫)
2、首次登录 SBC SWeLite 配置界面须要批改明码


(批改初始密码)
3、上传证书

在 SBC 证书配置中是提供生成 CSR 文件的性能,但个别我的项目中咱们都会让客户提前准备好一张通配符证书,最初将证书导出 PFX 文件给到咱们,咱们就可用从 PFX 文件中拿到这张证书颁发机构的根证书(CA 证书)以及两头证书。这里就不过多赘述如何获取 CA 证书和两头证书了。间接开搞导入 CA 证书和两头证书以及设施的证书。

进入 SBC Seeting,顺次开展平安 -SBC 证书 - 信赖的根证书。而后点击上传按钮,抉择上传文件的形式上传 SBC 设施的证书颁发机构的根证书。


(导入 SSL 证书颁发机构的 CA 证书)
应用同样的办法再导入两头证书,以及最最重要的 Phone System 的 CA 证书,是由 Baltimore CyberTrust Root 签发的。


(导入 Phone System 证书颁发机构的 CA 证书)
接下来抉择 SBC 次要证书,默认是有一张 ribbon 自签发的证书,这时候咱们要换成曾经申请好了的通配符证书或者单 / 多域名证书,还是以导入 pfx 文件的形式将证书导入。


(导入 SSL 公网证书)
实现导入证书的动作之后,原来由 ribbon 签发的证书隐没了,变成了咱们所申请的 SSL 证书。


(查看 SSL 公网证书)
4、批改零碎工夫

因为之前曾经做好了 DNS 解析记录,所以此时也可用通过 https://shsbc.and-sc.com 来对网关进行治理了,在 Setting 中顺次进入 System——Node-LevelSettings,将默认的 UTC 时区更改为 GMT + 8 的中国时区并利用,这样零碎的工夫就会正确显示。


(批改设施的零碎时区)

Part-3,SBC 配置

接下来的配置就是比拟重要的内容了,包含 ACL、TLS Media Profiles 以及 SIP Server 和 SG、Call Routing 了,如果独自一项一项配置外面的逻辑性太强了至多须要 1 到 3 工作日,如果有问题再来排错的话破费的工夫更长。好在 ribbon 为咱们提供了一个 Wizard 用来配置 SBC 与 Teams 的 Direct Routing。整个过程非常简单,大概 3 分钟左右就能配置实现,在顶部点击 Tasks 而后抉择 SBC 疾速配置,点击疾速配置向导。


(抉择疾速配置向导)
Step1:抉择配置的模式

抉择 SIP Trunk — Microsoft Teams,对这个配置进行命名为 Shanghai,拨打电话的国家抉择 China,SIP 并发 30 路。


(抉择配置的模式)
如果你有包含 ATT、NTT 等以下的 SIP 线路的运营商可间接抉择相应的 SIP Trunk。


(SIP Trunk 的配置)
Step2:配置 Other SIP Trunk

这里我临时以 SWeLite 作为一个 SIP 线路提供商,间接填写以后设施 FQDN。在 Teams Direct Routing 配置中将 Ethernet 1 IP 作为信令和媒体的源 IP,要映射的 NAT 地址为下面提到的 Public IP,监听端口填写 5061。


(NAT 映射及监听端口配置)
Step3:查看

查看 SIP Trunk 配置以及 Teams Direct Routing 配置,如果无误点击 Finish 将会在 30 秒内实现所有的配置。


(查看预设配置)
以上步骤实现后在 Azure Portal 上增加网络端口放行。


(入站端口规定)
为什么我说 SWeLite 的 Easy 配置向导很赞呢?咱们看下配置向导帮咱们干了多少事件,绿色标记的中央全是向导帮咱们配置的,只是 Transformation 不会帮咱们配置,而这凑巧又是最重要的中央,它管制的进出 Teams 的号码规定以及送到运营商的号码规定。只是有一个默认的(.*)转换成 \1,也就是说进来的是什么号码我就给什么号码进来。咱们还是先看下其余的配置吧,测验 Teams Direct Routing 是否配置胜利,咱们只须要看信令组外面的 Teams 的信令是否为 UP 状态,点击 Counters 还能看到数据的进和出,SBC 和 Teams 之间的 SIP Options 返回值是 200 表明通道曾经建设起来了。


(通过 SIP Options 判断 DR 配置)
还有诸如 ACL、TLS Profiles、Media Profiles、Media Lists、SRTP Profiles 等。


(SBC 配置项)
从 SBC 设施上看到 Teams Direct Routing 的状态是 OK 的,那么从 Teams Admin Center 外面来看 SBC 设施的状态呢?通过 SBC 列表能够看到 shsbc 这台网关的 TLS 连贯状态和 SIP 状态都是失常的。


(Teams Admin Center 中 SBC 状态)
接下来咱们试试从 SBC 外面发动一个呼叫吧,还是以 wangy@and-sc.com 这个账号进行测试,这个账号的号码为 +0000 测试下 Teams 客户端是否收到这个呼叫。进入 SBC 点击 Diagnostics 而后再 Tools 外面抉择 Test a Call,指标号码填写 +0000,Calling Number(主叫号码)填写一个手机号,而后点击 OK 就能够开始测试了。


(Test a Call)
在 Teams 客户端上胜利的接管到了这条来自 SBC 设施的呼叫。


(Teams 客户端接管到来自 SBC 的呼叫)
好了,基于以上内容根本就能够实现应用 Teams 客户端来拨打接听电话了。

总结

本文先介绍了 Teams Direct Routing 原理及后期布局,有利于 Microsoft 365 管理员深刻规划设计 Teams 语音呼叫。而后着重介绍了 Teams Direct Routing 及 SBC 配置,有助于 Microsoft 365 管理员深刻了解 Teams 语音呼叫,能够依据理论需要动静调整。

*Source Link:

  • https://docs.microsoft.com/zh…
  • https://docs.microsoft.com/zh…
  • https://docs.microsoft.com/en…
  • https://docs.microsoft.com/zh…

这里有更多微软官网学习材料和技术文档,扫码获取免费版!
内容将会不定期更新哦!

正文完
 0