主页
软件技术
返回
手机短信SMS接口开发文档

第一章  移动信息管理系统介绍

1.1.简介

“移动信息管理系统”(以下简称短信平台)是自主研发的SMS综合管理系统,用于实现企业终端客户面向特定会员用户进行快捷高效短信发送及查询管理。本文档为企业终端客户使用API接口,与本系统进行对接而完成。

作为专注于无线增值服务的SP商,我们坚决抵制垃圾短信并严禁将短信资源转租或转售给任何第三方,友情提醒通过我们接口发送的信息仅限发给您的最终授权会员用户。我们承诺永不发展代理商,只为最优质企业全心提供最具价值的资源与服务!为了确保您的稳定高效使用并维护信息发送的良好秩序,请您与我们一起努力,感谢您的理解与配合。

1.2.缩略语清单

客户端:本文中特指短信平台企业终端客户端。

服务端:本文中特指短信平台企业网关服务端。

1.3.修订时间

2012-11-30       完成基本内容。           

第二章  API接口说明

2.1.(HTTP方式)接口

1、普通短信

提交地址:http://192.168.0.188:8800/sendSms.do

send接口提交方式:GET/POST

功能:发送短信

短信签名(重要):如果用户发送的内容最后一个字符为 “】”,默认为用户已经增加了签名,否则自动追加用户在平台中设置的签名到发送的内容最后。

格式:“【签名】”,系统自动追加的签名中,会自动增加“【】”,内容为用户设置的内容。

输入参数

描述

提交url(30分钟不可重复提交)

http://192.168.0.188:8800/sendXSms.do

提交url(可重复提交)

http://192.168.0.188:8800/sendSms.do

国际通道地址(加区号只支持12位的手机号)

http://192.168.0.188:8800/sendGSms.do

username

用户名(必填)

password

密码(必填MD5加密,小写)

mobile

手机号,多个手机号为用半角 , 分开,如13899999999,13688888888(最多2000个,必填)

content

发送内容(必填)

dstime

定时时间,为空时表示立即发送(选填)

格式:20130202120212

productid

产品id(必填)

xh

扩展的小号,必须为数字,没有请留空

seed

绝密(默认为空或不带此参数,如有值:YYYYMMDD HHMISS,例如:20130806102030)

样例:

http://192.168.0.188:8800/sendXSms.do?username=haha&password=888888&mobile=13900000000&content=test&dstime=&productid=61341&xh=

其中:content参数,采用下列方式处理:

//   String content = "汉字";

//   content = URLEncoder.encode(content, "UTF-8");

返回参数

描述

-1

用户名或者密码不正确或用户禁用

1,xxxxxxxx

1代表发送短信成功,xxxxxxxx代表消息编号

0,xxxxxxxx

0发送短信失败,xxxxxxxx代表消息编号

2

余额不够或扣费错误

3

扣费失败异常(请联系客服)

5,xxxxxxxx

短信定时成功, xxxxxxxx代表消息编号

6

有效号码为空

7

短信内容为空

8

无签名,必须,格式:【签名】

9

没有Url提交权限

10

发送号码过多,最多支持2000个号码

11

产品ID异常或产品禁用

12

参数异常

13

30分种重复提交

14

用户名或密码不正确,产品余额为0,禁止提交,联系客服

15

Ip验证失败

19

短信内容过长,最多支持500个

20

定时时间不正确:格式:20130202120212(14位数字)

2、变量短信

一般变量提交地址:http://192.168.0.188:8800/sendManySms.do

变量短信打包提交地址:http://192.168.0.188:8800/sendManySmsPack.do(如果一个连接里所有的内容都一样,则会自动进行打包,打包后相当于群发)

send接口提交方式:POST(get不支持大数据)

功能:发送短信

短信签名(重要):如果用户发送的内容最后一个字符为 “】”,默认为用户已经增加了签名,否则自动追加用户在平台中设置的签名到发送的内容最后。

格式:“【签名】”,系统自动追加的签名中,会自动增加“【】”,内容为用户设置的内容。变量短信只支持单条多任务发送,不支持群发多任务发送

输入参数

描述

username

用户名(必填)

password

密码(必填MD5加密,小写)

content

发送内容多个内容用分开,如短信1【签名】※短信2【签名】(必填)

mobile

