短信网关接口文档文档格式.docx
- 文档编号:22070734
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:69
- 大小:144.90KB
短信网关接口文档文档格式.docx
《短信网关接口文档文档格式.docx》由会员分享,可在线阅读,更多相关《短信网关接口文档文档格式.docx(69页珍藏版)》请在冰豆网上搜索。
8.4.5ISMG向SP送交短信(CMPP_DELIVER)操作13
8.4.5.1CMPP_DELIVER消息定义(ISMGSP)13
8.4.5.2CMPP_DELIVER_RESP消息定义(SPISMG)16
8.4.6SP向ISMG发起删除短信(CMPP_CANCEL)操作16
8.4.6.1CMPP_CANCEL消息定义(SPISMG)16
8.4.6.2CMPP_CANCEL_RESP消息定义(ISMGSP)17
8.4.7链路检测(CMPP_ACTIVE_TEST)操作17
8.4.7.1CMPP_ACTIVE_TEST定义(SPISMG或ISMGSP)17
8.4.7.2CMPP_ACTIVE_TEST_RESP定义(SPISMG或ISMGSP)17
8.5互联网短信网关(ISMG)之间的消息定义17
8.5.1源ISMG请求连接到目的ISMG(CMPP_CONNECT)操作17
8.5.2源ISMG请求拆除到目的ISMG的连接(CMPP_TERMINATE)操作17
8.5.3链路检测(CMPP_ACTIVE_TEST)操作17
8.5.4源ISMG向目的ISMG转发短信(CMPP_FWD)操作17
8.5.4.1CMPP_FWD定义(ISMGISMG)18
8.5.4.2CMPP_FWD_RESP定义(ISMGISMG)21
8.6互联网短信网关(ISMG)与汇接网关(GNS)之间的消息定义21
8.6.1ISMG请求连接到GNS或GNS请求连接到ISMG(CMPP_CONNECT)操作21
8.6.2ISMG请求拆除到GNS的连接或GNS请求拆除到ISMG的连接(CMPP_TERMINATE)操作21
8.6.3ISMG向汇接网关查询MT路由(CMPP_MT_ROUTE)操作21
8.6.3.1CMPP_MT_ROUTE消息定义(ISMGGNS)22
8.6.3.2CMPP_MT_ROUTE_RESP消息定义(GNSISMG)22
8.6.4ISMG向汇接网关查询MO路由(CMPP_MO_ROUTE)操作22
8.6.4.1CMPP_MO_ROUTE消息定义(ISMGGNS)22
8.6.4.2CMPP_MO_ROUTE_RESP消息定义(GNSISMG)23
8.6.5ISMG向汇接网关获取MT路由(CMPP_GET_MT_ROUTE)操作23
8.6.5.1CMPP_GET_MT_ROUTE消息定义(ISMGGNS)24
8.6.5.2CMPP_GET_ROUTE_RESP消息定义(GNSISMG)24
8.6.6SMG向汇接网关获取MO路由(CMPP_GET_MO_ROUTE)操作25
8.6.6.1CMPP_GET_MO_ROUTE消息定义(ISMGGNS)25
8.6.6.2CMPP_GET_MO_ROUTE_RESP消息定义(GNSISMG)25
8.6.7ISMG向汇接网关更新MT路由(CMPP_MT_ROUTE_UPDATE)操作26
8.6.7.1CMPP_MT_ROUTE_UPDATE消息定义(ISMGGNS)26
8.6.7.2CMPP_MT_ROUTE_UPDATE_RESP消息定义(GNSISMG)27
8.6.8ISMG向汇接网关更新MO路由(CMPP_MO_ROUTE_UPDATE)操作27
8.6.8.1CMPP_MO_ROUTE_UPDATE消息定义(ISMGGNS)27
8.6.8.2CMPP_MO_ROUTE_UPDATE_RESP消息定义(GNSISMG)28
8.6.9汇接网关向ISMG更新MT路由(CMPP_PUSH_MT_ROUTE_UPDATE)操作29
8.6.9.1CMPP_PUSH_MT_ROUTE_UPDATE消息定义(GNSISMG)29
8.6.9.2CMPP_PUSH_MT_ROUTE_UPDATE_RESP消息定义(ISMGGNS)29
8.6.10汇接网关向ISMG更新MO路由(CMPP_PUSH_MO_ROUTE_UPDATE)操作29
8.6.10.1CMPP_PUSH_MO_ROUTE_UPDATE消息定义(GNSISMG)30
8.6.10.2CMPP_PUSH_MO_ROUTE_UPDATE_RESP消息定义(ISMGGNS)30
8.7系统定义31
8.7.1Command_Id定义31
8.7.2错误码使用说明31
8.7.3ISMG与GNS之间消息使用的错误码定义32
8.7.4GNS上路由信息的Route_Id的编号规则33
9附录1短信群发功能的实现34
10附录2GNS协议目前实现说明34
11附录3全网SP和本地SP的服务代码的区别35
11.1区别1:
现网上全网SP和本地SP的服务代码的区别35
11.2区别2:
新分配的SP的服务代码规则35
12修订历史36
前言
本规范规定了移动梦网短信业务开展过程中各网元(包括ISMG、GNS和SP)之间的消息类型和定义。
根据业务的发展,规范中的信令操作和参数将会做进一步的调整和增加。
本标准由中移技[2003]397号印发。
本标准由中国移动通信集团公司技术部提出并归口。
本标准起草单位:
中国移动通信集团公司研发中心。
本标准主要起草人:
党京、孙若雯、于蓉蓉、袁向阳。
本标准解释单位:
同提出单位。
1范围
本规范规定了以下三方面的内容:
1)业务提供商与互联网短信网关之间的接口协议;
2)互联网短信网关之间的接口协议;
3)互联网短信网关与汇接网关之间的接口协议。
本规范适用于各SP和ISMG、GNS的开发厂商。
2引用标准
下列标准所包含的条文,通过在本标准中引用而成为本标准的条文。
本标准出版时,所示版本均为有效。
所有标准都会被修订,使用本标准的各方应探讨使用下列标准最新版本的可能性。
《SMPP》
《移动梦网短信业务技术方案》
3术语和定义
英文缩写
英文全称
说明
ISMG
IntenetShortMessageGateway
互联网短信网关
DSMP
DataServiceManagePlatform
数据业务管理平台
SMPP
ShortMessagePeertoPeer
短消息点对点协议
CMPP
ChinaMobilePeertoPeer
中国移动点对点协议
SMSC
ShortMessageServiceCenter
短消息中心
GNS
GatewayNameServer
网关名称服务器(汇接网关)
SP
ServiceProvider
业务提供者
ISMG_Id
网关代码:
0XYZ01~0XYZ99,其中XYZ为省会区号,位数不足时左补零,如北京编号为1的网关代码为001001,江西编号为1的网关代码为079101,依此类推
SP_Id
SP的企业代码:
网络中SP地址和身份的标识、地址翻译、计费、结算等均以企业代码为依据。
企业代码以数字表示,共6位,从“9XY000”至“9XY999”,其中“XY”为各移动公司代码
SP_Code
SP的服务代码:
服务代码是在使用短信方式的上行类业务中,提供给用户使用的服务提供商代码。
服务代码以数字表示,全国业务服务代码长度为4位,即“1000”-“9999”;
本地业务服务代码长度统一为5位,即“01000”-“09999”;
信产部对新的SP的服务代码分配提出了新的要求,要求以“1061”-“1069”作为前缀,目前中国移动进行了如下分配:
1062:
用于省内SP服务代码
1066:
用于全国SP服务代码
其它号段保留。
Service_Id
SP的业务类型,数字、字母和符号的组合,由SP自定,如图片传情可定为TPCQ,股票查询可定义为11
4网络结构
互联网短信网关组网结构
如图1所示,互联网短信网关(ISMG)是业务提供商(SP)与移动网内短信中心之间的中介实体,互联网短信网关一方面负责接收SP发送给移动用户的信息和提交给短信中心。
另一方面,移动用户点播SP业务的信息将由短信中心通过互联网短信网关发给SP。
另外,为了减轻短信中心的信令负荷,互联网短信网关还应根据路由原则将SP提交的信息转发到相应的互联网短信网关。
互联网短信网关通过向汇接网关(GNS)查询的方式获得网关间的转发路由信息。
另外,ISMG还必须与数据业务管理平台DSMP进行连接,在业务流程中对用户、业务以及定购关系等进行鉴权并对业务进行批价。
5CMPP功能概述
CMPP协议主要提供以下两类业务操作:
(1)短信发送(ShortMessageMobileOriginate,SMMO)
详细的流程请参考《移动梦网短信业务信令流程规范V3.0.0》;
(2)短信接收(ShortMessageMobileTerminated,SMMT)
6协议栈
CMPP协议以TCP/IP作为底层通信承载,具体结构由图4所示:
CMPP协议栈
7通信方式
各网元之间共有两种连接方式:
长连接和短连接。
所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发链路检测包以维持此连接。
短连接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,则断开此TCP连接,即每次TCP连接只完成一对CMPP消息的发送。
现阶段,要求ISMG之间必须采用长连接的通信方式,建议SP与ISMG之间采用长连接的通信方式。
7.1长连接
通信双方以客户-服务器方式建立TCP连接,用于双方信息的相互提交。
当信道上没有数据传输时,通信双方应每隔时间C发送链路检测包以维持此连接,当链路检测包发出超过时间T后未收到响应,应立即再发送链路检测包,再连续发送N-1次后仍未得到响应则断开此连接。
参数C、T、N原则上应可配置,现阶段建议取值为:
C=3分钟,T=60秒,N=3。
网关与SP之间、网关之间的消息发送后等待T秒后未收到响应,应立即重发,再连续发送N-1次后仍未得到响应则停发。
现阶段建议取值为:
T=60秒,N=3。
消息采用并发方式发送,加以滑动窗口流量控制,窗口大小参数W可配置,现阶段建议为16,即接收方在应答前一次收到的消息最多不超过16条。
长连接的操作流程举例如图5所示:
长连接操作流程
7.2短连接
通信双方以客户-服务器方式建立TCP连接,应答与请求在同一个连接中完成。
系统采用客户/服务器模式,操作以客户端驱动方式发起连接请求,完成一次操作后关闭此连接。
短连接的操作流程举例如图6所示:
短连接操作流程
7.3本协议涉及的端口号
端口号
应用
7890
长连接(SP与网关间)
7900
短连接(SP与网关间)
7930
长连接(网关之间)
9168
短连接(短信网关与汇接网关之间)
7.4交互过程中的应答方式
在SP与ISMG之间、SMSC与ISMG之间及ISMG之间的交互过程中均采用异步方式,即任一个网元在收到请求消息后应立即回送响应消息。
举例如图7所示:
异步交互方式示意图
8消息定义
8.1基本数据类型
UnsignedInteger
无符号整数
Integer
整数,可为正整数、负整数或零
OctetString
定长字符串,位数不足时,如果左补0则补ASCII表示的零以填充,如果右补0则补二进制的零以表示字符串的结束符
8.2消息结构
项目
MessageHeader
消息头(所有消息公共包头)
MessageBody
消息体
8.3消息头格式(MessageHeader)
字段名
字节数
类型
描述
Total_Length
4
UnsignedInteger
消息总长度(含消息头及消息体)
Command_Id
命令或响应类型
Sequence_Id
消息流水号,顺序累加,步长为1,循环使用(一对请求和应答消息的流水号必须相同)
8.4业务提供商(SP)与互联网短信网关(ISMG)间的消息定义
SP为客户端,向作为服务器端的ISMG发起连接请求,在通过身份验证之后SP与ISMG之间方可进行数据传输。
8.4.1SP请求连接到ISMG(CMPP_CONNECT)操作
CMPP_CONNECT操作的目的是SP向ISMG注册作为一个合法SP身份,若注册成功后即建立了应用层的连接,此后SP可以通过此ISMG接收和发送短信。
ISMG以CMPP_CONNECT_RESP消息响应SP的请求。
8.4.1.1CMPP_CONNECT消息定义(SPISMG)
属性
Source_Addr
6
源地址,此处为SP_Id,即SP的企业代码。
AuthenticatorSource
16
用于鉴别源地址。
其值通过单向MD5hash计算得出,表示如下:
AuthenticatorSource=
MD5(Source_Addr+9字节的0+sharedsecret+timestamp)
Sharedsecret由中国移动与源地址实体事先商定,timestamp格式为:
MMDDHHMMSS,即月日时分秒,10位。
Version
1
双方协商的版本号(高位4bit表示主版本号,低位4bit表示次版本号),对于3.0的版本,高4bit为3,低4位为0
Timestamp
时间戳的明文,由客户端产生,格式为MMDDHHMMSS,即月日时分秒,10位数字的整型,右对齐。
8.4.1.2CMPP_CONNECT_RESP消息定义(ISMGSP)
Status
状态
0:
正确
1:
消息结构错
2:
非法源地址
3:
认证错
4:
版本太高
5~:
其他错误
AuthenticatorISMG
ISMG认证码,用于鉴别ISMG。
AuthenticatorISMG=MD5(Status+AuthenticatorSource+sharedsecret),Sharedsecret由中国移动与源地址实体事先商定,AuthenticatorSource为源地址实体发送给ISMG的对应消息CMPP_Connect中的值。
认证出错时,此项为空。
服务器支持的最高版本号,对于3.0的版本,高4bit为3,低4位为0
8.4.2SP或ISMG请求拆除连接(CMPP_TERMINATE)操作
CMPP_TERMINATE操作的目的是SP或ISMG基于某些原因决定拆除当前的应用层连接而发起的操作。
此操作完成后SP与ISMG之间的应用层连接被释放,此后SP若再要与ISMG通信时应发起CMPP_CONNECT操作。
ISMG或SP以CMPP_TERMINATE_RESP消息响应请求。
8.4.2.1CMPP_TERMINATE消息定义(SPISMG或ISMGSP)
无消息体。
8.4.2.2CMPP_TERMINATE_RESP消息定义(SPISMG或ISMGSP)
8.4.3SP向ISMG提交短信(CMPP_SUBMIT)操作
CMPP_SUBMIT操作的目的是SP在与ISMG建立应用层连接后向ISMG提交短信。
ISMG以CMPP_SUBMIT_RESP消息响应。
8.4.3.1CMPP_SUBMIT消息定义(SPISMG)
Msg_Id
8
信息标识。
Pk_total
相同Msg_Id的信息总条数,从1开始。
Pk_number
相同Msg_Id的信息序号,从1开始。
Registered_Delivery
是否要求返回状态确认报告:
不需要;
需要。
Msg_level
信息级别。
10
业务标识,是数字、字母和符号的组合。
Fee_UserType
计费用户类型字段:
对目的终端MSISDN计费;
对源终端MSISDN计费;
2:
对SP计费;
3:
表示本字段无效,对谁计费参见Fee_terminal_Id字段。
Fee_terminal_Id
32
被计费用户的号码,当Fee_UserType为3时该值有效,当Fee_UserType为0、1、2时该值无意义。
Fee_terminal_type
被计费用户的号码类型,0:
真实号码;
伪码。
TP_pId
GSM协议类型。
详细是解释请参考GSM03.40中的9.2.3.9。
TP_udhi
详细是解释请参考GSM03.40中的9.2.3.23,仅使用1位,右对齐。
Msg_Fmt
信息格式:
ASCII串;
短信写卡操作;
4:
二进制信息;
8:
UCS2编码;
15:
含GB汉字。
。
Msg_src
信息内容来源(SP_Id)。
FeeType
2
资费类别:
01:
对“计费用户号码”免费;
02:
对“计费用户号码”按条计信息费;
03:
对“计费用户号码”按包月收取信息费。
FeeCode
资费(以分为单位)。
ValId_Time
17
存活有效期,格式遵循SMPP3.3协议。
At_Time
定时发送时间,格式遵循SMPP3.3协议。
Src_Id
21
源号码。
SP的服务代码或前缀为服务代码的长号码,网关将该号码完整的填到SMPP协议Submit_SM消息相应的source_addr字段,该号码最终在用户手机上显示为短消息的主叫号码。
DestUsr_tl
接收信息的用户数量(小于100个用户)。
Dest_terminal_Id
32*DestUsr_tl
接收短信的MSISDN号码。
Dest_terminal_type
接收短信的用户的号码类型,0:
Msg_Length
信息长度(Msg_Fmt值为0时:
<
160个字节;
其它<
=140个字节),取值大于或等于0。
Msg_Content
Msg_length
信息内容。
LinkID
20
点播业务使用的LinkID,非点播类业务的MT流程不使用该字段。
系统应该支持短信的群发功能,关于短信群发功能的实现请参阅“附录1短信群发功能的实现”。
8.4.3.2CMPP_SUBMIT_RESP消息定义(ISMGSP)
信息标识,生成算法如下:
采用64位(8字节)的整数:
(1)时间(格式为MMDDHHMMSS,即月日时分秒):
bit64~bit39,其中
bit64~bit61:
月份的二进制表示;
bit60~bit56:
日的二进制表示;
bit55~bit51:
小时的二进制表示;
bit50~bit45:
分的二进制表示;
bit44~bit39:
秒的二进制表示;
(2)短信网关代码:
bit38~bit17,把短信网关的代码转换为整数填写到该字段中;
(3)序列号:
bit16~bit1,顺序增加,步长为1,循环使用。
各部分如不能填满,左补零,右对齐。
(SP根据请求和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 短信 网关 接口 文档