IMS补充业务场景介绍
呼叫保持流程
发起呼叫的一方将发送 INVITE 消息,并将媒体流从 sendrecv 转换为 sendonly。当对方返回 200 OK 响应时,则将媒体流进一步转换为 recv-only。双方确认(ACK)后将进入呼叫保持状态,在此状态下无通话相关 RTP 数据包传输。
大致流程如下

UE A发送INVITE(Sendonly)到网络
网络发送INVITE(Sendonly)到UE B
UE发送200 OK(recvonly)到网络
网络发送200 OK(recvonly)到UE A
UE A发送ACK到网络
网络发送ACK到UE B
呼叫激活流程
将呼叫保持流程升级至呼叫激活流程;由激活端发送邀请消息;媒体流由Sendonly转变为sendrecv;接收方返回HTTP 200状态码;媒体流由recvlony转变为sendrecv;双方确认后恢复RTP数据包传输。
大致流程如下

UE A发送INVITE(sendrecv)到网络
网络发送INVITE(sendrecv)到UE B
UE发送200 OK(sendrecv)到网络
网络发送200 OK(sendrecv)到UE A
UE A发送ACK到网络
网络发送ACK到UE B
遇忙呼叫转移
被呼叫端繁忙且已配置了呼叫转移策略,在主叫端会收到来自网络发送的181号码对应的转移信息
大致流程如下

UE A发送INVITE呼叫UE B
UE B返回486 busy到网络
网络返回181呼叫转移信息给UE A
网络发送INVITE呼叫到转移的UE C
UE C返回200 OK到网络
网络发送200 OK到UE A
UE A发送ACK到UE C
会议通话流程
根据运营商需求有两种方式:
可以直接发送Refer至会议电话中心;可将UE-D加入会议电话,并使UE-D与UE-A维持通话状态;无需Hold UE-D。
也可以先Hold UE D,再发送REFER到会议电话中心,将UE D加入会议电话。
可参考前面文章创建Ims Conference call流程介绍 (qq.com)
大致流程如下
UE A跟UE B通话
UE A跟UE C通话,Hold住跟UE B的通话
UE A Hold住跟UE C的通话
UE A发起INVITE到网络会议中心
网络返回200 OK(INVITE)到UE A
UE A发送ACK到网络
UE A发送refer(UE B)
UE B 返回202 Accepted到UE A
UE B发送NOTIFY(100 Trying)到UE A
UE A返回200 OK(NOTIFY)到UE B
再添加UE C到会议电话跟UE B相同的流程。
会议通话过程中再添加通话
UE A、B和C在进行会议通话
UE A Hold会议通话,呼叫UE D
UE A添加UE D到会议通话
