中国电信短消息网关协议(SMGP协议)(v1.3)_第1页
中国电信短消息网关协议(SMGP协议)(v1.3)_第2页
中国电信短消息网关协议(SMGP协议)(v1.3)_第3页
中国电信短消息网关协议(SMGP协议)(v1.3)_第4页
中国电信短消息网关协议(SMGP协议)(v1.3)_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中国电信集团公司企业标准中国电信集团公司企业标准 CT/T 1-2001 基于固定电话网的信息终端及综合信息系统技术规范基于固定电话网的信息终端及综合信息系统技术规范 第七分册第七分册 短消息网关(短消息网关(SMGPSMGP)协议)协议 V1.3V1.3 2002-04-30 发布 2002-04-30 实施 中国电信集团公司 发布 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 1 页 目目 录录 前前 言言.3 1适用范围适用范围.4 2引用标准引用标准.4 3缩略语缩略语.4 4SMGP 概述概述 .4 4.1.SMGP 功能.4 4.2.SMGP 定义.4 4.3.SMGP 通信流程.5 5SMGP 数据包定义数据包定义 .7 5.1.数据包结构.7 5.2.请求标识说明.7 5.3.包体结构.8 6编码说明编码说明.16 6.1.短消息格式代码表.16 6.2.收费类型代码表.16 6.3.短消息状态表.16 6.4.Err 错误代码表.17 6.5.Status 错误代码表.17 7基于基于 SMGP 协议的协议的 API 函数函数 .18 附录附录 A 基于基于 SMGP 协议的协议的 API 函数说明函数说明.19 (提示的附录提示的附录).19 A.1 基本要求.19 A.2 API 数据结构说明(以 C 语言为例).20 A.3 API 函数说明.22 A 3.7 查询短消息流量(SMGPQuery 可选).26 A.4 配置 SMGP API .26 A.5 短信的自动分割功能.27 A.6 错误代码含义.28 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 2 页 前前 言言 本标准介绍综合信息系统短消息网关和内容提供商(CP)之间、短消息网 关和短消息网关之间的通信协议。本协议简称 SMGP(Short Message Gateway Protocol)。 本标准起草单位: 中国电信集团公司、中国电信集团公司上海研发中心 本标准主要起草人: 特别感谢:亚信科技中国有限公司在本协议制订过程中的大力支持和帮助。 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 3 页 1适用范围适用范围 本协议适用于短消息网关开发商和短消息内容提供商。 2引用标准引用标准 SMPP (Short Message Peer to Peer Protocol Specification) v3.3 3缩略语缩略语 见总册 4SMGP 概述概述 4.1. SMGP 功能功能 SMGP 协议是内容提供商与短消息网关,以及短消息网关与短消息网关之 间的通信协议。SMGP 可以实现以下功能: (1) 内容提供商向综合信息系统短消息用户发送短消息,例如邮件通知、 天气预报等。 (2) 综合信息系统短消息用户向内容提供商点播信息,例如股票查询、航 班信息等。 (3) 内容提供商以某个短消息用户的身份向综合信息系统短消息用户发送 传情信息,例如图片传情、音乐传情等。 (4) 综合信息系统短消息用户发送的短消息通过短消息网关前转发送给异 地的短消息用户。 4.2. SMGP 定义定义 SMGP 协议是一个基于数据包的交互式协议,底层通过 TCP/IP 协议传递数 据。每个数据包都包含请求标识,代表数据包的用途。内容提供商与短消息网 关或者短消息网关与短消息网关之间采用 Client/Server 方式交互信息,客户 端向服务器端发送一个请求包,服务器端向客户端返回回应包。 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 4 页 客户端发送的所有请求包都包含一个唯一的序列号,服务器端返回的回应 包也带有相应的序列号,以便客户识别这是哪一个请求的回应。 客户端和服务器端之间可以采用长连接或者短连接的方式通信。如果采用 短连接,客户端必须以发送者、接收者或收发者的身份登录到服务器,通信完 毕后断开连接。如果采用长连接,一旦认证通过建立连接,客户端与服务器端 可以随时通信,在一定时间内两者之间没有发送合法的请求包,连接就中断。 4.3. SMGP 通信流程通信流程 网关与 CP 之间通信连接采用端口号 8890,网关与网关通信连接采用端口 号 8900。 4.3.1. SMGP 登录模式登录模式 在 SMGP 协议的一个会话中客户端可以采用三种登录方式与服务器端相连: 发送模式(send mode) 、接收模式(receive mode)和收发模式(transmit mode) 。 在发送模式中客户端只能发送短消息、在接收模式中客户端只能接收短消息、 在收发模式中客户端既可以发送也可以接收短消息。三种模式均可以采用长连 接与短连接两种连接方式的一种,根据实际情况选择。 4.3.2. CP 发送短消息发送短消息 CP 以发送者或者是收发者身份登录后,就可以发送短消息。CP 可以不等 待上一个短消息发送回应包,就发送下一个短消息。 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 5 页 CP SMGW login(send /transmit mode) login_resp submit(1) submit(2) submit_resp (1) submit_resp (2) exit exit_resp 4.3.3. CP 接收短消息接收短消息 CP 以接收者或者是收发者身份登录后,短消息网关就向 CP 发送短消息, 短消息网关可以不等待上一个短消息回应包,就发送下一个短消息。 CP SMGW login(receive /transmit mode) login_resp deliver(1) deliver(2) deliver_resp (1) deliver_resp (2) exit exit_resp 4.3.4. SMGW 转发短消息转发短消息 短消息网关需要把异地 MT/MO 短消息转发到相应的短消息网关,在转发 短消息之前短消息网关需要通过对方网关认证。 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 6 页 CP SMGW login(send /receive/ transmit mode)_ login_resp forward(1) forward(2) forward_resp (1) forward_resp (2) exit exit_resp 5SMGP 数据包定义数据包定义 SMGP 基本数据类型定义如下表所示: Integer无符号整数 Octet String 定长字符串。位数不足时,如果左补0则补 ASCII 表示的0 ,如果右补0则补二进制表示 的0 5.1. 数据包结构数据包结构 SMGP 数据包分为包头和包体两部分,包头的结构如下: 字段字段长度(字节)长度(字节)数据类型数据类型说明说明 PacketLength4Integer数据包长度(包头和包体的长度 之和。单位:字节) RequestID4Integer请求标识 SequenceID4Integer序列号(由客户端分配,循环递 增) 5.2. 请求标识说明请求标识说明 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 7 页 请求标识(RequestID)标识数据包的类型,请求包的请求标识和回应包的 请求标识一一对应。 请求名称请求名称请求标识请求标识说明说明 login0 x00000001CP 或 SMGW 登录请求 login_resp0 x80000001CP 或 SMGW 登录回应 submit0 x00000002CP 发送短消息请求 submit_resp0 x80000002CP 发送短消息回应 deliver0 x00000003SMGW 向 CP 发送短消息请求 deliver_resp0 x80000003SMGW 向 CP 发送短消息回应 active_test0 x00000004测试通信链路是否正常请求(由客户端发起, CP 和 SMGW 可以通过定时发送此请求来维 持连接) active_test_resp0 x80000004测试通信链路是否正常回应 forward0 x00000005SMGW 转发 MT/MO 短消息请求 forward_reCP0 x80000005SMGW 转发 MT/MO 短消息回应 exit0 x00000006退出请求 exit_resp0 x80000006退出回应 query0 x00000007CP 统计查询请求 query_resp0 x80000007CP 统计查询回应 mt_route_update0 x00000008MT 路由更新请求 mt_route_update_r esp 0 x80000008MT 路由更新回应 mo_route_update0 x00000009MO 路由更新请求 mo_route_update_ resp 0 x80000009MO 路由更新回应 5.3. 包体结构包体结构 5.3.1. login 字段字段长度长度数据类型数据类型说明说明 8Octet String CP 编号或者 SMGW 编号 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 8 页 ClientID编号规则参见总册第 6 节 AuthenticatorC lient 16Octet String 客户端密码 用于鉴别客户端的接入请求。其值通过 单向 MD5 hash 计算得出,表示如下: AuthenticatorClient =MD5(ClientID+7 字节的 0 +shared secret+timestamp) Shared secret 由服务器端与客户端事先 商定,timestamp 格式为: MMDDHHMMSS,即月日时分秒,10 位。 LoginMode1Integer登录类型(0=发送短消息, 1=接收短消 息,2=收发短消息,其他保留) TimeStamp4Integer时间戳的明文,由客户端产生,格式为 MMDDHHMMSS,即月日时分秒,10 位数字的整型,右对齐 Version1integer客户端支持的版本号(高位 4bit 表示 主版本号,低位 4bit 表示次版本号) 5.3.2. login_resp 字段字段长度(字节)长度(字节)数据类型数据类型说明说明 Status 4Integerlogin 请求返回结果 (参见错误代码表) Authenticator Server 16Octet String 服务器端认证码,当客户端认证出错 时,此项为空 其值通过单向 MD5 hash 计算得出,表 示如下: AuthenticatorServer =MD5(Status+AuthenticatorClient +shared secret) Shared secret 由服务器端与客户端事先 商定,AuthenticatorClient 为客户端发送 给服务器端的上一条消息 login 中的值。 +Version1Integer服务器支持的最高版本号 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 9 页 5.3.3. submit 字段字段长度(字长度(字 节)节) 数据类数据类 型型 说明说明 SubType1integer短消息子类型(0取消订阅,1 订阅请求,2点播,3订阅,其 他保留) NeedReport1integer是否要求返回状态报告(0=不要求, =要求) Priority1Integer发送优先级(从 0 到 9) ServiceID10Octet String 业务类型 FeeType2Octet String 收费类型(参见收费类型代码表) FeeCode6Octet String 资费代码(单位为分) MsgFormat1Octet String 短消息格式(参见短消息格式代码 表) ValidTime17Octet String 有效时间,格式遵循 SMPP3.3 协议 AtTime17Octet String 定时发送时间,格式遵循 SMPP3.3 协议 SrcTermID21Octet String 短消息发送用户号码 ChargeTermID21Octet String 计费用户号码 DestTermIDCount1Integer短消息接收号码总数(100) DestTermID21* DestTerm Count Octet String 短消息接收号码(连续存储 DestTermIDCount 个号码) MsgLength1Integer短消息长度 MsgContent 252 Octet String 短消息内容 Reserve8Octet String 保留 5.3.4. submit_resp 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 10 页 字段字段长度(字节)长度(字节) 数据类型数据类型说明说明 MsgID10Octet String 网关产生的短消息流水号,由三部分 组成: 网关代码:3 字节(BCD 码) 时间:4 字节(BCD 码) 序列号:3 字节(BCD 码) Status 4IntegerSubmit 请求返回结果(参见错误代码 表) 5.3.5. deliver 字段字段长度(字长度(字 节)节) 数据类数据类 型型 说明说明 MsgID1Integer网关产生的短消息流水号,由三部 分组成: 网关代码:3 字节(BCD 码) 时间:4 字节(BCD 码) 序列号:序列号:3 字节(字节(BCD 码)码) IsReport1Integer是否状态报告(0=不是,1=是) MsgFormat1Integer短消息格式(参见短消息格式代码 表) RecvTime14Octet String 短消息接收时间(格式: yyyymmddhhmiss,例如 20010301200000) SrcTermID21Octet String 短消息发送号码 DestTermID21Octet String 短消息接收号码 MsgLength1Integer短消息长度 MsgContent 252 Octet String 短消息内容 Reserve8Octet String 保留 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 11 页 5.3.6. deliver_resp 字段字段长度(长度)长度(长度)数据类型数据类型说明说明 MsgID1Integer网关产生的短消息流水号,由三部分 组成: 网关代码:3 字节(BCD 码) 时间:4 字节(BCD 码) 序列号:3 字节(BCD 码) Status 4integerDeliver 请求返回结果(参见错误代码 表) 5.3.7. active_test 没有包体 5.3.8. acitve_test_resp 没有包体 5.3.9. forward 字段字段长度(长长度(长 度)度) 数据类数据类 型型 说明说明 MsgID10Octet String 网关产生的短消息流水号,由三部 分组成: 网关代码:3 字节(BCD 码) 时间:4 字节(BCD 码) 序列号:3 字节(BCD 码) DestSMGWNo6Octet String 目标网关代码 SrcSMGWNo6Octet String 源网关代码 SMCNo6Octet String 短消息中心代码 SMType1Integer短消息类型(0=MT,1=MO,2 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 12 页 异地点到点短消息,3异网点到 点短消息,其他保留) SubType1integer短消息子类型(0取消订阅,1 订阅请求,2点播,3订阅,其 他保留) ReportFlag1Integer当 SMType=0 时,表示是否要求返 回状态报告(0=不要求,1=要求) 当 SMType=1 时,表示是否状态报 告(0=不是,1=是) Priority1Integer发送优先级(从 0 到 9) ServiceID10Octet String 业务类型 FeeType2Octet String 资费类型(参见收费类型代码表) FeeCode6Octet String 资费代码(单位为分) MsgFormat1Integer短消息格式(参见短消息格式代码 表) ValidTime17Octet String 有效时间,格式遵循 SMPP3.3 协议 AtTime17Octet String 定时发送时间,格式遵循 SMPP3.3 协议 SrcTermID21Octet String 短消息发送用户号码 DestTermID21Octet String 短消息接收用户号码 ChargeTermID21Octet String 计费用户号码 MsgLength1Integer短消息长度 MsgContent 252 Octet String 短消息内容 Reserve8Octet String 保留 5.3.10. forword_resp 字段字段长度长度(长度长度)数据类型数据类型说明说明 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 13 页 MsgID10Octet String 网关产生的短消息流水号 Status 4IntegerForward 请求返回结果(参见错误代码 表) 5.3.11. exit 没有包体 5.3.12. exit_resp 没有包体 5.3.13. query(保留)(保留) 字段名字节数属性描述 Time8 Octet String查询时间(格式:yyyymmdd,精确 到日) Query_Type1 Integer查询类别 0:总数查询 1:按业务代码查询 其他保留 Query_Code10 Octet String查询码 1(业务类型) 5.3.14. query_resp(保留)(保留) 字段名字节数属性描述 Time8 Octet String查询时间(格式:yyyymmdd,精 确到日) Query_Type1 Integer查询类别 0:总数查询 1:按业务代码查询 其他保留 Query_Code 10Octet String查询码(业务类型) MT_TLMsg4 Integer接收短消息总数 MT_Tlusr4 Integer接收用户总数 MT_Scs4 Integer成功转发数量 MT_WT4 Integer待转发数量 1当 Query_Type 为 0 时,此项无效;当 Query_Type 为 1 时,此项填写业务代码 Service_id. 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 14 页 MT_FL4 Integer转发失败数量 MO_Scs4 Integer成功送达数量 MO_WT4 Integer待送达数量 MO_FL4 Integer送达失败数量 Reverse8 Octet String保留 5.3.15. mt_route_update (保留)(保留) 字段名字段名字节数字节数属性属性描述描述 UpdateType1Integer0 添加;1删除;2更新 其他保留 RouteId4Integer路由编号(若 update_type 为“添 加” ,则此字段为零) SrcGatewayId6Octet String源网关代码 SrcGatewayIP15Octet String源网关 IP 地址 SrcGatewayPort2Integer源网关 IP 端口 StartTermId6Octet StringMT 路由起始号码段 EndTermId6Octet StringMT 路由截止号码段 AreaCode4Octet String终端所属区号 5.3.16. mt_route_update_resp (保留)(保留) 字段名字段名字节数字节数属性属性描述描述 Status1Integer参见错误代码表 5.3.17. mo_route_update(保留)(保留) 字段名字段名字节数字节数属性属性描述描述 UpdateType1Integer0 添加;1删除;2更新 其他保留 RouteId4Integer路由编号(若 update_type 为“添加” , 则此字段为零) SrcGatewayId6Octet String源网关代码 SrcGatewayIP15Octet String源网关 IP 地址 SrcGatewayPort2Integer源网关 IP 端口 SrcTermID21Octet StringCP 代码 5.3.18. mo_route_update_resp(保留)(保留) 字段名字段名字节数字节数属性属性描述描述 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 15 页 Status1Integer参见错误代码表 5.3.19. 状态报告格式状态报告格式 字段字段长度长度数据类型数据类型说明说明 id10Octet String 状态报告对应原短消息的 MsgID Submit_date14Octet String 短消息提交时间(格式: yyyymmddhhmiss,例如 010331200000) done_date14Octet String 短消息下发时间(格式: yyyymmddhhmiss,例如 010331200000) Stat7Octet String 短消息状态(参见短消息状态表) Err3Octet String 参见错误代码表 6编码说明编码说明 6.1. 短消息格式代码表短消息格式代码表 代码代码含义含义 0ASCII 编码 3短消息写卡操作 4二进制短消息 8UCS2 编码 15 6.2. 收费类型代码表收费类型代码表 代码代码含义含义 00免费 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 16 页 01按条收费 02包月 03封顶 其他保留 6.3. 短消息状态表短消息状态表 状态名状态名状态值状态值( (字符串字符串) )说明说明 DELIVEREDDELIVRD短消息转发成功 EXPIREDEXPIREDEXPIRED短消息超过有效期 DELETEDDELETED短消息已经被删除 UNDELIVERABLEUNDELIV短消息是不可转发的 ACCEPTEDACCEPTD短消息已经被最终用户接收 (为保持与 SMPP 兼容,保留) UNKNOWNUNKNOWN未知短消息状态 REJECTEDREJECTD短消息被拒绝 (为保持与 SMPP 兼容,保留) 6.4. Err 错误代码表错误代码表 状态值状态值 ( (字符串字符串) ) 说明说明对应状态对应状态command_status 对应值对应值 Command_st atus 代码代码 000成功DELIVRDESME_ROK0 x00000001 001用户不能通信EXPIREDESME_RUSRABS ENT 0 x00000400 002用户忙EXPIREDESME_RUSRUS Y 0 x00000401 003终端无此部件号UNDELIVESME_RNOPAR T 0 x00000402 004非法用户UNDELIVESME_RUSRINV ALID 0 x00000403 005用户在黑名单内UNDELIVESME_RBLACK LIST 0 x00000404 006系统错误UNDELIVESME_RSYSERR OR 0 x00000405 007用户内存满EXPIREDESME_RMEMCA P 0 x00000406 008非信息终端UNDELIVESME_PROTOC OLERROR 0 x00000407 009数据错误UNDELIVESME_DATAER ROR 0 x00000408 010数据丢失UNDELIVESME_DATAMIS0 x00000409 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 17 页 SING 注:err 错误代码的定义对应了 SMPP 协议包头中 command_status 字段的 相应状态值。 6.5. Status 错误代码表错误代码表 代码代码含义含义 0成功 1系统忙 2超过最大连接数 3-9保留 10消息结构错 11命令字错 12序列号重复 13-19保留 20IP 地址错 21认证错 22版本太高 23-29保留 30非法消息类型(SMType) 31非法优先级(Priority) 32非法资费类型(FeeType) 33非法资费代码(FeeCode) 34非法短消息格式(MsgFormat) 35非法时间格式 36非法短消息长度(MsgLength) 37有效期已过 38非法查询类别(QueryType) 39路由错误 40-127保留 128-255厂家自定义 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 18 页 7基于基于 SMGP 协议的协议的 API 函数函数 详见附录 A。 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 19 页 附录附录 A 基于基于 SMGP 协议的协议的 API 函数说明函数说明 (提示的附录提示的附录) A.1 基本要求基本要求 A.1.1 安装安装 网关需要提供 API 软件包,解压到指定目录下后可以修改配置文件,配置 参数至少包括 IcpId(ICP 编号) 、IcpShareKey(ICP 密码) 、ClientIP(客户主机 的 IP 地址)和 ServerIP(短信网关地址) 。 A.1.2 例子程序例子程序 网关至少应该提供以下例程,供 ICP 调试使用,分别为: Connect(参数),检查是否能够成功登录短消息网关; TestAPI(参数) ,检查是否能够成功连接短信网关。 SetKey (参数) ,修改 ICP 密码。 SendSM(参数)尝试发送短信。 RecvSM(参数)尝试接收短信等。 RecvSMReport(参数),尝试接收短消息状态报告。 A.1.3 操作系统平台要求操作系统平台要求 网关提供的 API 软件包至少要求支持以下操作系统平台: Free BSD 3.x, 4.2 Solaris 5.6, 5.7, 5.8(包含 x86) Linux(Redhat 和 Slack 等主流产品) Windows NT/2000 等 网关提供的 API 软件包至少要求支持以下编程语言: C/C+ JAVA 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 20 页 A.2 API 数据结构说明(以数据结构说明(以 C 语言为例)语言为例) A.2.1 接收短信的返回数据结构(接收短信的返回数据结构(DeliverResp) 用途 保存 SMGPDeliver 函数返回的短信内容。 字段说明 字段名字段名数据数据类类型型说说明明 sMsgIDChar(11)短消息标识 nMsgFormatInt短消息格式(参照短消息格式代码表)。网关 不做判定, 透明传输。 sSrcTermIDChar(22)短消息发送用户号码 nIsReportInt是否为应答信息。代码含义:非应答信息(0); 应答信息(1) nMsgLenInt消息长度 sMsgContentChar(201)消息内容 sDestTermIDchar(21)CP 的接入代码 sRecvTimechar(15)短消息接收时间(格式:yyyymmddhhmiss,例 如 20010301200000) A.2.2 获取群发短信的返回数据结构(获取群发短信的返回数据结构(SendBatchResp) 用途 使用 SMGPSendBatch 群发短信后,每条短信的“消息标识”和“错误代 码”保存在文件里。SMGP API 提供 GetSendBatchResp 函数获取每一条短信返 回信息,保存在 SendBatchResp 中。 字段说明 字段名字段名数据数据类类型型说说明明 sMsgIDChar(11)短消息标识 nErrorCodeInt错误代码(参照错误代码表) 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 21 页 sPhoneNoChar(22)发送号码 A.2.3 查询短消息网关的返回数据结构(查询短消息网关的返回数据结构(QueryResp 可选)可选) 用途 保存 SMGPQuery 函数返回的查询结果。 字段说明 字段名字段名数据数据类类型型说说明明 nMT_TLMsgInt接收短消息总数 nMT_TLusrInt接收用户总数 nMT_ScsInt成功转发数量 nMT_WTInt待转发数量 nMT_FLInt转发失败数量 nMO_ScsInt成功送达数量 nMO_WTInt待送达数量 nMO_FLInt送达失败数量 A.3 API 函数说明函数说明 A.3.1 初始化初始化 API(InitSMGPAPI) 作用 初始化 SMGP API,应用程序只需要调用一次此函数。 参数 参数名参数名数据类型数据类型说明说明 SiniFileChar(100)SMGPAPI 配置文件名,缺省值是:”. ./config/smgpc.ini”。 如果应用程序的执行目录不在 smgpapi/bin 下,就 需要通过绝对或相对路径指定 sINIFile。 例如: InitSMGPAPI(“/opt/smgpapi/config/smgpc.ini”) 返回 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 22 页 0=成功 1=失败 A.3.2 发送单条短信(发送单条短信(SMGPSendSingle) 作用 向短消息网关发送 1 条短消息到 1 个终端用户。短消息长度最长为 200, SMGP API 在发送时自动建立 Connection Pool,采用长连接或者短连接发送短 消息。当 Cache 的 connection 中断时,API 能够自动重新连接短消息网关。如 果应用程序采用多线程发送短消息,多个线程共享同一个 Connection Pool。在 发送过程中,如果因为通信原因导致发送失败,API 能够自动重新发送,重试 的次数在配置文件设置。 参数 参数名参数名数据数据类类型型说说明明 nNeedReportInt是否要求返回状态报告(0=不要求,1=要求) nMsgLevelInt信息级别(09,0=最低优先级) sServiceIDChar(11)业务类型 nMsgFormatInt短消息格式(参照短消息格式表)。网关不做判定, 透 明传输。 sFeeTypeChar(3)资费类别 sFeeCodeChar(7) 资费代码(以分为单位) sValidTimeChar(18)存活有效期,格式遵循 SMPP3.3 协议 sAtTimeChar(18)定时发送时间,格式遵循 SMPP3.3 协议 sChargeTermI D Char(22)计费号码 sDestTermIDChar(22)短消息接收号码 nMsgLenInt短消息长度 sMsgContentChar(*)?短消息内容(nMsgLen=0 时表示存放短消息的文件 名) sMsgIDChar(11)返回的短消息标识 nErrorCodeInt 错误代码(参照错误代码表)。 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 23 页 返回 0=成功 1=失败 A.3.3 群发短信(群发短信(SMGPSendBatch) 作用 向短消息网关发送 1 条短消息到多个手机用户。短消息长度最长为 200, 此函数使用文件传递短消息内容。SMGP API 在发送时自动建立 Connection Pool,采用长连接或者短连接发送短消息。当 Cache 的 connection 中断时,API 能够自动重新连接短消息网关。如果应用程序采用多线程发送短消息,多个线 程共享同一个 Connection Pool。在发送过程中,如果因为通信原因导致发送失 败,API 能够自动重新发送,重试的次数在配置文件设置。 参数 参数名参数名数据数据类类型型说说明明 nNeedReportint是否要求返回状态报告(0=不要求,1=要求) nMsgLevelint信息级别。(0=最低优先级,1=正常,2=紧急,3= 十分紧急) sServiceIDChar(11)业务类型 nMsgFormatInt短消息格式(参照短消息格式表)。网关不做判定, 透明传输。 sFeeTypeChar(3)资费类别 sFeeCodeChar(7) 资费代码(以分为单位) sValidTimeChar(18)存活有效期,格式遵循 SMPP3.3 协议 sAtTimeChar(18)定时发送时间,格式遵循 SMPP3.3 协议 sSrcTermIDChar(22)短消息发送用户号码(当为 CP 代码时须在前面 加 118) sChargeTermIDChar(22)计费号码(若为空,则对被叫计费) sDestTermIDFileChar(100)保存所有目的号码的文件名 nMsgLenInt消息长度 sMsgContentChar(*)短消息内容(nMsgLen=0 时表示存放短消息的文 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 24 页 件名) sMsgIDFileChar(100)保存所有短消息的返回 MsgID 和 ErrorCode 的文 件名 sSubTypeChar(2)短消息子类型 返回 0=成功 1=失败 A.3.4 获取群发短信的结果(获取群发短信的结果(GetSendBatchResp) 作用 从文件里读取群发的某一个短信的标识、发送结果和发送号码。 参数 参数名参数名数据数据类类型型说说明明 sMsgIDFileChar(100)保存所有短消息的返回 MsgID 和 ErrorCode 的文件 名 nPosInt短消息位置,从 0 开始 pSendBatchRe sp SendBatch Resp * 用于保存结果的 SendBatchResp 结构指针 返回 0=成功 1=失败 A.3.5 接收短信(接收短信(SMGPDeliver) 作用 连接短信网关,等待接收属于本 ICP 的短信。 参数 参数名参数名数据数据类类型型说说明明 nTimeoutint等待时间,单位:秒。0 表示永远等待。 pDeliverRespDeliverRe保存短消息的 DeliverResp 结构指针 基于固定电话网的信息终端及综合信息系统技术规范 第七分册 第 25 页 sp * 返回 0=成功 1=失败 A.3.6 检查短信网关是否能够提供服务(检查短信网关是否能够提供服务(CMMPActiveTest) 作用 检查短信网关是否能够提供服务。 参数 参数名参数名数据数据类类型型说说明明 nErrorCodeInt 错误代码(参照错误代码表)。 返回 0=成功 1=失败 A 3.7 查询短消息流量(查询短消息流量(SMGPQuery 可选)可选) 作用 向短消息网关查询某天的短消息流量。 参数 参数名参数名数据数据类类型型说说明明 sDateChar(10)查询日期,格式:yyyymmdd nQueryTypeInt查询类型,0=总数查询

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论