1、mtk_ims_mo_sip报文交互流程

log:

步骤1:ATD触发MO呼叫尝试
步骤2:VDM选择ADS到IMS。
步骤3:触发VoLTE UA来设置MO调用。
步骤4:SIP信息到P-CSCF进行MO呼叫设置和协商
步骤5:在VoLTE情况下确认专用承载与此调用尝试的QoS条件匹配。
步骤6:更新数据路径的媒体参数。在VoWiFi中, WFCA信号被handle RTP on WiFi。
步骤7:将呼叫状态传递给IMC,并激活媒体流。
步骤8:URC来指示Framework的call状态。

2、mtk_ims_MT_sip报文交互流程

步骤1:VoLTE UA接收SIP消息为MT呼叫尝试和协商P-CSCF为MT呼叫设置。
步骤2:在VoLTE情况下确认专用承载与此调用尝试的QoS条件匹配
步骤3:更新数据路径的媒体参数。在VoWiFi中,也给WFCA发信号来处理WiFi上的RTP
步骤4、5:传递MT call attempt到Framework,等待用户接受。
步骤6:通知VoLTE UA接受MT调用并完成调用设置
步骤7:SIP消息到P-CSCF完成MT设置
步骤8:将呼叫状态传递给IMC,激活媒体流
步骤9:URC来指示框架的调用状态

//receive,request,INVITE
[AT_URC p31,ch1]+ESIPCPI: 0,1,0,1,0,""
[AT_URC p31,ch1]+EAIC: 1,"13267945631",129,20,102,0
[AT_RX p33,ch3]AT+EAIC=0,1,102
//send ,response,INVITE
[AT_URC p31,ch1]+ESIPCPI: 1,0,1,1,183,""
[ATCI_AT_I_0 s33]AT+EIMSCI=1,0,0 //IMS 开启,LTE
//MT,IMS_VOICE_CALL,国内呼叫
[AT_URC p31,ch1]+ECPI: 1,0,0,1,1,20,"13267945631",129,"<tel:13267945631>"
 [AT_URC p31,ch1]+ESIPCPI: 1,1,0,13,0,""    //receive request PRACK
[AT_URC p31,ch1]+ESIPCPI: 1,0,1,13,200,""    //send response PRACK
[AT_URC p31,ch1]+ESIPCPI: 1,1,0,3,0,""        //receive request UPDATE
[AT_URC p31,ch1]+ESIPCPI: 1,0,1,3,200,""    //send response UPDATE
[AT_URC p31,ch1]+ESIPCPI: 1,0,1,1,180,""    //send response INVITE
[AT_URC p31,ch1]+CRING: VOICE               //180 Ring
[AT_URC p31,ch1]+ESIPCPI: 1,0,1,1,200,""    //send response INVITE
[AT_URC p31,ch1]+ECPI: 1,132,0,1,1,20,"13267945631",129,"<tel:13267945631>"
[AT_URC p31,ch1]+ECPI: 1,6,0,1,1,20,"13267945631",129,"<tel:13267945631>"
[AT_URC p31,ch1]+ESIPCPI: 1,1,0,6,0,""     // receive request    ACK
[AT_URC p31,ch1]+ESIPCPI: 1,1,0,1,0,""     // receive request    INVITE
[AT_URC p31,ch1]+ESIPCPI: 1,0,1,1,200,""    // send response INVITE
[AT_URC p31,ch1]+ESIPCPI: 1,1,0,6,0,""    // receive request    ACK
[AT_URC p31,ch1]+EIMSCMODE: 1,20,0,3,"<tel:13267945631>",2 //接132的电话
[AT_RX p50,ch6]AT+CHLD=11    //释放特定的active call 1
[AT_URC p31,ch1]+ECPI: 1,133,0,1,1,20,"13267945631",129,"<tel:13267945631>",16
[ATCI_AT_I_0 s33]AT+EIMSCI=0,0,0[AT_URC p31,ch1]+ESIPCPI: 1,1,0,7,0,"" // receive request BYE[AT_URC p31,ch1]+ESIPCPI: 1,0,1,7,200,""  //send response BYE
[AT_RX p33,ch3]AT+CEER
[AT_TX p33,ch3]+CEER: 16,CM_NORMAL_CALL_CLR
小结:  1、不管是MT/MO,最后BYE SIP信令可能由主动呼叫方发起,也有可能由被动呼叫方发起。

 2、info 为100 Trying的INVITE SIP信令在AT下发的时候没有对应的AT指令。

