本文讲述几种IMS异常场景及处理方式。
-
VoLTE过程中终端不能接收到网络的RTP/RTCP包
临时网络或者其它原因,终端会遇到通话过程中接收不到网络端的RTP/RTCP包,导致监听RTP/RTCP的timer超时,通话中断。
针对这种场景,终端可以自行做配置,去掉监听RTP/RTCP包的定时器,直到用户手动挂断电话,这样避免了通话过程中短暂的异常情况导致通话自动挂断。
可以通过wait_user_end_call_no_rtppkt来设置,配置为1时,终端收到RTC/RTCP超时后,不会请求SIP BYE,除非用户手动挂断电话;配置为0时,终端收到RTP/RTCP超时,发送SIP BYE挂断电话。
-
终端不能建立VoLTE承载
Activate default EPS bearer context request,这个消息是网络给终端分配特定的QCI值并通知到终端。
建立VoLTE通话时,需要建立QCI-1的专用承载。
但实际会存在网络原因导致建立VoLTE call的专用承载失败,终端VoLTE失败,会进行重试,最终在CS域进行呼叫。
针对这种场景,终端可以设置在LTE 默认承载上收发RTP/RTCP包,建立VoLTE call,避免VoLTE call呼叫失败。
可以通过default_fallback_support来设置,为1时支持VoLTE call专用承载建立失败情况下,使用默认承载。
-
QoS异常情况下的VoLTE