MGCP传真—主叫
|
MGCP传真—被叫
|
||
1
|
主叫传真MG_A检测摘机以ntfy命令上报
|
|
|
MGC接收命令之后回复200响应
|
|
||
2
|
MGC给MG_A下发RQNT命令,该命令携带数图描述符digit -map和信号请求描述符 l/dl拨号音
|
|
|
MG接收命令执行完成之后回复200响应
|
|
||
3
|
MG_A按照数图规则收号,并将号码以ntfy命令上报
|
|
|
MGC接收命令之后回复200响应
|
|
||
4
|
MGC给MG_A下发RQNT命令,指示MG_A检测后续拨号事件
|
|
|
MG接收命令执行完成之后回复200响应
|
|
||
5
|
MGC给MG_A下发CRCX命令,指示MG_A创建连接
|
1
|
MGC给MG_B下发CRCX命令,该命令中携带主叫MG的媒体信息,指示MG_B创建连接
|
MG接收命令回复200响应,该响应中携带MG的媒体信息
|
MG接收命令回复200响应,该响应中携带MG的媒体信息
|
||
|
|
2
|
MGC给MG_B下发RQNT命令,该命令中携带信号请求描述符 l/rg 振铃
|
|
MG接收命令执行完成之后回复200响应
|
||
6
|
MGC给MG_A下发MDCX命令,该命令携带被叫MG的媒体信息,同时以RTP流的方式下发回铃音
|
|
|
MG接收命令回复200响应,该响应中携带MG的媒体信息
|
|
||
|
|
3
|
被叫传真MG_B检测摘机以ntfy命令上报
|
|
MGC接收命令之后回复200响应
|
||
7
|
MGC检测到被叫摘机之后,给主叫MG_A下发MDCX,指示MG开始通话
|
4
|
MGC检测到被叫摘机之后,给主叫MG_B下发MDCX,指示MG开始通话
|
MGC接收命令之后回复200响应
|
MGC接收命令之后回复200响应
|
||
流程执行到此,主被叫可以进行语音通话,由于通话的双方为传真机所以主叫传真会发送v21传真前导信号给被叫
|
|||
|
|
5
|
MG_B检测到V21传真信号,以ntfy命令上报传真开始事件
|
|
MGC接收命令之后回复200响应
|
||
8
|
MGC接收到传真开始事件之后,给主叫MG_A下发MDCX命令,该命令的本地连接描述符里携带T38传真的一些参数
|
6
|
MGC接收到传真开始事件之后,给主叫MG_B下发MDCX命令,该命令的本地连接描述符里携带T38传真的一些参数
|
MG接收命令协商之后回复200响应
|
MG接收命令协商之后回复200响应
|
||
流程执行到此,主被叫开始进行传真,但是传真内容的与sip协议t38协议包不同,通过wireshark工具过滤出传真负载如下图示(CAO 我的截图死哪儿去了)
报文格式类似: RTP UNKNOW RTP VERSION 0
|
|||
9
|
MGC检测到传真完成之后,给主叫MG_A下发MDCX命令,该命令的本地连接描述符里携带语音通话的一些参数,即切回语音通话
|
7
|
MGC检测到传真完成之后,给主叫MG_A下发MDCX命令,该命令的本地连接描述符里携带语音通话的一些参数,即切回语音通话
|
MG接收命令协商之后回复200响应
|
MG接收命令协商之后回复200响应
|
||
10
|
主叫传真MG_A检测挂机以ntfy命令上报
|
|
|
MGC接收命令之后回复200响应
|
|
||
MGC接收MG_A挂机事件之后,给主叫MG_A下发DLCX,指示MG_A删除连接
|
|
||
MG接收命令执行完成之后回复200响应
|
|
||
|
|
8
|
MGC检测到主叫拆线之后,给被叫下发DLCX命令,该命令携带信号请求描述符 l/bz 忙音,指示被叫可以删除连接
|
|
|
|
MG接收命令执行完成之后回复200响应
|
|
|
9
|
主叫传真MG_B检测挂机以ntfy命令上报
|
|
MG接收命令执行完成之后回复200响应
|
||
|
MGC接收MG_A挂机事件之后,给主叫MG_A下发DLCX,指示MG_A删除连接
|
||
|
MG接收命令执行完成之后回复200响应
|
||
流程至此,传真结束
|