【问题现象】
VOLTE用户振铃alerting态时(包括做主被叫),无法从4G网络切换到2G网络。
【原因定位】
1)下面以VOLTE用户做被叫,振铃态alerting aSRVCC切换流程为例来分析。该案例中的问题出现在第5步,即eMSC(SRVCCIWF)给SBC/P-CSCF发的切换请求所包含的消息不全,导致SBC/P-CSCF返回CANCEL消息,原因是“Do not match switch condition”。
2) 实际测试中SBC/P-CSCF上收到的eMSC发给其的INVITE消息中:contact消息缺少g.3gpp.srvcc-alerting标识,且无Accept头域和Recv-Info头域。导致SBC/P-CSCF返回CANCEL消息。具体消息如下:
a) SBC/P-CSCF收到的eMSC的INVITE消息:
b) SBC/P-CSCF返回的CANCEL消息:
说明:eMSC的IP地址:10.189.233.4,SBC/P-CSCF的IP地址:10.185.225.98。
3)查询eMSC关于SRVCC切换的数据配置如下,SRVCC能力列表为空。据此,判断是eMSC未开启alerting态SRVCC功能导致(注:此时mid-callSRVCC应该也会失败,只是我们在修改完该数据后再进行mid-callSRVCC测试)。
%%LSTLOCALSRV:;%%
RETCODE=0操作成功本局业务信息表
————–
会议进入提示音标志=否
会议背景音标志=否对主控方播放会议进入提示音标志=否对主控方播放会议背景音标志=否会议背景音间隔时长(秒)=5
最大前转次数=5
最大ECT次数=5会议远端方建立会议标志=否包含BC重复指示信元=否包含BC2信元=否
包含Calling Party SubAddress信元=否包含Called Party SubAddress信元=否包含LLC Repeat Indicator信元=否包含LLC1信元=否
包含LLC2信元=否
包含HLC Repeat Indicator信元=否包含HLC1信元=否包含HLC2信元=否
包含User to User信元=否包含CLIRSuppress信元=否包含CLIR Invocation信元=否包含CCC apability信元=否包含Stream Identifier信元=否包含Supported Codecs信元=否保留Bit16-Bit31=0000000000000000SRVCC能力列表=NULL
a) “支持SRVCC-ALERTING”:SRVCC-IWF在IST(Initialize Session Transfer)流程发送给IMS的INVITE消息中,通过contact头域携带g.3gpp.srvcc-alerting标签。g.3gpp.srvcc-alerting将指示SRVCC-IWF是否支持Alerting会话切换。勾选该参数,表示支持;不勾选,表示不支持
b) “支持SRVCC-MID-CALL”:SRVCC-IWF在IST(Initialize Session Transfer)流程发送给IMS的INVITE消息中,通过contact头域携带g.3gpp.mid-call标签。g.3gpp.mid-call将指示SRVCC-IWF是否支持Mid-Call会话切换。勾选该参数,表示支持;不勾选,表示不支持。
【解决方案】
eMSC通过配置数据,增加SRVCC-MID-CALL和SRVCC-ALERTING功能后恢复。eMSC指令如下:
SETLOCALSRV:SRVCAP=SUPSRVCCMIDCALL-1&SUPSRVCCALERTING-1;
再次跟踪发现contact消息已携带g.3gpp.srvcc-alerting标识,且有Accept头域和Recv-Info头域,并携带了state-and-event-info标识。
本文整理自网络,文章版权归原作者所有,如有侵权,请联系我们进行删除。小编微信(gprshome201101)
长按下方二维码图片 > 识别图中二维码 > 关注“51学通信公众号”
51学通信接头方式如下: