中国电信SMGP协议

短消息网关协议SN RC1 SMGP V3.0.2

参数名 nNeedReport nMsgLevel sServiceID nMsgFormat sFeeType sFeeCode sFixedfee sValidTime sAtTime sSrcTermID sChargeTermID 数据类型 说明 Int Int Char(11) Int Char(3) Char(7) Char(7) Char(18) Char(18) Char(22) Char(22) 是否要求返回状态报告(0=不要求,1=要求) 优先级别,(0-9,0表示最低优先级) 业务代码 短消息格式(参照短消息格式表)。网关不做判定, 透明传输。 资费类别 资费代码(以分为单位) 包月费/封顶费(以分为单位) 存活有效期,格式遵循SMPP3.3协议 定时发送时间,格式遵循SMPP3.3协议 短消息发送用户号码(当为SP代码时须在前面加118) 计费号码(若为空,则对被叫计费) sDestTermIDFile Char(100) 保存所有目的号码的文件名 nMsgLen sMsgContent sMsgIDFile sMsgType Int Char(*) 消息长度 短消息内容(nMsgLen=0时表示存放短消息的文件名) Char(100) 保存所有短消息的返回MsgID和ErrorCode的文件名 Char(2) Char(9) 短消息类型 保留 sReserved

? 返回

0=成功 1=失败

A.3.4获取群发短消息的结果(GetSendBatchResp)

? 作用

从文件里读取群发的某一个短消息的标识、发送结果和发送号码。 ? 参数 参数名 sMsgIDFile nPos 数据类型 说明 Char(100) 保存所有短消息的返回MsgID和ErrorCode的文件名 Int 短消息位置,从0开始 - 55 -

短消息网关协议SN RC1 SMGP V3.0.2

pSendBatchResp ? 返回

SendBatchResp * 用于保存结果的SendBatchResp结构指针 0=成功 1=失败

A.3.5接收短消息(SMGPDeliver)

? 作用

连接短消息网关,等待接收属于本SP的短消息。 ? 参数 参数名 nTimeout pDeliverResp 数据类型 说明 Int* DeliverResp * 等待时间,单位:秒。0表示永远等待。 保存短消息的DeliverResp结构指针 ? 返回

0=成功 1=失败

A.3.6检查短消息网关是否能够提供服务(CMMPActiveTest)

? 作用

检查短消息网关是否能够提供服务。 ? 参数 参数名 nErrorCode ? 返回

数据类型 说明 Int 错误代码(参照错误代码表)。 0=成功 1=失败

- 56 -

短消息网关协议SN RC1 SMGP V3.0.2

A 3.7查询短消息流量(SMGPQuery可选)

? 作用

向短消息网关查询某天的短消息流量。 ? 参数 参数名 sDate nQueryType sServiceID pQueryResp ? 返回

数据类型 Char(10) Int Char(11) QueryResp * 说明 查询日期,格式:yyyymmdd 查询类型,0=总数查询;1=按业务代码查询 查询码1(业务类型) 保存查询结果的QueryResp结构指针 0=成功 1=失败

A.4配置SMGP API

配置文件在smgpapi/config/smgpc.ini,以下是配置项的说明: 名称 SPId SPShareKey WithPrevPage 说明 SP编号,必须与License的一致。 SP的密码,如果填写不正确会导致应用程序不能通过SMGP用户认证。 第1个以后的分割短消息的前置说明文字,可以为空。 例如(第2个分割短消息):(2/3)(continue)xxxxxx “(continue)”是前置说明文字 WithNextPage 分割短消息的后置说明文字,可以为空,最后一个短消息不带后置说明文字。 例如(第1个分割短消息):(1/3)xxxxxx(to be continued) “(to be continued)”是前置说明文字

- 57 -

短消息网关协议SN RC1 SMGP V3.0.2

PageSpaceAscii PageSpaceGB PageSpaceBinary WithPageIndex MaxPage ClientIP AscII短消息的最大长度 中文短消息的最大长度 二进制短消息的最大长度 在分割短消息时是否附加页号,0=否,1=是。 最大分割页数,最大是99页。 客户主机的IP地址,必须填写接入Internet的公网地址。如果主机是通过Gateway接入Internet,就填写Gateway地址。如果客户主机的IP地址填写错误会导致应用程序不能通过SMGP用户认证。 短消息网关的IP地址 短消息网关的端口 发送短消息自动重试次数(1表示只发送1次,不重新发送) 发送请求超时时间,单位:秒 ServerIP ServerPort SubmitRetry RequestTimeout

A.5短消息的自动分割功能

SMGPSendSingle和SMGPSendBatch提供自动分割短消息的功能,分割的效果由smgpc.ini的配置控制。

当参数nMsgFormat等于0或15时,API就提供分割短消息功能。API扫描短消息的内容,把短消息分段,根据每一段的短消息内容设置nMsgFormat。如果某一段短消息含有中文,就把那一段短消息的发送格式设为15,取PageSpaceGB为最大长度;如果不含中文,就把那一段短消息的发送格式设为0,取PageSpaceAscii为最大长度。这样,可以充分利用短消息的最大发送长度,减少分割数量。如果WithPrevPage或者PageSpaceGB含有汉字,所有分割短消息的发送格式都设为15。

当参数nMsgFormat等于4时,API根据PageSpaceBinary配置分割短消息。

当参数nMsgFormat等于0并且长度小于PageSpaceGB,API扫描短消息内容是否含有中文。如果发现中文,就自动把发送格式变为15。

- 58 -

联系客服:779662525#qq.com(#替换为@)