有的客户通话记录中,是否接通,不准确,有的呼叫明明未接通,也会显示未已接通。抓包看了下,
image.png
freeswitch 把 bleg 发给语音网关后,语音网关立即就回复了 200 OK,导致呼叫中心认为此通话已经接通。实际上未接通。
再找个没问题的环境抓包看了下,这个语音网关就回复了 183 振铃,未接通的话,就不会有 200 OK。
image.png
所以这个是对的。
可能原因,第一个环境是模拟线路,语音网关收到 INVITE 之后转成模拟线路发给运营商了,他也不知道接通未接通,所以直接回复了 200 OK。而第二个环境是数字线路,网关知道是否已经接通,所以就回复 183 振铃,接通后才透传 200 OK。
对于普通呼叫,问题不大,只是个是否接通显示准不准确的问题。但是对于AI自动外呼,问题就来了,第一个环境用不了AI,因为不知道什么时候接通的。只能用 AI 去听,这个是十分不准确的。幸运的是,第一个环境的客户不用 AI,否则还是个大麻烦。
目前的测试结果,E1网关、运营商的 sip 注册的数字网关,都是没有问题的。普通电话线的模拟线路好像都有问题。
更新:数字线路也会不准确。今天遇到一个客户,数字线路的,也是客户振铃就返回200OK了。正常情况客户振铃应该返回180、183,客户接听了才返回200,他家数字线路是振铃就返回200OK了。正常通话不受影响,但是自动外呼不行啊。正想放弃,运营商的人说开个单子开通一下就行。合着这是线路那边可以设置的啊。花了两天开通了此功能,果然就好了。