中国移动通信信息资源站实体与互联网短消息网关接口协议模板.docx
- 文档编号:12522440
- 上传时间:2023-06-06
- 格式:DOCX
- 页数:35
- 大小:26.75KB
中国移动通信信息资源站实体与互联网短消息网关接口协议模板.docx
《中国移动通信信息资源站实体与互联网短消息网关接口协议模板.docx》由会员分享,可在线阅读,更多相关《中国移动通信信息资源站实体与互联网短消息网关接口协议模板.docx(35页珍藏版)》请在冰点文库上搜索。
中国移动通信信息资源站实体与互联网短消息网关接口协议模板
中国移动通信信息资源站实体与互联网短消息网关接口协议
(V1.2)
中国移动通信集团公司
2001/6/12
1.编制说明
本规范为中国移动通信集团公司企业规范,规定信息资源站实体与互联网短消息网关的应用层接口协议。
本协议版本为1.2版。
2.缩略语
ISMGInternetShortMessageGateway互联网短消息网关
SMPPShortMessagePeertoPeer短消息点对点协议
CMPPChinaMobilePeertoPeer中国移动点对点协议
TLSTransportLayerSecurity传输层安全
SMCShortMessageCenter短消息中心
3.网络结构
要求SP的功能实体向ISMG发CMPP_SUBMIT消息,由ISMG将消息转发到某SMC上。
同时,SMC也可向ISMG发送短消息,由ISMG发送给相应的SP。
4.CMPP功能概述
CMPP用以建立短消息中心和SP之间的通路,业务和信息的提供由SP完成。
可以为实现移动数据增值业务提供服务,例如以下业务:
Email通知、语音信箱通知、Internet发短消息、移动台发Email、催费通知、自动综合业务信息台(信息点播业务,主要有:
天气预报、股票信息、航班信息等)。
以下以Email通知业务为例,讲述信息的流程:
◆某因特网的用户向SP的EmailServer发送一封Email,
◆SP的POP3SERVER激活过滤进程,如果该用户申请了Email通知业务,则过滤进程将用户登记的手机号码取出,将Email的标题取出,绑定在CMPP_SUBMIT消息中,发送给ISMG,
◆ISMG将检查CMPP_SUBMIT消息中“接收业务的手机号码”字段,则在ISMG中查询该手机用户归属的SMC的地址,然后发送给SMC。
◆ISMG得到确认消息后,将消息转换成CMPP_SUBMIT_REP,发回给SP。
◆SMC收到该消息后,对该消息进行处理,发送给用户。
◆SMC向ISMG回送状态报告。
由上述流程可见,对于SP来讲,要做的工作主要集中在第二步,即在EMAILSERVER中做一个过滤程序,实现上述功能即可。
从协议上说,SP只要具备CMPP中实现的接口,就可以实现对应于控制层的功能,至于对于具体的SP功能实体,比如EmailServer、WebServer等,尚需做一些应用层的工作。
5.接口
CMPP协议以TCP/IP作为底层通信承载。
6消息流程
SP与ISMG之间进行信息交互时,可以采用长连接方式,也可以采用短连接方式。
所谓长连接,指在一个连接上可以连续发送多个数据包,然后断开连接,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。
短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。
短信网关之间前转时要求每条消息都要有状态报告。
当向用户发送信息发生错误时,网关应向SP发送错误状态报告。
.1长连接
SP与ISMG以Client—Server方式建立TCP连接,用于双方信息的相互提交。
TCP/IP连接建立后,由Client发起建立应用层连接,然后进行数据传输,当信道上没有数据传输时,客户端应发送链路检测包以维持此连接,超过一定时间(可参数配置,如2秒)服务端如果未收到客户端的任何数据则断开此连接。
消息采用并发方式发送,加以流量控制,窗口大小可调,暂定为16条消息,即接收方在应答前一次收到的消息最多不超过16条。
SP向ISMG发送的消息类型包括:
1)CMPP_Connect请求应用层连接
2)CMPP_Terminate终止应用层连接
3)CMPP_Terminate_REP终止应用层连接应答
4)CMPP_Deliver_REP下发短信应答
5)CMPP_Submit提交短信
6)CMPP_Query发送短信状态查询
7)CMPP_Cancel删除短信
8)CMPP_Active_Test激活测试
9)CMPP_Active_Test_REP激活测试应答
ISMG向SP发送的消息类型包括:
1)CMPP_Connect_REP请求连接应答
2)CMPP_Deliver短信下发
3)CMPP_Submit_REP提交短信应答
4)CMPP_Query_REP短信状态查询结果
5)CMPP_Cancel_REP删除短信应答
6)CMPP_Active_Test_REP激活测试应答
7)CMPP_Active_Test激活测试
8)CMPP_Terminate终止应用层连接
9)CMPP_Terminate_Rep终止应用层连接应答
长连接一次操作流程
SPISMG说明
CMPP_ConnectSP请求与ISMG建立应用层连接
CMPP_Connect_REPISMG请求连接应答
CMPP_Submit
(1)提交短信,要求确认
CMPP_Submit
(2)提交短信,要求确认
CMPP_Submit_REP对
(1)的提交短信响应
CMPP_Submit_REP对
(2)的提交短信响应
CMPP_Deliver(3)短信下发
CMPP_Deliver(4)短信下发
CMPP_Deliver_REP对(3)的短信应答
CMPP_Deliver_REP对(4)的短信应答
CMPP_Cancel删除短信
CMPP_Cancel_REP删除短信响应
CMPP_Query发送短信状态查询
CMPP_Query_REP短信状态查询结果
CMPP_Terminate终止应用层连接
CMPP_Terminate_Rep终止应用层连接响应
图6.1长连接消息流程示意图
.2短连接
ISMG与SP之间的通讯采用TCP/IP协议,双方互为client和server端。
发送与接收单独进行,每项业务建立一个连接,通讯采用应答方式,应答与请求在同一个连接中完成。
由于系统采用互为客户端/服务器模式,操作以客户端驱动方式发起连接请求,完成一次操作后关闭此连接。
连接中对SP的认证采用阶段性(如一天或一月)认证方式,当SP首次与IMSG交换信息时,SP首先发送身份认证包,ISMG对SP进行身份认证后,记录SP的IP地址等相关信息,在以后的数据交互时,ISMG把SP的IP地址作为认证条件,即对没有注册的SP的相关信息不予处理。
当SP想断开此逻辑上的应用层连接时,发送断开连接请求包,ISMG接受断开连接请求后,清除掉与此SP相关的信息,即对MO到此SP或SP的MT信息均不予处理,但保存MO的信息,直到SP再次与ISMG建立逻辑上的应用层连接,即身份认证。
也允许ISMG发起断开SP的连接请求。
ISMG之间通信采用短连接方式,首先发起连接者作为客户端,对方作为服务器建立连接。
消息采用并发方式发送,并加以流量控制,窗口大小可调,暂定为16条消息,即接收方在应答前一次收到的消息最多不超过16条。
SP向ISMG发送的消息类型包括:
1)CMPP_Connect请求逻辑应用层连接
2)CMPP_Terminate终止逻辑应用层连接
3)CMPP_Terminate_REP终止逻辑应用层连接应答
4)CMPP_Deliver_REP下发短信应答
5)CMPP_Submit提交短信
6)CMPP_Query发送短信状态查询
7)CMPP_Cancel删除短信
ISMG向SP发送的消息类型包括:
1)CMPP_Connect_REP请求逻辑应用层连接应答
2)CMPP_Terminate终止逻辑应用层连接
3)CMPP_Terminate_REP终止逻辑应用层连接应答
4)CMPP_Deliver短信下发
5)CMPP_Submit_REP提交短信应答
6)CMPP_Query_REP短信状态查询结果
7)CMPP_Cancel_REP删除短信应答
ISMG处于同一级别之上,ISMG之间数据传输采用长连接或短连接方式实现,首选长连接方式实现。
ISMG间互为客户/服务器模式,连接由数据请求的发起方建立,双方均可关闭此连接。
ISMG间发送的消息类型包括:
1)CMPP_Fwd消息前转
2)CMPP_Fwd_REP消息前转应答
短连接一次操作流程(MO和MT):
SPISMG说明
ISMG与汇接结点间的消息类型包括:
1)CMPP_MT_ROUTEMT路由请求
2)CMPP_MT_ROUTE_REPMT路由请求应答
3)CMPP_MO_ROUTEMO路由请求
4)CMPP_MO_ROUTE_REPMO路由请求应答
5)CMPP_GET_ROUTE获取路由请求
6)CMPP_GET_ROUTE_REP获取路由请求应答
7)CMPP_MT_ROUTE_UPDATEMT路由更新,ISMG->Central
8)CMPP_MT_ROUTE_UPDATE_REPMT路由更新回应,Central->ISMG
9)CMPP_MO_ROUTE_UPDATEMO路由更新,ISMG->Central
10)CMPP_MO_ROUTE_UPDATE_REPMO路由更新回应,Central->ISMG
11)CMPP_PUSH_MT_ROUTE_UPDATEMT路由更新,Central->ISMG
12)CMPP_PUSH_MT_ROUTE_UPDATE_REPMT路由更新回应,ISMG->Central
13)CMPP_PUSH_MO_ROUTE_UPDATEMO路由更新,Central->ISMG
14)CMPP_PUSH_MO_ROUTE_UPDATE_REPMO路由更新回应,ISMG->Central
6.3交互过程中的应答方式
下图给出SP提交短消息的交互流程示例,注意采用同步方式,与以前协议中采用的异
步方式不同:
本版本规范定义的协议交互流程(同步方式)
7.消息定义
CMPP长连接端口号定义为7890,短连接端口号定义为7900。
字节采用在网络中通用的网络字节序,超时时长间隔采用斐波那契数列,重发次数动态可调,最好不少于3次。
基本数据类型:
Integer
无符号整数
OctetString
定长字符串,位数不足时,如果左补0则补ASCII表示的零,如果右补0则补二进制的零
7.1消息结构
项目
说明
MessageHeader
消息头(所有消息公共包头)
MessageBody
消息体
7.2消息头格式(MessageHeader)
字段名
字节数
类型
描述
Total_Length
4
Integer
消息总长度(含消息头及消息体)
Command_ID
4
Integer
命令或响应类型
Sequence_ID
4
Integer
消息流水号,顺序累加,步长为1,循环使用
7.3消息体格式(MessageBody)
1.CMPP_Connect请求连接
字段名
字节数
属性
描述
Source_Addr
6
OctetString
SP_ID
AuthenticatorSP
16
OctetString
SP认证码
Version
1
Integer
双方协商的版本号
Timestamp
4
Integer
时间戳的明文,由客户端产生,格式为MMDDHHMMSS,即月日时分秒,10位,右对齐
2.CMPP_Connect_REP请求连接应答
字段名
字节数
属性
描述
Status
1
Integer
状态
0:
正确
1:
消息结构错
2:
非法SP_ID
3:
SP认证错
4:
版本太高
5~:
其他错误
AuthenticatorISMG
16
OctetString
ISMG认证码,SP认证出错时,此项为空
Version
1
Integer
服务器支持的最高版本号
3.CMPP_Terminate终止连接
消息体为空。
4.CMPP_Terminate_Rep终止连接响应
消息体为空。
5.CMPP_Submit发送短信
字段名
字节数
属性
描述
Msg_id
8
Integer
信息标识,由SP侧短信网关本身产生
生成MsgID的算法如下:
采用64位(8字节)的整数:
(1)时间(从月精确到分)64――41位(bit)
(2)SMC(短讯中心)号码40――17位(bit)如********,只填写最后86位********
(3)序列号16――1位(bit)顺序累加,步长为1,循环使用.
各分段如不能填满,左补零,右对齐
Pk_total
1
Integer
相同Msg_id的消息总条数,从1开始
Pk_number
1
Integer
相同Msg_id的消息序号,从1开始
Registered_Delivery
1
Integer
是否要求返回状态确认报告(0--不需要,1--需要,2--产生SMC话单)
Msg_level
1
Integer
信息级别
Service_id
10
OctetString
业务类型
Fee_UserType
1
Integer
计费用户类型字段,0:
对目的终端MSISDN计费;1:
对源终端MSISDN计费;2:
对SP计费;3:
表示本字段无效,对谁计费参见Fee_terminal_id字段。
Fee_terminal_id
21
Integer
被计费用户的号码(如本字节填空,则表示本字段无效,对谁计费参见Fee_UserType字段。
本字段与Fee_UserType字段互斥)
TP_pid
1
Integer
GSM协议类型。
详细是解释请参考GSM03.40中的9.2.3.9
TP_udhi
1
Integer
GSM协议类型。
详细是解释请参考GSM03.40中的9.2.3.23,仅使用1位,右对齐
Msg_Fmt
1
Integer
信息格式
0:
ASCII串
3:
短信写卡操作
4:
二进制信息
8:
UCS2编码
15:
含GB汉字。
。
。
。
。
。
Msg_src
6
OctetString
信息内容来源(SP_ID)
FeeType
2
OctetString
资费类别
FeeCode
6
OctetString
资费代码(以分为单位)
Valid_Time
17
OctetString
存活有效期,格式遵循SMPP3.3协议
At_Time
17
OctetString
定时发送时间,格式遵循SMPP3.3协议
Src_terminal_id
21
OctetString
源终端MSISDN号码(没有可以为空)
DestUsr_tl
1
Integer
接收消息的用户数量(小于100个用户)
Dest_terminal_id
21*DestUsr_tl
OctetString
接收业务的MSISDN号码
Msg_Length
1
Integer
消息长度(Msg_Fmt值为0时:
<160个字节;其它<=140个字节)
Msg_Content
Msg_length
OctetString
消息内容
Reserve
8
OctetString
保留
6.CMPP_Submit_REP发送短信响应(出错要求SP全部重发Msg_Id信息)
字段名
字节数
属性
描述
Msg_Id
8
Integer
消息标识(参见第5条CMPP_Submit定义)
Result
1
Integer
结果
0:
正确
1:
消息结构错
2:
命令字错
3:
消息序号重复
4:
消息长度错
5:
资费代码错
6:
超过最大信息长
7:
业务代码错
8:
流量控制错
9~:
其他错误
7.CMPP_Query发送短信状态查询(查询Time属性指定的日期的统计信息)
字段名
字节数
属性
描述
Time
8
OctetString
时间(精确至日)
Query_Type
1
Integer
查询类别
0:
总数查询
1:
按业务代码查询
Query_Code
10
OctetString
查询码(业务类型)
Reserve
8
OctetString
保留
8.CMPP_Query_REP短信状态查询结果
字段名
字节数
属性
描述
Time
8
OctetString
时间(精确至日)
Query_Type
1
Integer
查询类别
0:
总数查询
1:
按业务代码查询
Query_Code
10
OctetString
查询码
MT_TLMsg
4
Integer
从SP接收信息总数
MT_Tlusr
4
Integer
从SP接收用户总数
MT_Scs
4
Integer
成功转发数量
MT_WT
4
Integer
待转发数量
MT_FL
4
Integer
转发失败数量
MO_Scs
4
Integer
向SP成功送达数量
MO_WT
4
Integer
向SP待送达数量
MO_FL
4
Integer
向SP送达失败数量
9.CMPP_Deliver
字段名
字节数
属性
描述
Msg_Id
8
Integer
消息标识(参见第5条CMPP_Submit定义)
Destnation_id
21
OctetString
SP的接入代码,一般4--6位
Service_id
10
OctetString
业务类型
TP_pid
1
Integer
GSM协议类型。
详细是解释请参考GSM03.40中的9.2.3.9
TP_udhi
1
Integer
GSM协议类型。
详细是解释请参考GSM03.40中的9.2.3.23,仅使用1位,右对齐
Msg_Fmt
1
Integer
信息格式
0:
ASCII串
3:
短信写卡操作
4:
二进制信息
8:
UCS2编码
15:
含GB汉字。
。
。
。
。
。
Srcterminal_id
21
OctetString
源终端MSISDN号码
Registered_Delivery
1
Integer
是否为应答信息,0----非应答信息,1----状态报告
Msg_Length
1
Integer
消息长度
Msg_Content
Msg_length
OctetString
消息内容
Reserve
8
OctetString
保留项
当CMPP_Deliver为对CMPP_Submit的应答信息时(即状态报告),信息内容字段格式定义如下:
Msg_id
8
Integer
消息标识(参见第5条CMPP_Submit定义)
Stat
7
OctetString
短信的应答结果,含义与SMPP3.3协议补充要求中stat字段定义相同
Submit_time
10
OctetString
YYMMDDHHMM(YY为年的后两位00-99,MM:
01-12,DD:
01-31,HH:
00-23,MM:
00-59)
Done_time
10
OctetString
YYMMDDHHMM
Dest_terminal_id
21
OctetString
目的终端MSISDN号码
SMSC_sequence
4
Integer
SMSC发送状态报告的消息序列号
注:
1.对SP的同一Msg_Id的多个包,当网关全部正确接收、正确发往SMSC并且收到SMSC返回的全部状态报告后,给SP只返回一个状态报告,以示此短信已正确到达手机终端。
2.对SP的群发,采用逐条返回方式。
3.考虑到SMSC的存储转发时间,要求网关的状态报告回送与接收到短信请求并将其送到SMSC之间的时间间隔为48小时。
10.CMPP_Deliver_REP下发短信响应
字段名
字节数
属性
描述
Msg_Id
8
Integer
消息标识(参见第5条CMPP_Submit定义)
Result
1
Integer
结果
0:
正确
1:
消息结构错
2:
命令字错
3:
消息序号重复
4:
消息长度错
5:
资费代码错
6:
超过最大信息长
7:
业务代码错
8:
流量控制错
9~:
其他错误
11.CMPP_Cancel删除短信
字段名
字节数
属性
描述
Msg_Id
8
Integer
消息标识(参见第5条CMPP_Submit定义)
12.CMPP_Cancel_REP删除短信响应
字段名
字节数
属性
描述
Success_Id
1
Integer
成功标识(0:
成功;1:
失败)
13.CMPP_Active_Test激活测试
没有消息体。
14.CMPP_Active_Test_REP激活测试响应
字段名
字节数
属性
描述
Success_Id
1
Integer
成功标识(0:
成功;其它:
不成功)
15.CMPP_Fwd短信前转
字段名
字节数
属性
描述
Source_Id
6
OctetString
源网关的代码(右对齐,左补0)
Dest_Id
6
OctetString
目的网关代码(右对齐,左补0)
NodesCount
1
Integer
经过的网关数量
Msg_Fwd_Type
1
Integer
前转的消息类型(0:
MT前转;1:
MO前转)
Msg_id
8
Integer
消息标识(参见第5条CMPP_Submit定义)
Pk_total
1
Integer
相同Msg_id的消息总条数,从1开始
Pk_number
1
Integer
相同Msg_id的消息序号,从1开始
Registered_Delivery
1
Integer
是否要求返回状态确认报告(0--不需要,1--需要,2--产生SMC话单)
Msg_level
1
Integer
信息级别
Servic
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中国移动 通信 信息资源 实体 互联网 短消息 网关 接口 协议 模板
![提示](https://static.bingdoc.com/images/bang_tan.gif)