Sip协议的呼叫流程
|
Mgcp协议的呼叫流程
|
H248协议的呼叫流程
|
|||
1
|
IAD检测到摘机
|
1
|
IAD检测到摘机事件以ntfy命令上报
|
1
|
IAD检测到摘机以Request(notify)命令上报
|
|
局端(MGC)接收命令之后回复200响应
|
局端(MGC)接收命令之后回复Reply响应
|
|||
2
|
IAD设备合成拨号音
|
2
|
MGC给IAD下发RQNT命令,该命令携带数图描述符digit -map和信号请求描述符 l/dl拨号音
|
2
|
MGC给IAD下发Request(MF)命令,该命令携带数图描述符digit -map和信号请求描述符 cg/dt拨号音
|
|
MG接收命令执行完成之后回复200响应
|
MG接收命令执行完成之后回复Reply响应
|
|||
至此摘机可以听到拨号音
|
|||||
3
|
IAD按照事先配置的数图规则收号
|
3
|
IAD按照数图规则收号,并将号码以ntfy命令上报
|
3
|
IAD按照数图规则收号,并将号码以Request(notify)命令,该命令观察事件描述符(OE)中携带号码上报
|
|
MGC接收命令之后回复200响应
|
MGC接收命令之后回复Reply响应
|
|||
4
|
IAD向服务器发起invite请求,该请求域中携带主被叫号码信息并且在SDP中携带主叫IAD的一些媒体参数,如编码方式,打包时间,rtp流的负载格式等
|
4
|
MGC给IAD下发CRCX命令,该命令的本地连接描述符携带语音通话的一些参数如编码方式,打包时间,设置rtp流的负载为telephone-event,指示IAD创建连接
|
4
|
MGC给IAD下发Request(Choose)命令,该命令的SDP中携带语音通话的一些参数如编码方式,打包时间,设置rtp流的负载为telephone-event,指示IAD创建关联域
|
服务器回复100 trying,指示已经接受到请求并在处理中
|
IAD接收命令回复200响应,该响应中携带IAD的媒体信息
|
IAD接收命令之后回复Reply响应,该响应中携带主叫IAD的媒体参数
|
|||
至此主叫IAD已经将语音通话请求发送给被叫
|
|||||
5
|
服务器给主叫IAD下发 180ringring,指示IAD合成回铃音并下发给话机
|
5
|
MGC给主叫IAD下发RQNT(携带信号描述符)G/rt回铃,指示IAD给话机下发回铃音
|
5
|
MGC给主叫IAD下发Request(MF)命令携带信号请求描述符cg/rt 回铃,指示IAD合成回铃音并下发给IAD
|
|
IAD接收命令执行之后回复200确认
|
IAD接收命令执行完成之后回复Reply响应
|
|||
至此被叫开始振铃,主叫开始回铃
|
|||||
6
|
被叫IAD摘机时以 200 OK请求通知服务器
|
6
|
被叫IAD摘机时以ntfy命令通知局端
|
6
|
被叫摘机时以Request(notify)通知局端
|
至此被叫摘机
|
|||||
7
|
服务器给主叫IAD下发200 OK,指示IAD开始通话
|
7
|
MGC给主叫IAD下发MDCX,指示MG修改连接模式(RCàSR)
|
7
|
MGC给IAD下发Request(MF)命令,该命令携带被叫IAD的媒体信息,指示IAD开始通话
|
IAD回复ACK 确认
|
IAD接收命令执行之后回复200确认
|
IAD接收命令回复Reply响应,该响应中携带IAD的媒体信息
|
|||
至此主被叫开始通话
|
|||||
8
|
IAD检测到挂机
|
8
|
IAD检测到挂机事件以ntfy命令上报
|
8
|
IAD检测到挂机以Request(notify)命令上报
|
|
局端(MGC)接收命令之后回复200响应
|
局端(MGC)接收命令之后回复Reply响应
|
|||
至此主叫挂机,通话结束
|
|||||
9
|
IAD向服务器发起Bye
|
9
|
MGC给IAD下发MDCX,指示IAD修改连接模式(SRàIN)
|
9
|
MGC 给被叫IAD下发Request(MF),指示IAD修改连接模式(SR->IN),同时移除终端信息(物理终端和临时终端)
|
服务器回复 200 OK
|
IAD接收命令执行完成之后回复200响应
|
MGC给被叫IAD下发Request(S=*),指示IAD删除关联域
|
|||
|
MGC给主叫IAD下发DLCX,指示IAD删除连接
|
IAD接收命令执行完成之后回复Reqply响应
|
|||
|
IAD接收命令执行完成之后回复200响应
|
|
|||
至此呼叫流程结束
|