手机号,多个手机号为用半角 , 分开,如13899999999,13688888888(最多200个,必填)

productid

产品id(必填)

dstime

定时时间,为空时表示立即发送(选填)

格式:20130202120212

xh

扩展的小号,必须为数字,没有请留空

样例:

http://192.168.0.188:8800/sendManySms.do?username=haha&password=888888&mobile=13900000000,13900000000&content=短信1【签名】※短信2【签名】&dstime=&productid=61341&xh=

手机号与内容的条数必须相同,否则会发送失败。

其中:content参数,采用下列方式处理:

//   String content = "汉字";

//   content = URLEncoder.encode(content, "UTF-8");

返回参数

描述

-1

用户名或者密码不正确

1,xxxxxxxx

1代表发送短信成功,xxxxxxxx代表消息编号

0,xxxxxxxx

0发送短信失败,xxxxxxxx代表消息编号

2

余额不够

3

扣费失败(请联系客服)

5,xxxxxxxx

短信定时成功, xxxxxxxx代表消息编号

6

有效号码为空

7

短信内容为空

8

无签名,必须,格式:【签名】

9

没有Url提交权限

10

发送号码过多,最多支持200个号码

11

产品ID异常

12

参数异常

13

30分种重复提交

15

Ip验证失败

19

短信内容过长,最多支持500个

20

定时时间不正确:格式:20130202120212(14位数字)

3、余额查询

提交地址:http://192.168.0.188:8800/balance.do

余额接口提交方式:GET

功能:查询短信剩余数量

输入参数

描述

username

用户名

password

密码

样例:

http://192.168.0.188:8800/balance.do?username=userccc&password=XXXX&productid=677678

 

返回参数

描述

200

200代表短信的数量

-1

用户名或者密码不正确

-2

没有url提交权限

-3

 用户不存在或用户停用

4、状态报告

状态报告接口提交方式:GET

功能:ZT平台会实时把发送的消息报告推送到用户配置的下行地址中。用户获取网关发送的数据,接收成功返回0,接收不到数据返回非0

推送后用户方没有返回值,ZT平台默认推送三次后,不再推送

方式1:单条推送方式

   此方式需要用户在ZT平台填写下行地址

 

例如:

我平台每次返回1组内容,客户被动接收状态报告并解析之

推送URL格式:

msgid=xxxxx&mobile=xxxxxx&status=xxxxxxx

返回参数

消息报告参数描述

msgid

推送的消息id

mobile

推送的手机

status

返回的状态。1代表成功,非1代表失败

0

返回值。用户接收成功需要向ZT平台返回0

方式2:批量推送方式客服设置)间隔5秒/次

   此方式需要用户在ZT平台填写下行地址

 

我平台每次返回50(最大)组内容,客户被动接收状态报告并解析之

推送URL格式:例如:

Param参数规则如下:消息ID,手机号码,状态,时间; 消息ID,手机号码,状态,时间

说明:每一组中由消息ID,手机号码,状态,时间组成,并由英文,分开,每一组之间又由英文;分开

返回参数

消息报告参数描述

param

包括推送的消息id

包括推送的手机

包括返回的状态。1代表成功,非1代表失败

包括状态时间,格式为:yyyyMMddHHmmss

0

