谁知道中国移动和联通的短信息发送的接口网关的资料!200分!(200分)

  • 主题发起人 主题发起人 renren
  • 开始时间 开始时间
楼上:
SGIP/CMPP的协议 相关接口的VCL -----
我对这个不熟悉,我想问的是:这些东东是不是属于密不公开的? 商业的?

能否共享? [:)]
在不违反一些条条框框的前提下,能否上传到一个地方? 让大家都见识见识~ [:D]
 
呵呵!
两个不是相关的而是对立的![:)]
SGIP是联通的标准
CMPP是中国移动的标准!
共享还是免了吧!不过有需要可以通过邮件交流!
[:D]
 
楼上:[:)]
那我就不客气了! [:)]
jrqjrq@sina.com 不知能够.......交流吗? [:D]
 
TO:战鹰
战鹰兄,可否给小弟发一份。先谢了。jinzuo007@21cn.com
 
呵呵,提醒大家不要在这里留邮件地址,小心收到垃圾邮件!
要控件就直接给我发信!
有空的话用MSN切磋!
Email&MSN:luokai@up369.com
 
发送完成,包括CMPP接口VCL和接口文档,VCL包括源代码!
有问题请通过Email交流!
另外说几个可能遇到的技术问题!
1.短连接方式一般不用CONNECT命令直接就可以SUBMIT来发送短消息,但是只能发送一条连接就会被服务器切断!
2.长连接过程中的CONNECT的认证过程,每个网关都可能不一样,所以必须和网关提供商交流!
长连接当使用长连接的时候一定要考虑阻塞的问题,不然你的麻烦就大了!
 



中国移动通信信息资源站实体与互联网短消息网关接口协议
(V1.2)



中国移动通信集团公司
2001/6/12



1. 编制说明
本规范为中国移动通信集团公司企业规范,规定信息资源站实体与互联网短消息网关的应用层接口协议。本协议版本为1.2版。
2. 缩略语
ISMG Internet Short Message Gateway 互联网短消息网关
SMPP Short Message Peer to Peer 短消息点对点协议
CMPP China Mobile Peer to Peer 中国移动点对点协议
TLS Transport Layer Security 传输层安全
SMC Short Message Center 短消息中心
3.网络结构


要求SP的功能实体向ISMG发CMPP_SUBMIT消息,由ISMG将消息转发到某SMC上。同时,SMC也可向ISMG发送短消息,由ISMG发送给相应的SP。

4.CMPP功能概述
CMPP用以建立短消息中心和SP之间的通路,业务和信息的提供由SP完成。
可以为实现移动数据增值业务提供服务,例如以下业务:
Email通知、语音信箱通知、Internet发短消息、移动台发Email、催费通知、自动综合业务信息台(信息点播业务,主要有:天气预报、股票信息、航班信息等)。
以下以Email通知业务为例,讲述信息的流程:
u 某因特网的用户向SP的Email Server发送一封Email,
u SP的POP3 SERVER激活过滤进程,如果该用户申请了Email通知业务,则过滤进程将用户登记的手机号码取出,将Email的标题取出,绑定在CMPP_SUBMIT消息中,发送给ISMG,
u ISMG将检查CMPP_SUBMIT消息中“接收业务的手机号码”字段,则在ISMG中查询该手机用户归属的SMC的地址,然后发送给SMC。
u ISMG得到确认消息后,将消息转换成CMPP_SUBMIT_REP,发回给SP。
u SMC收到该消息后,对该消息进行处理,发送给用户。
u SMC向ISMG回送状态报告。

由上述流程可见,对于SP来讲,要做的工作主要集中在第二步,即在EMAIL SERVER中做一个过滤程序,实现上述功能即可。

从协议上说,SP只要具备CMPP中实现的接口,就可以实现对应于控制层的功能,至于对于具体的SP功能实体,比如Email Server、Web Server等,尚需做一些应用层的工作。
5. 接口
CMPP协议以TCP/IP作为底层通信承载。







