CMPP接口协议(移动)

业务提供者与互联网短信网关之间的接口协议
互联网短信网关之间的接口协议
互联网短信网关与汇接网关之间的接口协议

术语和定义

网络结构:


互联网短信网关(ISMG)是业务提供者(SP)与移动网内短信中心之间的中介,

SP发送给移动用户的信息 给ISMG
ISMG接收到后提交给短信中心.

移动用户点播SP业务的信息由短信中心 通过 ISMG发给SP

为了减轻短信中心的负荷,ISMG根据路由原则将SP提交的信息转发到相应的ISMG

ISMG通过汇接网关(GNS)查询的方式获取网关间的转发路由信息

ISMG必须与数据业务管理平台DSMP连接,对用户,业务以及订购关系等进行鉴权并对业务进行批价

CMPP功能:

短信发送

短信接收

CMPP底层:

TCP/IP作为底层通信,

通信方式:

长连接:
一个TCP连接可以发送多个数据包,
没有数据包发送时,双方每隔C时间发送链路监测包维持连接.
当链路检测包发出超过T未收到响应,应立即再发链路监测包,
再连续发送N-1 次后仍未响应则断开连接
消息并发发送,滑动窗口流量控制,窗口大小为W,
即接收方在应答前一次收到的消息最多不超过W条

默认参数值:
C=3分钟
T=60秒
N=3
W=16条


短链接:
有数据交换才建立TCP连接,
应答与请求在同一连接完成,
数据发送后断开.
网关与业务提供者 之间,网关之间的消息发送后等待T秒后未响应
立即重发,连续发送N-1次后未响应停发

默认值:
T=60秒
N=3

要求:
互联网短信网关必须长连接,
建议业务提供者与互联网短信网关采用长连接

端口号:

7890 长连接(业务提供者与网关之间)
7900 短连接(业务提供者与网关之间)
7930 长连接(网关之间)
9168 短链接(短信网关与汇接网关之间)

应答方式:

异步

CMPP3.0与2.0区别

.CMPP_SUBMIT中计费字段和目的字段都增加了一个类型,指明是真实号码还是伪码 伪码是什么含义啊,没解释? 2.CMPP_SUBMIT增加了一个LinkID字段,说"点播业务使用的LinkID,非点播类业务的MT流程不使用该字段" 具体怎么用,也不太明白. 3.状态报告加了MA:xxxx、MB:xxxx、CA:xxxx、CB:xxxx的状态值,意料之中. 4.Register_Delivery字段删除对2(产生SMC话单)的支持;以后包月我猜应该是告诉ISMG某个用户包月了,ISMG每个月自动扣费,直到SP告诉ISMG,

消息定义:

1.基本数据类型
Unsigned Integer 无符号整数
Integer 整数,可为正整数,负数,零
Octet String 定长字符串,
位数不足时,左补0则补ASCll表示的零以填充,
右补0则补二进制的零以表示字符串的结束符

2.消息结构
Message Header 消息头(所有消息公共包头)
Message Body 消息体

3.业务提供者SP与互联网短信网关ISMG间的消息定义

3.1 SP请求连接到ISMG操作(CMPP_CONNECT) SP–>ISMG
SP向ISMG注册一个合法身份, 成功后建立应用层连接
SP可通过此ISMG接受和发送短信

3.2 ISMG响应SP操作(CMPP_CONNECT_RESP) ISMG–>SP
ISMG以CMPP_CONNECT_RESP消息响应SP的请求

3.3ISMG或SP请求拆除连接操作(CMPP_TERMINATE)

此操作完成后, 之间的应用层连接释放,

若SP再要向ISMG通信需发起CMPP_CONNECT操作
以CMPP_CONNECT_RESP消息响应请求

3.4 SP向ISMG提交短信(CMPP_SUBMIT) SP–>ISMG
ISMG以CMPP_CONNECT_RESP消息响应

3.5 SP向ISMG查询发送短信状态(CMPP_QUERY) SP–>ISMG
SP向ISMG查询某个时间业务统计情况,可以按总数或按业务代码查询,
ISMG以CMPP_CONNECT_RESP应答

