通过直接路由的方式可以和企业通信系统实现对接服务。奥科最近发布的解决方案提供了类似的功能。今天,我们介绍一种通过开源opensips实现的方式。

首先用户需要配置MS tearms的配置文件,配置直接路由设置。

配置安全设置:
- PS> $userCredential = Get-Credential
- PS> $sfbSession = New-CsOnlineSession -Credential $userCredential
- PS> Import-PSSession $sfbSession
然后添加直接路由网关:
- PS> New-CsOnlinePSTNGateway -Fqdn voipgw.ipnordic.dk -SipSignallingPort 5061
- -MaxConcurrentSessions 10 -ForwardCallHistory $true -Enabled $true
然后配置opensips和加载相关模块和安全证书文件:
- listen = tls:WAN_IP:5061 loadmodule“tls_mgm.so”
- modparam(“tls_mgm”,“verify_cert”,“1”)
- modparam(“tls_mgm”,“require_cert”,“1”)
- modparam(“tls_mgm”,“tls_method” ,“TLSv1_2”)
- modparam(“tls_mgm”,“certificate”,“/ etc / tls / heart1 / fulllchain.pem”)
- modparam(“tls_mgm”,“private_key”,“/ etc / tls / heart1 / privkey.pem” )
- modparam(“tls_mgm”,“ca_list”,“/ etc / ssl /certs / ca-bundle.crt”)
呼叫CFG配置文件中,需要添加选项:
- local_route {
- $var(dst) = "pstnhub.microsoft.com";
- if (is_method("OPTIONS") && ($(ru{s.index, $var(dst)}) != NULL))
- append_hf("Contact: <sip:SBC_FQDN:5061;transport=tls>\r\n");
- }
注意,用户需要检查TLS超时设置,如果时间短的话,需要做响应调整:
发送选项以后,检查路由权限,是否是MS撕裂地址:
- # Checks from MS Teams
- if(is_method("OPTIONS") && is_domain_local("$rd") && check_source_address("2")) {
- xlog("L_INFO", "[MS TEAMS] OPTIONS In");
- send_reply("200", "OK");
- exit;
- }
通过以上设置,用户可以实现使用opensips做Direct Routing SBC。这里,opensips支持了比较灵活的证书对接方式,可以实现多个SIP服务器对接MS证书方式。

笔者仅是分享此案例,详情请访问此链接:
资料来源:HTTPS://blog.opensips.org/2019/09/16/opensips-as-ms-teams-sbc/
SIPlab @知识星球学习SIP语音相关技术,解决方案分享
星号@知识星球免费获取关于星号的完整知识资料


关注微信公众号:asterisk-cn,获得有价值的Asterisk行业分享
Asterisk freepbx,FreeSBC技术文档:www.freepbx.org.cn
融合通信商业解决方案,协同解决方案首选产品:www.hiastar.com
Asterisk / FreePBX / FreeSBC中国合作伙伴,官方qq技术分享群(3000人):589995817