6 消息流程
SP与ISMG之间进行信息交互时,可以采用长连接方式,也可以采用短连接方式。所谓长连接,指在一个连接上可以连续发送多个数据包,然后断开连接,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。短信网关之间前转时要求每条消息都要有状态报告。当向用户发送信息发生错误时,网关应向SP发送错误状态报告。
6.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 终止应用层连接应答











长连接一次操作流程

SP ISMG 说明
CMPP_Connect SP请求与ISMG建立应用层连接

CMPP_ Connect_REP ISMG请求连接应答

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 长连接消息流程示意图

6.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):
SP ISMG 说明










































ISMG与汇接结点间的消息类型包括:
1)CMPP_MT_ROUTE MT路由请求
2)CMPP_MT_ROUTE_REP MT路由请求应答
3)CMPP_MO_ROUTE MO路由请求
4)CMPP_MO_ROUTE_REP MO路由请求应答
5)CMPP_GET_ROUTE 获取路由请求
6)CMPP_GET_ROUTE_REP 获取路由请求应答
7)CMPP_MT_ROUTE_UPDATE MT路由更新,ISMG->Central
8)CMPP_MT_ROUTE_UPDATE_REP MT路由更新回应,Central->ISMG
9)CMPP_MO_ROUTE_UPDATE MO路由更新,ISMG->Central
10)CMPP_MO_ROUTE_UPDATE_REP MO路由更新回应,Central->ISMG
11)CMPP_PUSH_MT_ROUTE_UPDATE MT路由更新,Central->ISMG
12)CMPP_PUSH_MT_ROUTE_UPDATE_REP MT路由更新回应,ISMG->Central
13)CMPP_PUSH_MO_ROUTE_UPDATE MO路由更新,Central->ISMG
14)CMPP_PUSH_MO_ROUTE_UPDATE_REP MO路由更新回应,ISMG->Central





6.3 交互过程中的应答方式
下图给出SP提交短消息的交互流程示例,注意采用同步方式,与以前协议中采用的异
步方式不同:













本版本规范定义的协议交互流程(同步方式)





7.消息定义
CMPP长连接端口号定义为7890,短连接端口号定义为7900。字节采用在网络中通用的网络字节序,超时时长间隔采用斐波那契数列,重发次数动态可调,最好不少于3次。

基本数据类型:
Integer 无符号整数
Octet String 定长字符串,位数不足时,如果左补0则补ASCII表示的零,如果右补0则补二进制的零
7.1消息结构
项目 说明
Message Header 消息头(所有消息公共包头)
Message Body 消息体

7.2 消息头格式(Message Header)
字段名 字节数 类型 描述
Total_Length 4 Integer 消息总长度(含消息头及消息体)
Command_ID 4 Integer 命令或响应类型
Sequence_ID 4 Integer 消息流水号,顺序累加,步长为1,循环使用