返回值。用户接收成功需要向ZT平台返回0

  • 方式3:主动提取状态报告   (客服设置

    我平台每次返回50(最大)组内容,客户被动接收状态报告并解析之,时间间隔最好定为1分钟左右,输入参数包括用户名和密码

    提取URL地址:例如:http://192.168.0.188:8800/batchreportget.do? username=xxx& password=xxxx

    说明:每一组中由消息ID,手机号码,状态,时间组成,并由英文,分开,每一组之间又由英文;分开

返回参数

消息报告参数描述

非空字符串

包括推送的消息id

包括推送的手机

包括返回的状态。1代表成功,非1代表失败

包括状态时间,格式为:yyyy-MM-dd   HH:mm:ss

-3

异常情况

-2

没有可取数据

-1

用户名或密码错误

5、回复内容接口

回复接口提交方式:GET

功能:获取上行内容,ZT平台会自动实时的推送用户手机回复的内容到上行地址中。推送后用户方没有返回值,ZT平台默认推送三次后,不再推送

方式1:推送方式

   此方式需要在ZT短信平台中填写上行地址

 

例如:

推送URL格式:

mobile=xxxx&content=xxxxx&msgid=xxxxx&xh=xxxxx;

返回参数

回复内容参数描述

msgid

回复的消息id

mobile

回复的手机号码

content

手机回复的内容

xh

推送的用户小号

0

返回值。用户接收成功需要向ZT平台返回0

一次推送一个号码,mobile指手机号,content指回复的内容,msgid指上行对应的msgid,xh代表扩展号码。

用户接收回复内容成功,需要返回  ZT平台0。

回复内容接口推送的内容样例:13012345678,内容,12121209876512,1023;

方式2:主动提取

   时间间隔最好定为1分钟左右,此方式需要在ZT短信平台中填写上行地址,地址一定要标记为:initiative-grab-reply

 

输入参数包括用户名和密码,提取地址:http://192.168.0.188:8800/ batchreplyget.do? username=xxx& password=xxxx

说明:返回格式为:手机号,内容,消息ID,小号,他们之间以[r]分开,分组之间以[p]分开,最大返回50组内容。,只能取一次

返回参数

回复内容参数描述

非空内容

格式说明:手机号[r]内容[r]消息ID[r]小号[p] 手机号[r]内容[r]消息ID[r]小号

-3

异常情况

-2

没有可取数据

-1

用户名或密码错误

 

、发送量数据报表提取

查询地址:提交地址:http://192.168.0.188:8800/submitStatistics.do

功能说明:

    主要是查询用户发送的短信条数数据,根据时间查询(报表系统已经生成,所以不会变化,数据非当天的),查询数据包含用户自己及下面的子用户或终端

输入参数:

输入参数

描述

username

用户名

password

密码

dstime

查询日期(格式:20120202)

输出参数:

返回参数

描述

Xxx,数量

示例:用户名1,条数;用户名2,条数

数据之间先以,隔开,不同用户之间以;分开

-1

用户名或者密码不正确

-2

无查询数据

-3

查询异常

 

2.2. (webservice方式)接口

提交地址:192.168.0.188:8800/ztws/SendsmsWebService?wsdl      

1、普通短信

调用方法: sendSms(String username,String password,String oldMobile,String content,String product_number,String dstime,String xh,String repeat)

输入参数

描述

username

用户名(必填)

password

密码(必填MD5加密,小写)

oldMobile

手机号,多个手机号为用半角 , 分开,如13899999999,13688888888(最多2000个,必填)

content

发送内容(必填)

product_number

产品ID

dstime

定时时间,为空时表示立即发送(选填)

格式:20130202120212

xh

扩展的小号,必须为数字,没有请留空

repeat

发送不可重复的短信, 1时可以重复,0不能重复

返回结果:

返回参数

描述

-1

用户名或者密码不正确

1,xxxxxxxx

1代表发送短信成功,xxxxxxxx代表消息编号

0,xxxxxxxx

0发送短信失败,xxxxxxxx代表消息编号

2

余额不够

3

扣费失败(请联系客服)

5,xxxxxxxx

短信定时成功, xxxxxxxx代表消息编号

6

有效号码为空

7

短信内容为空

8

无签名,必须,格式:【签名】

9

没有Url提交权限

10

发送号码过多,最多支持2000个号码

11

产品ID异常

12

参数异常

13

30分种重复提交

15

Ip验证失败

19

短信内容过长,最多支持500个

20

定时时间不正确:格式:20130202120212(14位数字)

 

2、变量短信

调用方法:sendChangeSms(String username,String password,String content,String mobile,String product_number,String dstime,String xh)

           

输入参数

描述

username

用户名(必填)

password

密码(必填MD5加密,小写)

content

发送内容多个内容用分开,如短信1【签名】※短信2【签名】(必填)

mobile

手机号,多个手机号为用半角 , 分开,如13899999999,13688888888(最多200个,必填)

product_number

产品id(必填)

dstime

定时时间,为空时表示立即发送(选填)

格式:20130202120212

xh

扩展的小号,必须为数字,没有请留空

           

返回结果:

返回参数

描述

-1

用户名或者密码不正确

1,xxxxxxxx

1代表发送短信成功,xxxxxxxx代表消息编号

0,xxxxxxxx

0发送短信失败,xxxxxxxx代表消息编号

2

余额不够

3

扣费失败(请联系客服)

5,xxxxxxxx

短信定时成功, xxxxxxxx代表消息编号

6

有效号码为空

7

短信内容为空

8

无签名,必须,格式:【签名】

9

没有Url提交权限

10

发送号码过多,最多支持200个号码

11

产品ID异常

12

参数异常

13

30分种重复提交

15

Ip验证失败

19

短信内容过长,最多支持500个

20

定时时间不正确:格式:20130202120212(14位数字)

3、余额查询

调用方法:getBalanceApi(String username, String password,String product_number)

功能:查询短信剩余数量

输入参数

描述

username

用户名

password

密码

product_number

产品ID

查询结果

返回参数

描述

200

200代表短信的数量

-1

用户名或者密码不正确

-2

没有url提交权限

-3

 用户不存在或用户停用

4、状态报告

调用方法:getBatchReport(String username, String password)

功能:批量提取状态报告

输入参数

描述

username

用户名

password

密码

 

我平台每次返回50(最大)组内容,客户被动接收状态报告并解析之,时间间隔最好定为1分钟左右,输入参数包括用户名和密码

说明:每一组中由消息ID,手机号码,状态,时间组成,并由英文,分开,每一组之间又由英文;分开

返回参数

消息报告参数描述

非空字符串

包括推送的消息id

包括推送的手机

包括返回的状态。1代表成功,非1代表失败

包括状态时间,格式为:yyyyMMddHHmmss

-3

异常情况

-2

没有可取数据

-1

用户名或密码错误

5、回复内容接口

调用方法:getReplyData(String username, String password)

功能:批量提取状态报告

输入参数

描述

username

用户名

password

密码

时间间隔最好定为1分钟左右,此方式需要在ZT短信平台中填写上行地址,地址一定要标记为:initiative-grab-reply

返回参数

回复内容参数描述

非空内容

格式说明:手机号[r]内容[r]消息ID[r]小号[p] 手机号[r]内容[r]消息ID[r]小号

-3

异常情况

-2

没有可取数据

-1

用户名或密码错误

 

、发送量数据报表提取

调用方法:getSubmitStatistics(String username,String password,String dstime)

功能说明:

    主要是查询用户发送的短信条数数据,根据时间查询(报表系统已经生成,所以不会变化,数据非当天的),查询数据包含用户自己及下面的子用户或终端

输入参数:

输入参数

描述

username

用户名

password

密码

dstime

查询日期(格式:20120202)

输出参数:

返回参数

描述

Xxx,数量

示例:用户名1,条数;用户名2,条数

数据之间先以,隔开,不同用户之间以;分开

-1

用户名或者密码不正确

-2

无查询数据

-3

查询异常

 

 

2.3.(socket方式)接口

1、普通短信

 

提交地址:192.168.0.188:8800       端口号:2030

输入参数

描述

username

用户名(必填)

password

密码(必填MD5加密,小写)

mobile

手机号,多个手机号为用半角 , 分开,如13899999999,13688888888(最多2000个,必填)

content

发送内容(必填)

dstime

定时时间,为空时表示立即发送(选填)

格式:20130202120212

productid

产品id(必填)

xh

扩展的小号(选填),必须为数字,没有请留空

process_type

0,普通发送,1变量发送,2查询余额信息,3取回复信息,4取状态报告信息(必填)

 

返回参数

描述

-1

用户名或者密码不正确

1,xxxxxxxx

1代表发送短信成功,xxxxxxxx代表消息编号

0,xxxxxxxx

0发送短信失败,xxxxxxxx代表消息编号

2

余额不够

3

扣费失败(请联系客服)

5,xxxxxxxx

短信定时成功, xxxxxxxx代表消息编号

6

有效号码为空

7

短信内容为空

8

无签名,必须,格式:【签名】

9

没有Url提交权限

10

发送号码过多,最多支持2000个号码

11

产品ID异常

12

参数异常

13

30分种重复提交

15

Ip验证失败

19

短信内容过长,最多支持500个

20

定时时间不正确:格式:20130202120212(14位数字)

 

2、变量短信

输入参数

描述

username

用户名(必填)

password

密码(必填MD5加密,小写)

content

发送内容多个内容用分开,如短信1【签名】※短信2【签名】(必填)

mobile

手机号,多个手机号为用半角 , 分开,如13899999999,13688888888(最多200个,必填)

productid

产品id(必填)

dstime

定时时间,为空时表示立即发送(选填)

格式:20130202120212

xh

扩展的小号,必须为数字,没有请留空

process_type

0,普通发送,1变量发送,2查询余额信息,3取回复信息,4取状态报告信息(必填)

 

返回参数

描述

-1

用户名或者密码不正确

1,xxxxxxxx

1代表发送短信成功,xxxxxxxx代表消息编号

0,xxxxxxxx

0发送短信失败,xxxxxxxx代表消息编号

2

余额不够

3

扣费失败(请联系客服)

5,xxxxxxxx

短信定时成功, xxxxxxxx代表消息编号

6

有效号码为空

7

短信内容为空

8

无签名,必须,格式:【签名】

9

没有Url提交权限

10

发送号码过多,最多支持200个号码

11

产品ID异常

12

参数异常

13

30分种重复提交

15

Ip验证失败

19

短信内容过长,最多支持500个

20

定时时间不正确:格式:20130202120212(14位数字)

 

3、余额查询

功能:查询短信剩余数量

输入参数

描述

username

用户名

password

密码

productid

产品ID

process_type

0,普通发送,1变量发送,2查询余额信息,3取回复信息,4取状态报告信息(必填)

查询结果

返回参数

描述

200

200代表短信的数量

-1

用户名或者密码不正确

-2

没有url提交权限

-3

 用户不存在或用户停用

 

4、状态报告

功能:批量提取状态报告

输入参数

描述

username

用户名

password

密码

process_type

0,普通发送,1变量发送,2查询余额信息,3取回复信息,4取状态报告信息(必填)

查询结果:

我平台每次返回50(最大)组内容,客户被动接收状态报告并解析之,时间间隔最好定为1分钟左右,输入参数包括用户名和密码

说明:每一组中由消息ID,手机号码,状态,时间组成,并由英文,分开,每一组之间又由英文;分开

返回参数

消息报告参数描述

非空字符串

包括推送的消息id

包括推送的手机

包括返回的状态。1代表成功,非1代表失败

包括状态时间,格式为:yyyyMMddHHmmss

-3

异常情况

-2

没有可取数据

-1

用户名或密码错误

5、回复内容接口

功能:批量提取回复信息

输入参数

描述

username

用户名

password

密码

process_type

0,普通发送,1变量发送,2查询余额信息,3取回复信息,4取状态报告信息(必填)

 

时间间隔最好定为1分钟左右,此方式需要在ZT短信平台中填写上行地址,地址一定要标记为:initiative-grab-reply

返回参数

回复内容参数描述

非空内容

格式说明:手机号[r]内容[r]消息ID[r]小号[p] 手机号[r]内容[r]消息ID[r]小号

-3

异常情况

-2

没有可取数据

-1

用户名或密码错误

 

、发送量数据报表提取

提交地址:192.168.0.188:8800       端口号:2030

功能说明:

    主要是查询用户发送的短信条数数据,根据时间查询(报表系统已经生成,所以不会变化,数据非当天的),查询数据包含用户自己及下面的子用户或终端

输入参数:

输入参数

描述

username

用户名

password

密码

dstime

查询日期(格式:20120202)

process_type

必填,此处填5


输出参数:

返回参数

描述

Xxx,数量

示例:用户名1,条数;用户名2,条数

数据之间先以,隔开,不同用户之间以;分开

-1

用户名或者密码不正确

-2

无查询数据

-3

查询异常

注:详细客户端DEMO请联系客服索取。

第三章  环境要求

3.1.网络拓扑图

 213424234.png

3.2.环境要求

本节将详细说明正确发送/接收短信的前提条件:

确保企业服务器端可以通过http上网

确保企业服务器端有固定IP, 如需要,可对企业方的IP进行鉴权 


[湖北]隧道施工组织设计
内蒙古2015年安全工程师考试报名时间确定:5月4日-12日
楼市观望不减高库存风险隐忧加剧
2007年安全工程师法规知识模拟试题及答案
2015招标师《法律法规与政策》:招标投标的相关法律法规
2015年南通市安全工程师考试报名时间为5月11至25日
胶粉聚苯颗粒外墙外保温面砖饰面施工工艺介绍
2015年安全工程师生产管理知识模拟精选(7)
信息发布:名易软件http://www.myidp.net