3.6 ISMG向SP送交短信(CMPP_DELIVER) ISMG–>SP
ISMG把从短信中心或其它ISMG转发来的短信送交SP,
SP以CMPP_CONNECT_RESP消息响应

3.7 SP向ISMG发起删除短信(CMPP_CANCEL) SP–>ISMG
ISMG以CMPP_CONNECT_RESP消息响应

3.8 链路检测(CMPP_ACTIVE_TEST)
本操作仅适用于通信双方采用长连接通信方式时用于保持连接

4.互联网短信网关ISMG之间的消息定义

4.1 源ISMG请求连接到目的ISMG (CMPP_CONNECT)
消息定义同3.1 其中Source_Addr参数为源网关代码

4.2 源ISMG请求拆除到目的ISMG的连接 (CMPP_TERMINATE)

4.3 链路检测 (CMPP_ACTIVE_TEST)
仅用于通信双方采用长连接通信方式时保持连接

4.4 源ISMG向目的ISMG转发短信 (CMPP_FWD)
源ISMG根据一定路由策略将SP提交的短信,MO状态报告,短信中心产生的状态报告,用户提交的短信发到ISMG,
目的ISMG以CMPP_FWD_RESP回应

5.ISMG与汇接网关(GNS)之间的消息定义
要求使用短链接通信,ISMG与GNS可互为客户/服务器

5.1 ISMG请求连接到GNS或GNS请求连接到ISMG (CMPP_CONNECT)
消息定义同3.1 其中Source_Addr参数为源网关代码

5.2 ISMG请求拆除到GNS的连接或GNS请求拆除到ISMG (CMPP_TERMINATE)

5.3 ISMG向GNS查询 MT路由 (CMPP_MT_ROUTE)
ISMG不知道需要转发MT消息的路由时查询CNS.
CNS以CMPP_FWD_RESP回应

5.4 ISMG向汇接网关查询MO路由 (CMPP_MO_ROUTE)
ISMG不知道需要转发MO消息的路由时 可向 CNS查询得到
CNS以CMPP_FWD_RESP回应

5.5 ISMG向GNS获取MT路由 (CMPP_GET_MT_ROUTE)
ISMG可向GNS查询MT的路由信息。
GNS以CMPP_GET_MT_ROUTE_RESP消息回应。

5.6 SMG向GNS获取MO路径 (CMPP_GET_MO_ROUTE)

5.7 ISMG向GNS更新MT路由(CMPP_MT_ROUTE_UPDATE)
GNS以CMPP_MT_ROUTE_UPDATE _RESP消息回应

5.8 ISMG向GNS更新MO路由 (CMPP_MO_ROUTE_UPDATE)
GNS以CMPP_MO_ROUTE_UPDATE _RESP消息回应

5.9 GNS向ISMG更新MT路由(CMPP_PUSH_MT_ROUTE_UPDATE)
GNS可向ISMG更新MT路由信息。
ISMG以CMPP_PUSH_MT_ROUTE_UPDATE_RESP 消息回应。

5.10 汇接网关向ISMG更新MO路由(CMPP_PUSH_MO_ROUTE_UPDATE)
GNS可向ISMG更新MO路由信息。
ISMG以CMPP_PUSH_MO_ROUTE_UPDATE_RESP 消息回应。