7.3 消息体格式(Message Body)
1. CMPP_Connect 请求连接
字段名 字节数 属性 描述
Source_Addr 6 Octet String SP_ID
AuthenticatorSP 16 Octet String 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 Octet String 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)如 13800100500,只填写最后86位00100500(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 Octet String 业务类型
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 Octet String 信息内容来源(SP_ID)
FeeType 2 Octet String 资费类别
FeeCode 6 Octet String 资费代码(以分为单位)
Valid_Time 17 Octet String 存活有效期,格式遵循SMPP3.3协议
At_Time 17 Octet String 定时发送时间,格式遵循SMPP3.3协议
Src_terminal_id 21 Octet String 源终端MSISDN号码(没有可以为空)
DestUsr_tl 1 Integer 接收消息的用户数量(小于100个用户)
Dest_terminal_id 21*DestUsr_tl Octet String 接收业务的MSISDN号码
Msg_Length 1 Integer 消息长度(Msg_Fmt值为0时:<160个字节;其它<=140个字节)
Msg_Content Msg_length Octet String 消息内容
Reserve 8 Octet String 保留

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 Octet String 时间(精确至日)
Query_Type 1 Integer 查询类别0:总数查询1:按业务代码查询
Query_Code 10 Octet String 查询码 (业务类型)
Reserve 8 Octet String 保留

8.CMPP_Query_REP 短信状态查询结果
字段名 字节数 属性 描述
Time 8 Octet String 时间(精确至日)
Query_Type 1 Integer 查询类别0:总数查询1:按业务代码查询
Query_Code 10 Octet String 查询码
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 Octet String SP的接入代码,一般4--6位
Service_id 10 Octet String 业务类型
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 Octet String 源终端MSISDN号码
Registered_Delivery 1 Integer 是否为应答信息,0----非应答信息,1----状态报告
Msg_Length 1 Integer 消息长度
Msg_Content Msg_length Octet String 消息内容
Reserve 8 Octet String 保留项

当CMPP_Deliver为对CMPP_Submit的应答信息时(即状态报告),信息内容字段格式定义如下:
Msg_id 8 Integer 消息标识(参见第5条CMPP_Submit定义)
Stat 7 Octet String 短信的应答结果,含义与SMPP3.3协议补充要求中stat字段定义相同
Submit_time 10 Octet String YYMMDDHHMM(YY为年的后两位00-99,MM:01-12,DD:01-31,HH:00-23,MM:00-59)
Done_time 10 Octet String YYMMDDHHMM
Dest_terminal_id 21 Octet String 目的终端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 Octet String 源网关的代码(右对齐,左补0)
Dest_Id 6 Octet String 目的网关代码(右对齐,左补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 信息级别
Service_id 10 Octet String 业务类型
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 Octet String 信息内容来源
FeeType 2 Octet String 资费类别
FeeCode 6 Octet String 资费代码(以分为单位)
Valid_Time 17 Octet String 有效期
At_Time 17 Octet String 定时发送的时间
Src_terminal_id 21 Octet String 源终端MSISDN号码(没有可以为空)
DestUsr_tl 1 Integer 接收消息的用户数量 (用户数为0时表示MO前转)
Dest_terminal_id 21*DestUsr_tl Octet String MT前转时表示接收业务的MSISDN号码,MO前转时表示SP的接入代码
Msg_Length 1 Integet 消息长度
Msg_Content Msg_length Octet String 消息内容(针对状态报告包,内容格式及含义同CMPP_Deliver状态报告包消息内容)
Reserve 8 M 保留

16. CMPP_Fwd _REP 短信前转响应
字段名 字节数 属性 描述
Msg_Id 8 Integer 消息标识(参见第5条CMPP_Submit定义)
Pk_total 1 Integer 相同Msg_id的消息总条数
Pk_number 1 Integer 相同Msg_id的消息序号
Result 1 Integer 结果0:正确1:消息结构错 2:命令字错 i3:消息序号重复4:消息长度错5:资费代码错6:超过最大信息长7:业务代码错8: 流量控制错9: 前转判断错(此SP不应发往本ISMG)10~ :其他错误

17. CMPP_MT_ROUTE MT路由请求,ISMG->Central
字段名 字节数 属性 描述
Source_id 6 Octet String 源网关代码
Terminal_id 21 Octet String 目标终端MSISDN号码

18. CMPP_MT_ROUTE_REP MT路由请求响应,Central->ISMG
字段名 字节数 属性 描述
Route_id 4 Integer 路由编号(从0开始,由GNS统一分配)
Dest_id 6 Octet String 目标网关代码
Gateway_IP 15 Octet String 目标网关IP地址
Gateway_port 2 Integer 目标网关IP端口(7890或7900)
Start_id 6 Octet String MT路由起始号码段
End_id 6 Octet String MT路由截止号码段
Area_code 4 Octet String 手机所属区号
Result 1 Integer 结果(含义见后面的说明)

19. CMPP_MO_ROUTE MO路由请求,ISMG->Central
字段名 字节数 属性 描述
Source_id 6 Octet String 源网关代码
SP_Code 21 Octet String SP的接入号码
Service_Type 10 Octet String 请求的业务类型(此项适合全网服务内容,如爱心卡图片传情)
Service_Code 4 Integer 请求的业务代码(如果未置Service_Type字段,此字段为空,如爱心卡图片传情TPCQ1000—2000对应某个网站的某些相应图片)

20. CMPP_MO_ROUTE_REP MO路由请求响应
字段名 字节数 属性 描述
Route_id 4 Integer 路由编号
Dest_id 6 Octet String 目标网关代码
Gateway_IP 15 Octet String 目标网关IP地址
Gateway_port 2 Integer 目标网关IP端口
SP_Code 21 Octet String SP的接入号码
Start_code 4 Integer MO路由起始业务代码(如果未置请求的Service_Type字段,此字段为空)
End_code 4 Integer MO路由截止业务代码(如果未置请求的Service_Type字段,此字段为空)
Result 1 Integet 结果(含义见后面定义)

21. CMPP_GET_ ROUTE 获取路由请求,ISMG->Central
字段名 字节数 属性 描述
Source_id 6 Octet String 源网关代码
Route_type 2 Octet String 路由类型(MO/MT)
Last_route_id 4 Integer 已经接收的上1条路由编号(第1次发送此请求时Last_route_id=-1)

22. CMPP_GET_ ROUTE_REP 获取路由请求响应,Central->ISMG
字段名 字节数 属性 描述
Route_id 4 Integet 路由编号
Dest_id 6 Octet String 目标网关代码
Gateway_IP 15 Octet String 目标网关IP地址
Gateway_port 2 Integet 目标网关IP端口
SP_Code 21 Octet String SP的接入号码(请求的路由类型=MT时,此字段为空)
Service_Type 10 Octet String 请求的业务类型(此项适合全网服务内容,如爱心卡图片传情)
Start_code 4 Integer 请求的路由类型=MO时:MO路由起始业务代码(如果未置Service_Type字段,此字段为空)请求的路由类型=MT时:手机号码段的起始号码
End_code 4 Integer 请求的路由类型=MO时:MO路由截止业务代码(如果未置Service_Type字段,此字段为空)请求的路由类型=MT时:手机号码段的截止号码
Area_code 4 Octet String 手机所属区号(请求的路由类型=MO时,此字段为空)
Result 1 Integet 结果(含义见后面定义)


23. CMPP_MT_ROUTE_UPDATE (MT路由更新,ISMG->Central)
字段名 字节数 属性 描述
Update_type 1 Integet 0 - 添加;1-删除;2-更新
Route_id 4 Integet 路由编号(若update_type 为“添加”,则此字段为零)
Dest_id 6 Octet String 目标网关代码
Gateway_IP 15 Octet String 目标网关IP地址
Gateway_port 2 Integet 目标网关IP端口
Start_id 6 Octet String MT路由起始号码段
End_id 6 Octet String MT路由截止号码段
Area_code 4 Octet String 手机所属区号

24. CMPP_MT_ROUTE_UPDATE_REP (MT路由更新回应,Central->ISMG)
字段名 字节数 属性 描述
Result 1 Integet 0 – 数据合法,等待核实,1-数据不合法

25. CMPP_MO_ROUTE_UPDATE (MO路由更新,ISMG->Central)
字段名 字节数 属性 描述
Update_type 1 Integet 0 - 添加;1-删除;2-更新
Route_id 4 Integet 路由编号若(update_type 为“添加”,则此字段为零)
Dest_id 6 Octet String 目标网关代码
Gateway_IP 15 Octet String 目标网关IP地址
Gateway_port 2 Integet 目标网关IP端口
ICP_ID 21 Octet String ICP的服务号码
Service_type 10 Octet String 请求的业务类型(此项适合全网服务内容,如爱心卡图片传情,如该路由不包含此业务,此字段为空)
Start_code 4 Integer MO路由起始业务代码(如果未置请求的Service_Type字段,此字段为空)
End_code 4 Integer MO路由截止业务代码(如果未置请求的Service_Type字段,此字段为空)

26. CMPP_MO_ROUTE_UPDATE_REP (MO路由更新回应,Central->ISMG)
字段名 字节数 属性 描述
Result 1 Integet 0 – 数据合法,等待核实,1-数据不合法

27. CMPP_PUSH_MT_ROUTE_UPDATE(MT路由更新,Central->ISMG)
字段名 字节数 属性 描述
Update_type 1 Integet 0 - 添加;1-删除;2-更新
Route_id 4 Integet 路由编号
Dest_id 6 Octet String 目标网关代码
Gateway_IP 15 Octet String 目标网关IP地址
Gateway_port 2 Integet 目标网关IP端口
Start_id 6 Octet String MT路由起始号码段
End_id 6 Octet String MT路由截止号码段
Area_code 4 Octet String 手机所属区号
要求各短信网关统一采用7900端口并接收本请求,然后更改本地路由缓存。

28. CMPP_PUSH_MT_ROUTE_UPDATE_REP(MT路由更新回应,ISMG->Central)
字段名 字节数 属性 描述
Result 1 Integet 0 – 成功更改,1-更改失败

29. CMPP_PUSH_MO_ROUTE_UPDATE(MO路由更新,Central->ISMG)
字段名 字节数 属性 描述
Update_type 1 Integet 0 - 添加;1-删除;2-更新
Route_id 4 Integet 路由编号
Dest_id 6 Octet String 目标网关代码
Gateway_IP 15 Octet String 目标网关IP地址
Gateway_port 2 Integet 目标网关IP端口
ICP_ID 21 Octet String ICP的服务号码
Service_type 10 Octet String 请求的业务类型(此项适合全网服务内容,如爱心卡图片传情,如该路由不包含此业务,此字段为空)
Start_code 4 Integer MO路由起始业务代码(如果未置请求的Service_Type字段,此字段为空)
End_code 4 Integer MO路由截止业务代码(如果未置请求的Service_Type字段,此字段为空)
要求各短信网关统一采用7900端口并接收本请求,然后更改本地路由缓存。

30 CMPP_PUSH_MO_ROUTE_UPDATE_REP(MO路由更新回应,ISMG->Central)
字段名 字节数 属性 描述
Result 1 Integet 0 – 成功更改,1-更改失败
“结果”字段代码含义
编号 含义
0 正常
1 没有匹配路由
2 这是最后1条路由
8.编号
8.1 ISMG编号
地点 编号(ISMG_ID暂用区号加顺序号标识) 说明
北京 (001001) 北京编号为1的网关
江西 (079101) 江西编号为1的网关
广州 (002001) 广州编号为1的网关
天津 (002201) 天津编号为1的网关
其他见网络部门局数据要求




8.2 Command_ID
命令字名称 Command_ID值 说明
CMPP_Connect 0x00000001 请求连接
CMPP_Connect_REP 0x80000001 请求连接应答
CMPP_Terminate 0x00000002 终止连接
CMPP_Terminate_REP 0x80000002 终止连接应答
CMPP_Submit 0x00000004 提交短信
CMPP_Submit_REP 0x80000004 提交短信应答
CMPP_Deliver 0x00000005 短信下发
CMPP_Deliver_REP 0x80000005 下发短信应答
CMPP_Query 0x00000006 发送短信状态查询
CMPP_Query_REP 0x80000006 发送短信状态查询应答
CMPP_Cancel 0x00000007 删除短信
CMPP_Cancel_REP 0x80000007 删除短信应答
CMPP_Active_Test 0x00000008 激活测试
CMPP_Active_Test_REP 0x80000008 激活测试应答
CMPP_Fwd 0x00000009 消息前转
CMPP_Fwd_REP 0x80000009 消息前转应答
CMPP_MT_ROUTE 0x00000010 MT路由请求
CMPP_MT_ROUTE_REP 0x80000010 MT路由请求应答
CMPP_MO_ROUTE 0x00000011 MO路由请求
CMPP_MO_ROUTE_REP 0x80000011 MO路由请求应答
CMPP_GET_ROUTE 0x00000012 获取路由请求
CMPP_GET_ROUTE_REP 0x80000012 获取路由请求应答
CMPP_MT_ROUTE_UPDATE 0x00000013 MT路由更新ISMG->Central
CMPP_MT_ROUTE_UPDATE_REP 0x80000013 MT路由更新应答Central -> ISMG
CMPP_MO_ROUTE_UPDATE 0x00000014 MO路由更新ISMG->Central
CMPP_MO_ROUTE_UPDATE_REP 0x80000014 MO路由更新应答Central -> ISMG
CMPP_PUSH_MT_ROUTE_UPDATE 0x00000015 MT路由更新Central -> ISMG
CMPP_PUSH_MT_ROUTE_UPDATE_REP 0x80000015 MT路由更新应答ISMG->Central
CMPP_PUSH_MO_ROUTE_UPDATE 0x00000016 MO路由更新Central -> ISMG
CMPP_PUSH_MO_ROUTE_UPDATE_REP 0x80000016 MO路由更新应答ISMG->Central
8.3 FeeType 资费类别
FeeType(用户计费类别)

用户计费类别 含 义
00 “短消息类型”为“发送”,对“计费用户号码”不计信息费,此类话单仅用于核减SP对称的信道费
01 对“计费用户号码”免费
02 对“计费用户号码”按条计信息费
03 对“计费用户号码”按包月收取信息费
04 对“计费用户号码”的信息费封顶
05 对“计费用户号码”的收费是由SP实现


 
TO:战鹰
谢谢“战鹰”兄的慷慨帮助!小弟深表感谢。小弟的MSN:jinzuo007@hotmail.com
有空找“战鹰”多多讨教!
 
To:战鹰,
偶也想要一份学习学习,收到派分,可以不?
 
smpp1.2的协议文档我主页上有,在杂七杂八栏目里。
http://nowcan.yeah.net
 
名 称:支持短信协议互转网关程序(For NT) 并提供业务开发包及 业务生成工具
作 用:总之从无到到有实现与移动联通连接并提供诸如移动聊天,股票查询之类的服务
只需1天时间(可以编程控制业务流程)
运行环境:WINNT/2000 (For UNIX/Linux 正在开发中 ) 提供unix/linux 下JAVA接口
产品说明:可以提供 短信网关、短信业务生成器,短信客户端
用户控制:支持多用户接入及子号码分配,可以控制每个用户发送量
连 接:可以直接连接移动,联通及LOGICA,华为,傲天,英斯克,北伟
东大NOKIA,清华声讯网关
支持 SMPP/SGIP/CMPP 之间互转
详细联系:请邮件 netbabys@21cn.com
QQ 2412932 加入时请注明 短信字样

还提供超强客户端软件(可以OEM)呵~中国网友短信软件评比第一
客户端软件可以去 sms.1288.net
sms.czinfo.net 下载

具体流程是
聊天 ---/
股票查询--/
新闻定制--->应用业务---/
  客户端软件-->>-TKTRANS--->>移动或是联通网关--->>用户手机
网站 -----/
 
rainxy2002 老兄你文章上的图片
不能看能否发到我的邮箱里??
 
我要做的是收费的服务要移动在手机费中扣除.
 
接受答案了.
 
我已经有端口和协议了,接下来该如何在程序中实现?可以具体一些吗?我是新手。
 
后退
顶部