百问和权威指南中,都说明bridge送主叫号码使用origination_caller_id_number或effective_caller_id_number ,我被害了
应该用origination_caller_id_name或effective_caller_id_name
今天研究freeswitch向外透传号码,账号是sip账号注册到对方的vos平台上
原来对方vos平台没有开通透传号码权限,只能透传一个设置好的号码,开通透传权限后,如果送到vos的号码有问题,将会呼叫失败。
vos平台开通透传权限后,在cli下使用 originate {ignore_early_media=true,origination_caller_id_number=87653150}sofia/gateway/out_gw1/18901056365可以拨通手机,并显示87653150这个号码
配置dialplan:
将原有的bridge <action application="bridge" data="sofia/gateway/out_gw1/$1"/>
改为:
<action application="bridge" data="{origination_caller_id_number=87653150}sofia/gateway/out_gw1/$1"/>
但是使用注册到freeswitch的eyebeam拨打手机,则提示 UNALLOCATED_NUMBER 错误,无法完成呼叫
然后使用以下两个cli命令测试
originate {ignore_early_media=true,origination_caller_id_number=87653150}sofia/gateway/out_gw1/18901056365 &bridge(user/1008) 没问题
originate user/1008 &bridge({ignore_early_media=true,origination_caller_id_number=87653150}sofia/gateway/out_gw1/18901056365) 有问题
测试的结果是先执行originate 将中继呼通后,bridge内部分机没有问题
但是先呼通内部分机,再bridge中继线路,则会失败,咨询过群里的余老大和老李同志也没解决,后来通过抓包对比Remote-Party-ID
下面是没有问题的Remote-Party-ID
发现呼叫失败的Remote-Party-ID前面多了个Extension 1008 这部分只有在sip账号的配置文件中有
通过改动每一个caller_id_name 和caller_id_number确定了问题所在,只有改动effective_caller_id_name时,才可以正确呼叫并显示号码
---------------------
作者:okhelper
来源:CSDN
原文:https://blog.csdn.net/okhelp/article/details/44923707
版权声明:本文为博主原创文章,转载请附上博文链接!