sip会话流程以及sip介绍(3)的更多相关文章

  1. sip会话流程以及sip介绍(2)

    下面我们通过一个简单的场景例子来简单介绍一下 SIP 会话流程. Tom 和 Jerry 是非常好的伙伴,Tom 在他的 PC 上使用一个 SIP 的应用程序呼叫 Internet 上另一个 SIP ...

  2. sip会话流程以及sip介绍(1)

    参考连接 :https://www.2cto.com/kf/201609/546336.html https://www.w3cschool.cn/session_initiation_protoco ...

  3. Android网络功能之会话发起协议SIP

    原文:http://android.eoe.cn/topic/android_sdk * 会话发起协议* Android提供了一个支持会话发起协议(SIP)的API,这可以让你添加基于SIP的网络电话 ...

  4. 基于GBT28181:SIP协议组件开发-----------第三篇SIP注册流程分析实现

    原创文章,引用请保证原文完整性,尊重作者劳动,原文地址http://www.cnblogs.com/qq1269122125/p/3941172.html,qq:1269122125. 上两章节简要的 ...

  5. SIP呼叫流程典型流程图解及其详细解释

    目录(?)[+]   1.注册流程: 2.注销流程: 3. 基本呼叫建立过程: 4. 会话更改流程: 5. 正常呼叫释放过程: 6. 被叫忙呼叫释放: 7.被叫无应答流程一: 8.被叫无应答流程二: ...

  6. SIP会话发起协议 - 先知道是什么(一)

    少年,思无邪,最最动人. 协议概述 SIP会话发起协议是VoIP技术中最常用的协议之一.它是一种应用层协议,与其它应用层协议协同工作,通过Internet控制多媒体通信会话. SIP采用SDP(会话描 ...

  7. 基于GBT28181:SIP协议组件开发-----------第四篇SIP注册流程eXosip2实现(一)

    原创文章,引用请保证原文完整性,尊重作者劳动,原文地址http://www.cnblogs.com/qq1269122125/p/3945294.html. 上章节讲解了利用自主开发的组件SIP组件l ...

  8. sip 注册流程

    基本注册流程示意图: 注册流程描述如下: 1.         SIP代理向SIP服务器发送REGISTER请求: 2.         SIP服务器向SIP代理发送响应401,并在响应的消息头WWW ...

  9. vlc源码分析(一) RTSP会话流程

    可以先了解一下RTSP/RTP/RTCP的概念与区别:RTP与RTCP协议介绍(转载). 在调试vlc-android时,熟悉了RTSP的会话流程.C表示RTSP客户端,S表示RTSP服务端: 第一步 ...

随机推荐

  1. 仿flask写的web框架

    某大佬仿flask写的web框架 web_frame.py from werkzeug.local import LocalStack, LocalProxy def get_request_cont ...

  2. USB3.0 对 2.4G WiFi 影响

    Intel的一篇白皮书<USB 3.0 Radio Frequency Interference Impact on 2.4 GHz Wireless Devices>中即清楚地指出,US ...

  3. [转载]真正的inotify+rsync实时同步 彻底告别同步慢

    原文链接http://www.ttlsa.com/web/let-infotify-rsync-fast/ 背景我们公司在用inotify+rsync做实时同步,来解决分布式集群文件一致性的问题.但当 ...

  4. js的内部特性--属性

    使用方法:通过调用Object.defineProperty(对象,"对象属性",{}进行的操作}) 当对一个对象的属性的属性类型中vlue设置为一个值时,则这个对象的这个属性的值 ...

  5. XStream教程

    XStream是一个简单的基于Java库,Java对象序列化到XML,反之亦然(即:可以轻易的将Java对象和xml文档相互转换). 特点 使用方便 - XStream的API提供了一个高层次外观,以 ...

  6. 转 jmeter 实现loadrunner init end 功能

    一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态和动态资源的性能,例如:静态文件, ...

  7. 修改maven包本地默认位置

    前言 这段时间上岸了,就有时间整理电脑的资料(强迫症重度患者),就向maven以及gradle的仓库位置动手了. 目的 改变maven的默认位置 步骤 修改maven的配置文件setting.xml( ...

  8. quick'n'dirty poc for CVE-2013-1763 SOCK_DIAG bug in kernel 3.3-3.8

    /* * quick'n'dirty poc for CVE-2013-1763 SOCK_DIAG bug in kernel 3.3-3.8 * bug found by Spender * po ...

  9. mac 卸载编辑器卸不干净

    Configuration ~/Library/Preferences/ Caches ~/Library/Caches/ Plugins ~/Library/Application Support/ ...

  10. docker部署一个简单的mian.py项目文件

    安装docker yum install -y docker  启动docker systemctl start docker   查询可安装的Python版本,默认centos python 2.7 ...