CMPP3.0协议(移动)相关推荐

  1. cmpp3.0协议 java,JAVA CMPP3.0协议实现

    JAVA CMPP3.0协议实现 java 2020-7-16 下载地址 https://www.codedown123.com/30108.html JAVA CMPP3.0协议实现 资源下载此资源 ...

  2. 用C#做短信CMPP2.0/3.0协议 支持扩展号支持物理网卡

    此程序为中国移动CMPP协议程序接口,适合在中国移动申请了短信发送端口的公司使用. 短信群发已经成为现在软件系统.网络营销等必不可少的应用工具.可应用在短信验证.信息群发.游戏虚拟商品购买.事件提醒. ...

  3. CMPP3.0实现物联网卡发短信遇到的问题

    当下物联网发展迅猛,物联网卡可以接受短信指令,实现千里之外尽可掌控.本人做过一个这类项目,把相关经验记录下来,分享给需要的人. 物联网卡通讯其实跟电话卡一样,可以使用CMPP协议.不过由于物联网卡位数 ...

  4. 移动MAS短信技术错误代码和CMPP3.0错误代码表

    登录移动网关时错误代码: 1:消息结构错误,检查所发送消息的各个字段值是否符合协议要求. 2:用户名或密码不正确 56:登录重复 57:接入号已做IP绑定,与网关IP不符 CMPP3.0错误代码表: ...

  5. 使用移动代理CMPP2.0,3.0协议实现短信发送-Java版,使用华为smproxy.jar包

    本文使用的是CMPP2.0,CMPP3.0和此逻辑类似,使用的Java类不同而已 1.配置文件 cmpp.xml <config><!--与InfoX建立连接所需参数-->&l ...

  6. PHP支持http2,swoole-1.8.2 已发布,支持Http2.0协议

     PHP的异步.并行.高性能网络通信引擎swoole已发布 1.8.2版本 ,此版本增加了对Http2.0协议的支持,另外修复了swoole-1.8.1版本存在的一些BUG.基于Http2.0协议, ...

  7. 中国移动短信网关CMPP3.0 C#源代码:使用示例

    中国移动短信网关CMPP3.0 C#源代码使用,在上一篇文章中我介绍过cmpp3.0,这段时间因为也做关于 移动短信网关的开发,在这里给大家一个演示如何使用cmpp3.0开发移动短信网关. Using ...

  8. 协议开发 中移动CMPP2.0协议API(三)

    协议开发 中移动CMPP2.0协议API(三) 云网(jimzj@21cn.com) 接上篇... 五.发送接口 对于API来说,最重要的一部分就是去做发送数据了.通过SOCKET套接字与网关相连接后 ...

  9. Oauth2.0协议 http://www.php20.com/forum.php?mod=viewthreadtid=28 (出处: 码农之家)

    概要      OAuth2.0是OAuth协议的下一版本,但不向后兼容OAuth 1.0即完全废止了OAuth1.0. OAuth 2.0关注客户端开发者的简易性.要么通过组织在资源拥有者和HTTP ...

  10. SMGP3.0协议的概念知识

    该项目主页在https://code.google.com/archive/p/smgp/,可以使用VPN进去看看,该项目是开源的,根据SMGP3.0协议写的API,我们要用的话直接调用就好了,这里主 ...

最新文章

  1. bigdecimal正确用法_深入理解 BigDecimal 的使用
  2. hdu2.1.2 How many prime numbers(计算素数的个数)
  3. Spring could 使用Feign超时问题
  4. (十三)洞悉linux下的Netfilteramp;iptables:为防火墙增添功能模块【实战】
  5. 关于db link权限分配的苦旅(一)
  6. [CTO札记]盛大游戏上市,是对《文化产业振兴规划》的响应
  7. Some regret....
  8. mysql指定某行或者某列的排序
  9. Python 查询 MAC 地址相关信息
  10. 看电影“刺客聂隐娘”前必须了解的知识(绝无剧透)
  11. win10修改dns服务器命令,win10怎么修改DNS服务器?win10修改DNS服务器的方法
  12. python爬取微信朋友圈
  13. mysql事务 start transaction
  14. 洛谷P1338(末日的传说)
  15. CRT连接虚拟机乱码解决方法
  16. 团队管理33-典型场景(向下沟通)
  17. 基于AM5728 DSP JTAG连接调试方法
  18. Hi ! 哈希,Hash
  19. ANSYS的宏文件mac的创建和应用
  20. 魔灯raw视频用MLVapp导出LOG方法

热门文章

  1. 产品读书《交互设计沉思录》
  2. 诺基亚PC套件界面设计
  3. 算法分析与设计实验报告——实现哈夫曼编码
  4. 06.个人作业——软件产品案例分析
  5. JSEclipse安装后无法打开js文件_火狐浏览器打开邮箱添加不了附件
  6. 如何设计一种简单的恒流/恒压降压转换器
  7. TOMCAT安装指南
  8. [转载] 关于Windows Boot Manager、Bootmgfw.efi、Bootx64.efi、bcdboot.exe 的详解
  9. pytest生成测试报告
  10. IOS平台车牌识别技术简介