本文来自http://blog.csdn.net/lijun84
,引用必须注明出处!
<!-- [if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:PunctuationKerning/>
<w:DrawingGridVerticalSpacing>7.8 pt</w:DrawingGridVerticalSpacing>
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
<w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery>
<w:Compatibility>
<w:SpaceForUL/>
<w:BalanceSingleByteDoubleByteWidth/>
<w:DoNotLeaveBackslashAlone/>
<w:ULTrailSpace/>
<w:DoNotExpandShiftReturn/>
<w:AdjustLineHeightInTable/>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:UseFELayout/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--><!-- [if !mso]>
<
classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui>
</object>
<style>
st1\:*{behavior:url(#ieooui) }
</style>
<![endif]--><!-- [if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";}
</style>
<![endif]-->
各运行商通讯协议总结
本人以前在公司为了工作方便,对各运营商的通讯协议(联通
SGIP
、移动
CMPP
、电信
SMGP
、网通
CNGP
、短消息中心与网关间协议
SMPP
)进行整理,见《各运行商通讯协议整理》,现总结如下:
一、
由于
SMPP
不存在计费信息,所以我们的下行计费短消息必须通过四大运营商通讯协议下发给各运营商网关,可以暂时不用考虑
SMPP
同
SGIP
的转换
;
二、
由于四大运营商通讯协议的命令
id
、错误代码、其他各命令等存在差异,所以决定
1919
通讯程序采用如下方法来实现与四大运营商网关的通讯:
1、
分别通过四大运营商各自的协议与它们的网关进行通讯(包括登陆、
submit
、
deliver
、
report
及它们的响应消息);
2、
对
SGIP
的消息直接处理,但是需要保存
submit
的消息头中的序列号字段,用于与
report
中的消息标志字段对应
;
3、
对
CMPP
、
SMGP
、
CNGP
的登陆消息直接处理;
4、
对
CMPP
、
SMGP
、
CNGP
的
submit
、
deliver
、
report
消息执行协议转换
;
5、
对
CMPP
、
SMGP
、
CNGP
的
Submit_Resp
、
Deliver_Resp
直接处理,但是需要保存消息标志字段,用于与
report
中的消息标志字段对应
;
6、
业务程序生成
SGIP
的
Submit
消息,转换成其他三大运营商的
Submit
消息发给网关;
7、
把其他三大运营商的
Deliver
消息转换成
SGIP
的
Deliver
消息,交给业务程序处理,并且需要保存消息标志字段,用于发送
Deliver_Resp
;
8、
把其他三大运营商的
Report
消息转换成
SGIP
的
Report
消息,交给业务程序处理,并且需要保存消息标志字段,用于与
Submit_Resp
中的消息标志字段对应
;
三、
消息头的区别:
1、
SGIP
的序列号长度为
12
,其他各协议序列号长度为
4
;
2、
SGIP
的
submit
的消息头中的序列号字段需要保存,用于对应
report
的
SubmitSequenceNumber
字段;
3、
CNGP
的
Submit_Resp
的消息头中的命令状态字段定义了发送成功标志,长度为
4
;
4、
CNGP
的
Deliver_Resp
的消息头中的命令状态字段定义了接收成功标志,长度为
4
;
5、
消息头由
1919
平台直接处理;
四、
Submit
消息的区别
1、
CMPP
、
SMGP
、
CNGP
中的
FeeType
字段,可以根据
SGIP
中的
FeeType
转换得到;
2、
CMPP
、
SMGP
、
CNGP
中的状态报告标志字段,可以根据
SGIP
中的
ReportFlag
转换得到;
3、
CNGP
不存在
linkid
字段;
4、
CMPP
有
Msg_Id
、
Pk_total
、
Pk_number
、
Dest_teminal_type
字段,由
1919
平台处理;
5、
CMPP
和
CNGP
都有计费用户类型字段,可以根据
SGIP
的
ChargeNumber
来填写;
6、
CMPP
有
Dest_teminal_type
,默认为
0
,真实号码;
7、
SMGP
有
FixedFee
字段,可以根据
SGIP
的计费类型字段来填写;
8、
CNGP
有
Protocol_ID
字段,由
1919
平台处理;
五、
Submit_Resp
消息的区别
1、
SGIP
、
CMPP
、
SMGP
三个协议有发送成功标志字段,其中
SGIP
的长度为
1
,
CMPP
、
SMGP
的长度为
4
;
2、
CMPP
、
SMGP
、
CNGP
有长度为
8
、
10
、
10
的信息标志,它由网关生成,需要保存,用于与
report
消息中的消息标志对应;
六、
Deliver
消息的区别
1、
CNGP
不存在
linkid
字段;
2、
CMPP
、
SMGP
、
CNGP
都存在消息标志字段,需要保存,用于
Deliver_resp
的发送;
3、
CMPP
、
SMGP
、
CNGP
都存在状态报告标志字段,用来判断此消息是否为状态报告消息;
4、
CNGP
有
Protocol_ID
字段,可以忽略;
七、
Deliver_Resp
消息的区别
1、
SGIP
、
CMPP
、
SMGP
三个协议有接收成功标志字段,其中
SGIP
的长度为
1
,
CMPP
、
SMGP
的长度为
4
;
2、
CMPP
、
SMGP
、
CNGP
有长度分别为
8
、
10
、
10
的消息标志字段,它由网关生成,从
Delive
消息中取出来,需要保存,用于
Deliver_Resp
发送;
八、
Report
消息的区别
1、
CMPP
、
SMGP
、
CNGP
的状态报告都包含在
deliver
的短消息内容字段中;
2、
SGIP
的消息标志对应
submit
消息头的序列号字段
, CMPP
、
SMGP
、
CNGP
的消息标志对应
submit_resp
中消息标志字段
分享到:
相关推荐
54. CP342-5能否用于PROFIBUS FMS协议通讯? 14 55. 为什么CP342-5 FO无法建立通讯?如何配置? 14 56. CP342-5的3中工作方式有什么区别? 14 57. CP342-5 最多能完成多少数据交换? 14 58. 如何实现在从站断电、...
Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。 与cgi的区别...
本地主机不能与远程主机通讯 1) DNS工作不正常2) 没有到远程主机的路由3) 缺少缺省网关4) 管理拒绝(ACL) 某个应用程序不能正常工作 1) 管理拒绝(ACL)2) 网络没有正常配置以处理该应用程序 启动...
本地主机不能与远程主机通讯 1) DNS工作不正常2) 没有到远程主机的路由3) 缺少缺省网关4) 管理拒绝(ACL) 某个应用程序不能正常工作 1) 管理拒绝(ACL)2) 网络没有正常配置以处理该应用程序 启动...
2.2.3. “发现”: Relying Party站点查询与OpenID服务器进行通讯的方式 - 7 - 2.2.4. Relying Party站点建立与OpenID服务器之间的关联(可选) - 10 - 2.2.5. Relying Party站点请求认证 - 10 - 2.2.6. OpenID服务器...
这个是IOCP远程控制软件的模型,服务端运行后会自动发送本机信息到客户端,客户端采用IOCP重叠机制。 IOCP封装类(DLL)发布 主要是CIocpSrv"伪类",实际上还是调用的DLL, IOCP完成端口 IP所在地查询器 jpeglib_demo...
这个是IOCP远程控制软件的模型,服务端运行后会自动发送本机信息到客户端,客户端采用IOCP重叠机制。 IOCP封装类(DLL)发布 主要是CIocpSrv"伪类",实际上还是调用的DLL, IOCP完成端口 IP所在地查询器 jpeglib_demo...
这个是IOCP远程控制软件的模型,服务端运行后会自动发送本机信息到客户端,客户端采用IOCP重叠机制。 IOCP封装类(DLL)发布 主要是CIocpSrv"伪类",实际上还是调用的DLL, IOCP完成端口 IP所在地查询器 jpeglib_demo...
这个是IOCP远程控制软件的模型,服务端运行后会自动发送本机信息到客户端,客户端采用IOCP重叠机制。 IOCP封装类(DLL)发布 主要是CIocpSrv"伪类",实际上还是调用的DLL, IOCP完成端口 IP所在地查询器 jpeglib_demo...
这个是IOCP远程控制软件的模型,服务端运行后会自动发送本机信息到客户端,客户端采用IOCP重叠机制。 IOCP封装类(DLL)发布 主要是CIocpSrv"伪类",实际上还是调用的DLL, IOCP完成端口 IP所在地查询器 jpeglib_demo...
目前的协议有如下一些特点: 1) 客户向服务器发送请求, 每个请求的长度不定. 请求的长度在第一个INT中指定. 2) 每个服务器通常会向多种客户提供服务, 例如, TS要同时向CP, NP提供服务, CP要向NP和其他CP提供服务, ...
滚动条协议 滚动条组件 第31章 输入条组件 使用输入条组件 输入条组件 第32章 列表框组件 使用列表框组件 列表框组件的编联 列表框组件的属性 第33章 文本组件 文本索引 文本标记 文本标签 文本信息...
2.2 公用语言运行时环境与公用语言规范.13 2.3 开 发 工 具 .17 2.4 小 结 .19 第三章 编写第一个应用程序 .20 3.1 Welcome 程序 .20 3.2 代 码 分 析 .20 3.3 运 行 程 序 .23 .4 添 加 注 释 .25 ...
主要的工作是发展 Web 规范,这些规范描述了 Web 的通信协议(比如 HTML 和 XHTML)和其他的构建模块。 NativeApp 使用传统原生态Android SDK来实现的应用 WebApp 基于浏览器来实现的一种应用 HybridApp 一种可以...
各浏览器开发商已经达成协议,对XML实行严格而挑剔的解析,任何细小的错误都会被报告。你可以将上面的myfile.xml修改一下,比如将改为,然后用IE5直接打开myfile.xml,会得到一个出错信息页面: <title>XML轻松...