1、 中国电信企业标准CTCT/T SN RC1 CP/SP开发-SMGP V3.0.3CP/SP 开发-中国电信短消息网关协议(SMGP)2008-08 发布 2008-08 实施中 国 电 信 集 团 公 司CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 1 -目 录1 适用范围 22 引用标准 33 缩略语 44 SMGP 协议概述 54.1 定义 .54.2 通信方式 .54.3 协议应用及涉及的端口号 .75 SMGP 协议 105.1 数据类型 .105.2 消息结构 .106 参数定义 236.1 消息头参数描述 .236.2 消息体必选
2、参数描述 .256.3 消息体可选参数描述 .407 基于 SMGP 协议的 API 函数 47附录 A 基于 SMGP 协议的 API 函数说明(规范性附录) 48A.1 基本要求 .48A.2 API 数据结构说明(以 C 语言为例) 49A.3 API 函数说明 .51A.4 配置 SMGP API .55A.5 短消息的自动分割功能 .56A.6 错误代码含义 .57附录 B 短消息群发功能的实现(资料性附录) 59附录 C 修改历史记录 59短消息网关协议 SN RC1 SMGP V3.0.3 - 1 -前 言本标准规定了短消息网关与其它网元之间进行短消息传输的接口协议。本标准是在
3、SMGP 协议 V2.0 的基础上,基于 3G 网络的短消息业务发展需求进行修订而成。本标准共包含 3 部分:1、SMGP 基本协议;2、SMGP 协议扩展计费接口;3、SMGP 协议扩展电子商务接口。本文只描述了第 1 部分 SMGP 基本协议,第 2 部分和第 3 部分同 SMGP 协议 V2.0。本标准起草单位:中国电信股份有限公司、中国电信股份有限公司上海研究院本标准主要起草人:葛敏 周文君 顾丽丽 蒋力 董斌 施唯佳CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 2 -1 适用范围本协议适用于短消息网络上(固定网、移动网)短消息网关与其它
4、网元之间进行短消息的传输。本协议适用于短消息网关、相关网元设备开发商及内容提供商。CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 3 -2 引用标准下列文件通过本文的参考而成为本规范的条款。凡是注日期的参考文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本文,凡是不注日期的参考文件,其最新版本适用于本文。【1】Short Message Peer to Peer Protocol Specification【2】中国电信 CDMA 短消息网关设备规范 v1.0.1【3】中国电信 CDMA 短消息网关测试规范 v1.0.1【4】中国电信
5、综合业务管理平台 ISMP 接口规范_RC1.0.1_-SS 接口CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 4 -3 缩略语缩略语 英文全名 中文全名ESME External Short Message Entity 外 部 短 消 息 实 体GNS Gateway Name Server 汇接网关SP Service Provider 服务提供商SMSC Short Message Service Center 短消息业务中心SMGP Short Message Gateway Protocol 短消息网关协议SMGW Short Mes
6、sage Gateway 短消息网关SMPP Short Message Point to Point Protocol 短消息点到点协议CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 5 -4 SMGP 协议概述4.1 定义SMGP 协议是 SMGW 与其它网元设备(除 SMC 外)进行短消息传输的接口协议。非 SMC 网元设备向 SMGW 发送或从 SMGW 接收短消息,这些非 SMC 网元设备称为 ESME。4.2 通信方式SMGW 与 ESME 之间共有两种连接方式:长连接和短连接。所谓长连接,指在一个 TCP 连接上可以连续发送多个数据包
7、,在 TCP 连接保持期间,如果没有数据包发送,需要双方发链路检测包以维持此连接。短连接是指通信双方有数据交互时,就建立一个 TCP 连接,数据发送完成后,则断开此TCP 连接,即每次 TCP 连接只完成一对 SMGP 消息的发送。4.2.1 长连接通信双方以客户-服务器方式建立 TCP 连接,用于双方信息的相互提交。当信道上没有数据传输时,通信双方应每隔时间 C 发送链路检测包以维持此连接,当链路检测包发出超过时间 T 后未收到响应,应立即再发送链路检测包,再连续发送 N-1 次后仍未得到响应则断开此连接。参数 C、T、N 原则上应可配置,现阶段建议取值为:C=3 分钟,T=60 秒,N=3
8、。通信双方之间的消息如果不能成功发送,应隔时间 R 进行重发,再连续发送 N-1 次后仍未发送成功则停发。现阶段建议取值为:R=60 秒,N=3。通信双方之间的消息发送后等待 T 秒后未收到响应,应立即重发,再连续发送 N-1 次后仍未得到响应则停发。现阶段建议取值为:T=60 秒,N=3。消息采用并发方式发送,加以滑动窗口流量控制,窗口大小参数 W 可配置,现阶段建议为 16,即接收方在应答前一次收到的消息最多不超过 16 条。长连接的操作流程举例如图 1 所示:CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 6 -. . . . . . 建 立
9、 TCP连 接滑动窗口不大于 WWSMGP 消息 1客户端 服务器端SMGP 消息 2对 SMGP 消息 1 的响应对 SMGP 消息 2 的响应链路检测包链路检测包响应建立 TCP 连接链路检测包链路检测包响应拆除 TCP 连接. . . . . . 建 立 TCP连 接图 4.1 长连接操作流程CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 7 -4.2.2 短连接通信双方以客户-服务器方式建立 TCP 连接,应答与请求在同一个连接中完成。系统采用客户/服务器模式,操作以客户端驱动方式发起连接请求,完成一次操作后关闭此连接。通信双方之间的消息发
10、送后等待 T 秒后未收到响应,应立即重发,再连续发送 N-1 次后仍未得到响应则停发。现阶段建议取值为:T=60 秒,N=3。短连接的操作流程举例如图 2 所示:4.3 协议应用及涉及的端口号SMGP 协议在中国电信中的应用主要体现在两类短消息业务上:一类是固定网短消息业务,另一对 SMGP 消息 1 的响应SMGP 消息 1建立 TCP 连接拆除 TCP 连接SMGP 消息 2对 SMGP 消息 2 的响应建立 TCP 连接拆除 TCP 连接. . . . . . 建 立 TCP连 接客户端 服务器端图 4.2 短连接操作流程CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-
11、SMGP V3.0.3 - 8 -类是移动网短消息业务。4.3.1 固定网短消息业务图 4.3 SMGP及 SMGP扩 展 计 费 接 口 SMGP SMGP SMGP SP SMC 预 付 费 平台 固 定 终 端 (PHS,”家 加 e”) SMC 预 付 费 平 台 SP 一 级 SMGW 二 级 SMGW 固 定 网(PHS,PSTN) 固 定 终 端 (PHS,”家 加 e”) 固 定 网(PHS,PSTN) 二 级 SMGW SP SMGP扩 展计 费 接 口 SMGP扩 展计 费 接 口 SMGP及 SMGP扩 展 计 费 接 口 固定网短消息业务系统结构简图固定网短消息业务系统
12、结构简图如图 3 所示。SMGP 协议在固网短消息系统中应用情况如下:1. 二级 SMGW 与 SP二级 SMGW 与 SP 之间采用 SMGP 协议进行短消息的传输,端口号为 8890,二级 SMGW 为服务器端,SP 为客户端;2. 二级 SMGW 与一级 SMGW二级 SMGW 与一级 SMGW 之间采用 SMGP 协议进行短消息的传输,端口号为 8900,二级SMGW 与一级 SMGW 互为客户/服务器端;二级 SMGW 与一级 SMGW 之间采用 SMGP 协议扩展计费接口(参见 SMGP V2.0)进行计费信息的传输,端口号为 8900,二级 SMGW 作为服务器端,一级 SMGW
13、 作为客户端;3. 一级 SMGW 与 SP一级 SMGW 与 SP 之间采用 SMGP 协议进行短消息的传输,端口号为 8890,一级 SMGW 为服务器端,SP 为客户端;CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 9 -4. 二级 SMGW 和 PHS 预付费平台二级 SMGW 与 PHS 预付费平台之间采用 SMGP 协议扩展计费接口(参见 SMGP V2.0)进行计费信息的传输,端口号为 9100,预付费平台作为服务器端,二级 SMGW 作为客户端。4.3.2 移动网短消息业务移动网短消息业务系统结构简图如图 4 所示。SMGP 协议
14、在移动网短消息系统中应用情况如下:1. SMGW 与 SP SMGW 与 SP 之间采用 SMGP 协议进行短消息的传输,端口号为 8890,SMGW 为服务器端,SP 为客户端;2. SMGW 与 SMGW SMGW 与 SMGW 之间采用 SMGP 协议进行短消息的传输,端口号为 8900,SMGW 与SMGW 互为客户/服务器端;3. SMGW 与 GNS SMGW 与 GNS 之间采用 SMGP 协议进行消息传输,端口号为 8901,SMGW 为服务器端,GNS 为客户端。GNSSMGWSMGWSMC SMC图 4.4 移动网短消息业务系统结构简图构图SMGPSMGPSPSPSMGPS
15、MGPSMGP移动网 移动网移动网终端 移动网终端CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 10 -5 SMGP 协议5.1 数据类型5.1.1 基本数据类型Integer 无符号整数Octet String 不强制以 0x00 结尾的定长字符串。当位数不足时,在不明确注明的情况下,应左对齐,右补 0x00。在明确注明的情况下,以该字段的明确注明为准。5.1.2 可选参数可选参数采用 TLV(Tag、Length、Value)形式定义,每个可选参数的 Tag、Length、Value 的定义见 6.3 节。字段 长度(字节) 数据类型 说明T
16、ag 2 Integer 字段的标签,用于唯一标识可选参数Length 2 Integer 字段的长度Value 可变长度 可变类型 字段内容5.2 消息结构项目 说明Message Header 消息头(所有消息公共包头)Message Body 消息体CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 11 -5.2.1 消息头结构字段 长度(字节) 数据类型 说明 参考PacketLength 4 Integer 数据包长度 6.1.1RequestID 4 Integer 请求标识 6.1.2SequenceID 4 Integer 消息流水号
17、 6.1.35.2.2 消息体结构5.2.2.1 登录操作(Login )Login 操作的目的是客户端向服务器端注册作为一个合法客户端身份,若注册成功后即建立了应用层的连接,此后客户端可以与此服务器端进行消息的接收和发送。服务器端以 Login_Resp 消息响应客户端的请求。5.2.2.1.1Login字段 长度(字节) 数据类型 说明 参考ClientID 8 Octet String 客户端用来登录服务器端的用户账号。6.2.1AuthenticatorClient16 Octet String 客户端认证码,用来鉴别客户端的合法性。6.2.2LoginMode 1 Integer 客
18、户端用来登录服务器端的登录类型。6.2.3TimeStamp 4 Integer 时间戳 6.2.4必选参数ClientVersion 1 Integer 客户端支持的协议版本号 6.2.55.2.2.1.2Login_Resp字段长度(字节) 数据类型 说明 参考Status 4 Integer 请求返回结果 6.2.6必选参AuthenticatorServer16 Octet String 服务器端返回给客户端的认证码6.2.7CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 12 -数 ServerVersion 1 Integer 服务器端
19、支持的最高版本号 6.2.85.2.2.2 SP 向 SMGW 提交短消息的操作(Submit)5.2.2.2.1Submit字段长度(字节) 数据类型 说明 参考MsgType 1 Integer 短消息类型 6.2.9NeedReport 1 Integer SP 是否要求返回状态报告 6.2.10Priority 1 Integer 短消息发送优先级 6.2.11ServiceID 10 Octet String 业务代码 6.2.12FeeType 2 Octet String 收费类型 6.2.13FeeCode 6 Octet String 资费代码 6.2.14FixedFee
20、6 Octet String 包月费/封顶费 6.2.15MsgFormat 1 Integer 短消息格式 6.2.16ValidTime 17 Octet String 短消息有效时间 6.2.17AtTime 17 Octet String 短消息定时发送时间 6.2.18SrcTermID 21 Octet String 短信息发送方号码 6.2.19ChargeTermID 21 Octet String 计费用户号码 6.2.20DestTermIDCount1 Integer 短消息接收号码总数 6.2.21DestTermID 21*DestTermCountOctet Str
21、ing*短消息接收号码 6.2.22MsgLength 1 Integer 短消息长度 6.2.23MsgContent MsgLengthOctet String 短消息内容 6.2.24必选参数Reserve 8 Octet String 保留 6.2.25字段 数据类型 说明 参考TP_pid TLV GSM 协议类型 6.3.2TP_udhi TLV GSM 协议类型 6.3.3LinkID TLV 交易标识 6.3.4MsgSrc TLV 信息内容的来源 6.3.17ChargeUserType TLV 计费用户类型 6.3.5可选参数ChargeTermType TLV 计费用户的
22、号码类型 6.3.6CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 13 -ChargeTermPseudo TLV 计费用户的伪码 6.3.7DestTermType TLV 短消息接收方号码的类型 6.3.8DestTermPseudo TLV 短消息接收方的伪码 6.3.9PkTotal TLV 相同 MsgID 的消息总条数 6.3.10PkNumber TLV 相同 MsgID 的消息序号 6.3.11SubmitMsgType TLV SP 发送的消息类型 6.3.12SPDealResult TLV SP 对消息的处理结果 6.3.1
23、3MServiceID TLV 业务代码(用于移动网业务) 6.3.19短信平台支持短信的群发功能,关于短信群发功能的实现请参阅“附录 B 短消息群发功能的实现” 。5.2.2.2.2Submit_Resp字段 长度(字节) 数据类型 说明 参考MsgID 10 Octet String 短消息流水号 6.2.26必选参数Status 4 Integer 请求返回结果 6.2.65.2.2.3 SMGW 向 SP 下发短消息的操作(Deliver )5.2.2.3.1Deliver字段长度(字节) 数据类型 说明 参考MsgID 10 Octet String 短消息流水号 6.2.26IsR
24、eport 1 Integer 是否为状态报告 6.2.27MsgFormat 1 Integer 短消息格式 6.2.16RecvTime 14 Octet String 短消息接收时间 6.2.28SrcTermID 21 Octet String 短消息发送号码 6.2.19DestTermID 21 Octet String 短消息接收号码 6.2.22MsgLength 1 Integer 短消息长度 6.2.23MsgContent MsgLengthOctet String 短消息内容 6.2.24必选参数 Reserve 8 Octet String保留 6.2.25可 字段
25、数据类型 说明 参考CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 14 -TP_pid TLV GSM 协议类型 6.3.2TP_udhi TLV GSM 协议类型 6.3.3LinkID TLV 交易标识 6.3.4SrcTermType TLV 短消息发送方的号码类型 6.3.14SrcTermPseudo TLV 短消息发送方的伪码 6.3.15SubmitMsgType TLV SP 发送的消息类型 6.3.12选参数SPDealResult TLV SP 对消息的处理结果 6.3.135.2.2.3.2Deliver_Resp字段 长度
26、(字节) 数据类型 说明 参考MsgID 10 Octet String短消息流水号 6.2.26必选参数Status 4 Integer 请求返回结果 6.2.65.2.2.4 链路检测操作(Active_Test)本操作仅适用于通信双方采用长连接通信方式时用于保持连接。5.2.2.4.1Active_Test无消息体。5.2.2.4.2Active_Test_Resp无消息体。5.2.2.5 请求关闭连接的操作(Exit)Exit 操作的目的是客户端或服务器端基于某些原因决定拆除当前的应用层连接而发起的操作。此操作完成后客户端与服务器端的应用层连接被释放,此后通信时应由客户端重新发起 Lo
27、gin 操作。5.2.2.5.1Exit无消息体。CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 15 -5.2.2.5.2Exit_Resp无消息体。5.2.2.6 SP 向 SMGW 查询短消息发送状态的操作( Query,可选)5.2.2.6.1Query字段 长度(字节) 数据类型 说明 参考QueryTime 8 Octet String 查询时间 6.2.33QueryType 1 Integer 查询类别 6.2.34必选参数 QueryCode 10 Octet String 查询码 6.2.355.2.2.6.2Query_Res
28、p字段 长度(字节) 数据类型 说明 参考QueryTime 8 Octet String 查询时间 6.2.33QueryType 1 Integer 查询类别 6.2.34QueryCode 10 Octet String 查询码(业务类型) 6.2.35MT_TLMsg 4 Integer 接收短消息总数 6.2.36MT_Tlusr 4 Integer 接收用户总数 6.2.37MT_Scs 4 Integer 成功转发数量 6.2.38MT_WT 4 Integer 待转发数量 6.2.39MT_FL 4 Integer 转发失败数量 6.2.40MO_Scs 4 Integer 成
29、功送达数量 6.2.41MO_WT 4 Integer 待送达数量 6.2.42MO_FL 4 Integer 送达失败数量 6.2.43必选参数Reverse 8 Octet String 保留 6.2.255.2.2.7 SMGW 向 GNS 查询终端路由的操作(Query_TE_Route,可选)5.2.2.7.1Query_TE_Route字段 长度 数据类型 说明 参考CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 16 -(字节)SrcGatewayID 6 Octet String 源网关代码 6.2.44必选参数QueryTermI
30、D 21 Octet String 查询号码 6.2.455.2.2.7.2Query_TE_Route_Resp字段长度(字节) 数据类型 说明 参考Status 4 Integer 请求返回结果 6.2.6RouteID 4 Integer 路由编号 6.2.46DestGatewayID 6 Octet String 目标网关代码 6.2.47DestGatewayIP 15 Octet String 目标网关 IP 地址 6.2.48DestGatewayPort 2 Integer 目标网关 IP 端口 6.2.49TermRangeID 10 Octet String 路由号码段
31、6.2.50ProvinceCode 4 Octet String 终端所属省代号 6.2.51UserType 1 Integer 用户类型(该字段保留) 6.2.52必选参数Time 14 Octet String 时间戳 6.2.535.2.2.8 SMGW 向 GNS 查询 SP 路由的操作(Query_SP_Route ,可选)5.2.2.8.1Query_SP_Route字段长度(字节) 数据类型 说明 参考SrcGatewayID 6 Octet String 源网关代码 6.2.44必选参数QueryTermID 21 Octet String 查询号码 6.2.455.2.2
32、.8.2Query_SP_Route_Resp字段 长度(字节) 数据类型 说明 参考CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 17 -Status 4 Integer 请求返回结果 6.2.6RouteID 4 Integer 路由编号 6.2.46DestGatewayID 6 Octet String 目标网关代码 6.2.47DestGatewayIP 15 Octet String 目标网关 IP 地址 6.2.48DestGatewayPort 2 Integer 目标网关 IP 端口 6.2.49SPID 8 Octet Str
33、ing SP 的企业代码 6.2.54SPCode 21 Octet String SP 的服务代码 6.2.55SPAccessType 1 Integer SP 接入类型 6.2.56SPType 1 Integer SP 类型 6.2.57必选参数Time 14 Octet String 时间戳 6.2.535.2.2.9 SMGW 向 GNS 获取所有终端路由的操作(Get_All_TE_Route,可选)5.2.2.9.1Get_All_TE_Route字段长度(字节) 数据类型 说明 参考SrcGatewayID 6 Octet String 源网关代码 6.2.44RouteTy
34、pe 4 Octet String 路由类型 6.2.58必选参数 LastRouteID 4 Integer 已经接收的上一条路由编号 6.2.595.2.2.9.2Get_All_TE_Route_Resp字段长度(字节) 数据类型 说明 参考Status 4 Integer 请求返回结果 6.2.6RouteID 4 Integer 路由编号 6.2.46DestGatewayID 6 Octet String 目标网关代码 6.2.47DestGatewayIP 15 Octet String 目标网关 IP 地址 6.2.48DestGatewayPort 2 Integer 目标网
35、关 IP 端口 6.2.49必选参TermRangeID 10 Octet String 路由号码段 6.2.50CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 18 -ProvinceCode 4 Octet String 终端所属省代号 6.2.51UserType 1 Integer 用户类型(该字段保留) 6.2.52RouteTotal 4 Integer 返回路由总数 6.2.60RouteNumber 4 Integer 当前返回的路由序号 6.2.61数Time 14 Octet String 时间戳 6.2.535.2.2.10
36、SMGW 向 GNS 获取所有 SP 路由的操作(Get_All_SP_Route,可选)5.2.2.10.1 Get_All_SP_Route字段长度(字节) 数据类型 说明 参考SrcGatewayID 6 Octet String 源网关代码 6.2.44RouteType 4 Octet String 路由类型 6.2.58必选参数 LastRouteID 4 Integer 已经接收的上一条路由编号 6.2.595.2.2.10.2 Get_All_SP_Route_Resp字段长度(字节) 数据类型 说明 参考Status 4 Integer 请求返回结果 6.2.6RouteID
37、 4 Integer 路由编号 6.2.46DestGatewayID 6 Octet String 目标网关代码 6.2.47DestGatewayIP 15 Octet String 目标网关 IP 地址 6.2.48DestGatewayPort 2 Integer 目标网关 IP 端口 6.2.49SPID 8 Octet String SP 的企业代码 6.2.54SPCode 21 Octet String SP 的服务代码 6.2.55SPAccessType 1 Integer SP 接入类型 6.2.56SPType 1 Integer SP 类型 6.2.57RouteTo
38、tal 4 Integer 返回路由总数 6.2.60必选参数RouteNumber 4 Integer 当前返回的路由序号 6.2.61CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 19 -Time 14 Octet String 时间戳 6.2.535.2.2.11 SMGW 向 GNS 更新终端路由的操作(Update_TE_Route ,可选)5.2.2.11.1 Update_TE_Route字段长度(字节) 数据类型 说明 参考UpdateType 1 Integer 更新类型 6.2.62RouteID 4 Integer 路由编号
39、 6.2.46DestGatewayID 6 Octet String 目标网关代码 6.2.47DestGatewayIP 15 Octet String 目标网关 IP 地址 6.2.48DestGatewayPort 2 Integer 目标网关 IP 端口 6.2.49TermRangeID 10 Octet String 路由号码段 6.2.50ProvinceCode 4 Octet String 终端所属省代号 6.2.51必选参数UserType 1 Integer 用户类型(该字段保留) 6.2.525.2.2.11.2 Update_TE_Route_Resp字段长度(字节
40、) 数据类型 说明 参考Status 4 Integer 请求返回结果 6.2.6RouteID 4 Integer 路由编号 6.2.46必选参数 Time 14 Octet String 时间戳 6.2.535.2.2.12 SMGW 向 GNS 更新 SP 路由的操作(Update_SP_Route,可选)5.2.2.12.1 Update_SP_Route字段 长度(字节) 数据类型 说明 参考CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 20 -UpdateType 1 Integer 更新类型 6.2.62RouteID 4 Inte
41、ger 路由编号 6.2.46DestGatewayID 6 Octet String 目标网关代码 6.2.47DestGatewayIP 15 Octet String 目标网关 IP 地址 6.2.48DestGatewayPort 2 Integer 目标网关 IP 端口 6.2.49SPID 8 Octet String SP 的企业代码 6.2.54SPCode 21 Octet String SP 的服务代码 6.2.55SPAccessType 1 Integer SP 接入类型 6.2.56必选参数SPType 1 Integer SP 类型 6.2.575.2.2.12.2
42、 Update_SP_Route_Resp字段长度(字节) 数据类型 说明 参考Status 4 Integer 请求返回结果 6.2.6RouteID 4 Integer 路由编号 6.2.46必选参数 Time 14 Octet String 时间戳 6.2.535.2.2.13 GNS 向 SMGW 更新终端路由的操作(Push_Update_TE_Route,可选)5.2.2.13.1 Push_Update_TE_Route字段长度(字节) 数据类型 说明 参考UpdateType 1 Integer 更新类型 6.2.62RouteID 4 Integer 路由编号 6.2.46D
43、estGatewayID 6 Octet String 目标网关代码 6.2.47DestGatewayIP 15 Octet String 目标网关 IP 地址 6.2.48DestGatewayPort 2 Integer 目标网关 IP 端口 6.2.49必选参TermRangeID 10 Octet String 路由号码段 6.2.50CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 21 -ProvinceCode 4 Octet String 终端所属省代号 6.2.51UserType 1 Integer 用户类型(该字段保留) 6.
44、2.52数Time 14 Octet String 时间戳 6.2.535.2.2.13.2 Push_Update_TE_Route_Resp字段长度(字节) 数据类型 说明 参考必选参数Status 4 Integer 请求返回结果 6.2.65.2.2.14 GNS 向 SMGW 更新 SP 路由的操作(Push_Update_SP_Route,可选)5.2.2.14.1 Push_Update_SP_Route字段长度(字节) 数据类型 说明 参考UpdateType 1 Integer 更新类型 6.2.62RouteID 4 Integer 路由编号 6.2.46DestGatew
45、ayID 6 Octet String 目标网关代码 6.2.47DestGatewayIP 15 Octet String 目标网关 IP 地址 6.2.48DestGatewayPort 2 Integer 目标网关 IP 端口 6.2.49SPID 8 Octet String SP 的企业代码 6.2.54SPCode 21 Octet String SP 的服务代码 6.2.55SPAccessType 1 Integer SP 接入类型 6.2.56SPType 1 Integer SP 类型 6.2.57必选参数Time 14 Octet String 时间戳 6.2.535.2
46、.2.14.2 Push_Update_SP_Route_Resp字段长度(字节) 数据类型 说明 参考CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 22 -必选参数Status 4 Integer 请求返回结果 6.2.6CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 23 -6 参数定义6.1 消息头参数描述6.1.1 PacketLengthSMGP 数据包长度,指包头和包体的长度之和。单位是 “字节” 。6.1.2 RequestId请求标识表示 SMGP 数据包的类型,请求包的请求标识和应答
47、包的请求标识一一对应。SMGP 协议的请求标识定义如下:请求名称 请求标识 说明Login 0x00000001 客户端登录Login_Resp 0x80000001 客户端登录应答Submit 0x00000002 提交短消息Submit_Resp 0x80000002 提交短消息应答Deliver 0x00000003 下发短消息Deliver_Resp 0x80000003 下发短消息应答Active_Test 0x00000004 链路检测Active_Test_Resp 0x80000004 链路检测应答Forward 0x00000005 短消息前转Forward_Resp 0x8
48、0000005 短消息前转应答Exit 0x00000006 退出请求Exit_Resp 0x80000006 退出应答Query 0x00000007 SP 统计查询Query_Resp 0x80000007 SP 统计查询应答Query_TE_Route 0x00000008 查询 TE 路由Query_TE_Route_Resp0x80000008 查询 TE 路由应答Query_SP_Route 0x00000009 查询 SP 路由CP/SP 开发-短消息网关协议 SN RC1 CP/SP 开发-SMGP V3.0.3 - 24 -Query_SP_Route_Resp0x80000009 查询 SP 路由应答Payment_Request 0x0000000A 扣款请求(用于预付费系统,参见增值业务计费方案)Payment_Request_Resp0x8000000A 扣款请求响应(用于预付费系统,参见增值业务计费方案,下同)Payment_Affirm 0x0000000B 扣款确认(用于预付费系统,参见增值业务计费方案)Payment_Affirm_Resp0x8000000B 扣款确认响应(用于预付费系统,参见增值业务计费方案)Query_UserState