2023年7月31日发(作者:)

   企业短信平台企业API接口说明                               2010-08-11

    版本 1.0

2.0

时间 2010-08-11

2010-08-11

更新内容 文档成立 文档成立 1.扩展发送接口函数,增加了如下功能:

a. 指定特服号发送(需要配置多个特服号,或配置的特服号支持扩展),否则默认用单一特服号发送;

b. 支持发送异网短信,即可以用企业绑定的电话号码发送异网短信;

c. 支持多号码发送,号码间用逗号分隔,号码类别(即各运营商号码,如:小灵通手机)可混合发送同一条信息;

d. 支持回执确认的操作.

e. 支持定时发送的操作;

f. 返回格式更新为XML的模式,以存放更丰富的返回信息,如:发送状态报告,错误详细信息,发送的任务ID(便于以后查询状态);

2.增加一个根据发送任务ID取发送状态的接口函数,便于查询此发送任务的短信发送结果;

更新人 顺炽国 顺炽国 顺炽国 顺炽国                           目 录     1 企业API接口 ............................................................. 4 接口 1.1 接口函数说明 ..................................................... 4 接口函数说明 1.1.1 发送消息函数SendMessage ......................................... 4 1.1.2 接收消息函数RecvMessage ......................................... 6 1.2 企业接口调用方式 ................................................. 8 企业接口调用方式 1.2.1 ASP中的Jscript和VbScript的调用 ................................ 8 的调用 1.2.2 C#中的调用 ....................................................... 8 中的调用 中的调用1.2.3 Javascript的调用 ................................................ 9 的调用 1.2.4 Java的调用方式 .................................................. 9 的调用方式                                1 企业API接口 企业API接口的实现使用了WebService的方式,企业用户通过调用的方式,企业用户通过调用WebService的指定接口函数以达到发送和接收短信的目的; 指定接口函数以达到发送和接收短信的目的; 企业接口的服务页面为WebService/,如果WEB服务器地址为:132.233.114.90那么访问WebService的地址就为: 的地址就为: 202.105.246.117:8090/WebService/ 要查看接口的定义的话则在连接地址下面增加“WSDL”,即: ,即: 202.105.246.117:8090/WebService/?WSDL  1.1

接口函数说明 企业接口中提供了三个函数,如下: 企业接口中提供了三个函数,如下: string SendMessage (string strLoginCode, stringstringstring strPass, string strSpNum,   string RecvMessage (string strLoginCode, stringstring strPass)    string strRecvNum, stringintstringstring strMsg, int bConfirm, string AtDate)  string GetStatus (string strLoginCode, stringstringstring strPass, string strSendID) SendMessage

 函数为发送消息的函数 函数为发送消息的函数 RecvMessage

 函数为接收企业用户消息的函数 函数为接收企业用户消息的函数 GetStatus

  函数为检测发送流水的消息函数 函数为检测发送流水的消息函数 1.1.1 发送消息函数SendMessage

函数定义如下: 函数定义如下: string SendMessage (string strLoginCode, stringstringstring strPass, string strSpNum,     string strRecvNum, stringintstringstring strMsg, int bConfirm, string AtDate) 函数参数有七个: 函数参数有七个: 参数名 strPass strSpNum strRecvNum 说明 strLoginCode 分配给企业用户的登录名 分配给企业用户的登录名 分配给企业用户的对应密码 分配给企业用户的对应密码 此处置空 此处置空 短信接收号码,可以为多个接收号码,号码间用分号”;”或逗号”,”分隔.可支持最大4096个字符的号码群,超过此长度的号码群将被截断,所以在群发的时候最好不要超过此长度.

对于接收的号码不作限制,可以是任何运营公司的号码,不过对于在系统黑名单中的用户,是默认不发送出去的,同时,对于各个运营商的号码会分拆成不同的任务发送出去,所以对于发送不同运营商号码的群发,系统会返回多个流水号. strMsg bConfirm AtDate 要发送的实际内容,长度不能超过255个字符,超过各运营商默认短信的默认长度,会被拆分成多条短信发送,根据配置情况会计一次费用或多次费用.

是否需要取到用户回执:0-不需要,1-需要;

定时发送时间,指定此短信任务的发送时间,须为标准的日期格式,即:YYYY-MM-DD HH:MM:SS,否则会出现错误,不能发送;

如果不需要定时发送,那么,将其置为空即可.

 对于返回的结果XML结构如下:

 

   

  在每个result节点中:status的值表示当前服务器返回的结果,message表示其描述信息,其含义如下:

status

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

 message

发送成功及成功的信息描述 发送成功及成功的信息描述 用户名密码不正确 用户名密码不正确 用户名不允许登录 用户名不允许登录 用户状态无效 用户状态无效 企业状态不可用 企业状态不可用 企业接口未开启 企业接口未开启 IP地址不允许登录 地址不允许登录 超过限制时间内的最大发送数量 超过限制时间内的最大发送数量 发送的接收号码为空或在黑名单限制中 发送的接收号码为空或在黑名单限制中 特服号不可用 特服号不可用 输入的特服号不正确 输入的特服号不正确 输入了没有扩展权限的特服号 输入了没有扩展权限的特服号 接收号码长度不正确 接收号码长度不正确 该企业没有发送回执的权限 该企业没有发送回执的权限 未配置企业收费代码,无法发送 未配置企业收费代码,无法发送 发送数据出现异常 发送数据出现异常 超过单次最大发送条数限制 超过单次最大发送条数限制 预留 预留 预留 预留 预留 预留 接收号码为空 接收号码为空 发送内容为空 发送内容为空 定时发送时间不正确 定时发送时间不正确 下面的serial_id 节点表示本次发送的任务流水号,count表示本次发送了多少个任务,对于此节点下面的id节点,每个节点都有两个属性:value和sp_name,value表示实际发送的任务ID,sp_name则表示此任务ID发送的号码是哪个运营商的,可选值为如下四个:电信、网通、移动、联通;即如果是群发任务的时候,每一个任务ID下可能会有多个号码,在查询发送结果的时候需要根据任务有多个号码,在查询发送结果的时候需要根据任务ID+号码的方式来查询,不同运营商的号码的方式来查询,不同运营商的号码用不同的任务ID+号码才能查询到对应的发送结果。  1.1.2 接收消息函数RecvMessage

函数定义如下: 函数定义如下: string RecvMessage(stringstringstring strLoginCode, string strPass)  函数的参数有两个: 函数的参数有两个: 参数名 strLoginCode strPass 说明 分配给企业用户的登录名 分配给企业用户的登录名 分配给企业用户的对应密码 分配给企业用户的对应密码  返回参数为一个XML文档,XML文档的格式如下: 文档的格式如下:               所有的企业消息都存放在msgtable节点中,此节点有三个属性,result、count和errmsg。 属性说明: result:

可以有两个值:0和1,如果为0表示执行成功,如果为1则表示执行失败 则表示执行失败 count:

 此属性表示本次提取所取出的消息总数 此属性表示本次提取所取出的消息总数 errmsg:

 在result为1的时候,此属性显示当前的错误信息 的时候,此属性显示当前的错误信息            在有消息的时候,返回情况如下: 在有消息的时候,返回情况如下:        444499    2010-08-06 16:41:25    0513********    企业API接口测试短信1       444499      2010-08-06 16:41:29      0513********      企业API接口测试短信2      在msgtable节点中,每一个row节点表示一条短信内容,它下面有四个子节点:

sp_num

      接收的特服号码 -

接收的特服号码 短信发送日期 -

短信发送日期 发送短信的用户号码 -

发送短信的用户号码 接收的短信内容 -

接收的短信内容 recv_date

 send_num

 recv_content

   row节点中的id属性是表明当前是第几条记录 属性是表明当前是第几条记录  1.1.3 发送任务状态查询GetStatus

函数定义如下: 函数定义如下: public string GetStatus(stringstringstringstring strLoginCode, string strPass, string strSendID) 函数的参数有两个: 函数的参数有两个: 参数名 strLoginCode strPass strSendID 说明 分配给企业用户的登录名 分配给企业用户的登录名 分配给企业用户的对应密码 分配给企业用户的对应密码 发送时返回的发送流水 发送时返回的发送流水   返回结果为一个XML列表对象 列表对象 

0512********

2010-08-06 15:54:32

0

发送完成

   result表示查询的结果:

 0  —— —— 查询成功 查询成功  1

—— —— 查询失败 查询失败 message表示失败时的错误信息 表示失败时的错误信息  row节点存放的是有多少条查询明细,即此任务发送了多少个号码的发送结果,节点存放的是有多少条查询明细,即此任务发送了多少个号码的发送结果,每一个节点即此任务发送了多少个号码的发送结果,每一个节点表示一个发送号码,每个节点下面都有如下的子节点:      recv_user_num smc_code  send_date  status   —— —— 发送的接收号码 发送的接收号码 —— —— 网关返回代码 网关返回代码 —— —— 短信发送时间 短信发送时间 —— —— 任务状态 任务状态 1.2

企业接口调用方式 企业接口函数的调用方式,此处列出各种语言及开发环境调用的示例,具体环境还需要作实际的修改。 需要作实际的修改。 1.2.1 ASP中的Jscript和VbScript的调用  在asp中使用WebService调用需下载,

引用:ient

var WSDL_URL = " 132.233.114.90/WebService/?WSDL"

var res

var soapclient

soapclient = Object("ient")

 Property("ServerHTTPRequest") = true

 //在ASP中运行 需要设置ServerHTTPRequest选项 init(WSDL_URL,"Interface","RecvMessage","")

//替换为相应要调用的函数  res = soapclient. RecvMessage (“usercode”, “userpass”)

 res即为服务器返回结果   VbScript的调用方式同JsScript的调用方式雷同,此处不在举例。 的调用方式雷同,此处不在举例。 1.2.2 C#中的调用 在C#中调用WebService很简单,在项目中添加一个WEB引用,打入服务器的地址: 址: 132.233.114.90/WebService/ 会列出此服务下面的所有方法,点击添加引用即可,在代码里面可以像本地类一样的使用WebService的服务,例如,你建立的WebService的引用为testSvc,那么调用的方式为: 方式为: ace obj = new ace;

xml = ssage(“xml = ssage(“usercode”usercode”,”userpass”userpass”);

xml即为返回的结果。 即为返回的结果。 1.2.3 Javascript的调用  用javascript调用的方式有两种,一是使用微软提供的脚本进行调用,另一种调用方式是需要下载创建一个客户端的对象进行调用; 通过客户端调用可以使用如下方法: 通过客户端调用可以使用如下方法: 在HTML代码中插入下面这段: 代码中插入下面这段: 

url()中的地址即为的站点相对路径; 的站点相对路径; 使用的时候可以使用 使用的时候可以使用 vice("../WebService/?WSDL","PubFun");

 iCallID = rvice(CheckState,"RecvMessage",strLoginCode,strPass);

 1.2.4 Java的调用方式  需要下载apache soap。下载地址:/soap/

导入: 导入: import ;

import e;

例子: Service

 service = new Service();

Call

 call

 = (Call) Call();

          getEndpointAddress( new (“WEBService地址”) ); PActionURI("qxtweb/RecvMessage");

rationName(new QName("qxtweb/webservices", "RecvMessage"));

    ameter("strLoginCode",_STRING,);

ameter("strPass",_STRING,);

urnType(_STRING);

     String strRtn = ( new Object[] {“user_code”,”user_pass”}).toString(); 

2023年7月31日发(作者:)

   企业短信平台企业API接口说明                               2010-08-11

    版本 1.0

2.0

时间 2010-08-11

2010-08-11

更新内容 文档成立 文档成立 1.扩展发送接口函数,增加了如下功能:

a. 指定特服号发送(需要配置多个特服号,或配置的特服号支持扩展),否则默认用单一特服号发送;

b. 支持发送异网短信,即可以用企业绑定的电话号码发送异网短信;

c. 支持多号码发送,号码间用逗号分隔,号码类别(即各运营商号码,如:小灵通手机)可混合发送同一条信息;

d. 支持回执确认的操作.

e. 支持定时发送的操作;

f. 返回格式更新为XML的模式,以存放更丰富的返回信息,如:发送状态报告,错误详细信息,发送的任务ID(便于以后查询状态);

2.增加一个根据发送任务ID取发送状态的接口函数,便于查询此发送任务的短信发送结果;

更新人 顺炽国 顺炽国 顺炽国 顺炽国                           目 录     1 企业API接口 ............................................................. 4 接口 1.1 接口函数说明 ..................................................... 4 接口函数说明 1.1.1 发送消息函数SendMessage ......................................... 4 1.1.2 接收消息函数RecvMessage ......................................... 6 1.2 企业接口调用方式 ................................................. 8 企业接口调用方式 1.2.1 ASP中的Jscript和VbScript的调用 ................................ 8 的调用 1.2.2 C#中的调用 ....................................................... 8 中的调用 中的调用1.2.3 Javascript的调用 ................................................ 9 的调用 1.2.4 Java的调用方式 .................................................. 9 的调用方式                                1 企业API接口 企业API接口的实现使用了WebService的方式,企业用户通过调用的方式,企业用户通过调用WebService的指定接口函数以达到发送和接收短信的目的; 指定接口函数以达到发送和接收短信的目的; 企业接口的服务页面为WebService/,如果WEB服务器地址为:132.233.114.90那么访问WebService的地址就为: 的地址就为: 202.105.246.117:8090/WebService/ 要查看接口的定义的话则在连接地址下面增加“WSDL”,即: ,即: 202.105.246.117:8090/WebService/?WSDL  1.1

接口函数说明 企业接口中提供了三个函数,如下: 企业接口中提供了三个函数,如下: string SendMessage (string strLoginCode, stringstringstring strPass, string strSpNum,   string RecvMessage (string strLoginCode, stringstring strPass)    string strRecvNum, stringintstringstring strMsg, int bConfirm, string AtDate)  string GetStatus (string strLoginCode, stringstringstring strPass, string strSendID) SendMessage

 函数为发送消息的函数 函数为发送消息的函数 RecvMessage

 函数为接收企业用户消息的函数 函数为接收企业用户消息的函数 GetStatus

  函数为检测发送流水的消息函数 函数为检测发送流水的消息函数 1.1.1 发送消息函数SendMessage

函数定义如下: 函数定义如下: string SendMessage (string strLoginCode, stringstringstring strPass, string strSpNum,     string strRecvNum, stringintstringstring strMsg, int bConfirm, string AtDate) 函数参数有七个: 函数参数有七个: 参数名 strPass strSpNum strRecvNum 说明 strLoginCode 分配给企业用户的登录名 分配给企业用户的登录名 分配给企业用户的对应密码 分配给企业用户的对应密码 此处置空 此处置空 短信接收号码,可以为多个接收号码,号码间用分号”;”或逗号”,”分隔.可支持最大4096个字符的号码群,超过此长度的号码群将被截断,所以在群发的时候最好不要超过此长度.

对于接收的号码不作限制,可以是任何运营公司的号码,不过对于在系统黑名单中的用户,是默认不发送出去的,同时,对于各个运营商的号码会分拆成不同的任务发送出去,所以对于发送不同运营商号码的群发,系统会返回多个流水号. strMsg bConfirm AtDate 要发送的实际内容,长度不能超过255个字符,超过各运营商默认短信的默认长度,会被拆分成多条短信发送,根据配置情况会计一次费用或多次费用.

是否需要取到用户回执:0-不需要,1-需要;

定时发送时间,指定此短信任务的发送时间,须为标准的日期格式,即:YYYY-MM-DD HH:MM:SS,否则会出现错误,不能发送;

如果不需要定时发送,那么,将其置为空即可.

 对于返回的结果XML结构如下:

 

   

  在每个result节点中:status的值表示当前服务器返回的结果,message表示其描述信息,其含义如下:

status

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

 message

发送成功及成功的信息描述 发送成功及成功的信息描述 用户名密码不正确 用户名密码不正确 用户名不允许登录 用户名不允许登录 用户状态无效 用户状态无效 企业状态不可用 企业状态不可用 企业接口未开启 企业接口未开启 IP地址不允许登录 地址不允许登录 超过限制时间内的最大发送数量 超过限制时间内的最大发送数量 发送的接收号码为空或在黑名单限制中 发送的接收号码为空或在黑名单限制中 特服号不可用 特服号不可用 输入的特服号不正确 输入的特服号不正确 输入了没有扩展权限的特服号 输入了没有扩展权限的特服号 接收号码长度不正确 接收号码长度不正确 该企业没有发送回执的权限 该企业没有发送回执的权限 未配置企业收费代码,无法发送 未配置企业收费代码,无法发送 发送数据出现异常 发送数据出现异常 超过单次最大发送条数限制 超过单次最大发送条数限制 预留 预留 预留 预留 预留 预留 接收号码为空 接收号码为空 发送内容为空 发送内容为空 定时发送时间不正确 定时发送时间不正确 下面的serial_id 节点表示本次发送的任务流水号,count表示本次发送了多少个任务,对于此节点下面的id节点,每个节点都有两个属性:value和sp_name,value表示实际发送的任务ID,sp_name则表示此任务ID发送的号码是哪个运营商的,可选值为如下四个:电信、网通、移动、联通;即如果是群发任务的时候,每一个任务ID下可能会有多个号码,在查询发送结果的时候需要根据任务有多个号码,在查询发送结果的时候需要根据任务ID+号码的方式来查询,不同运营商的号码的方式来查询,不同运营商的号码用不同的任务ID+号码才能查询到对应的发送结果。  1.1.2 接收消息函数RecvMessage

函数定义如下: 函数定义如下: string RecvMessage(stringstringstring strLoginCode, string strPass)  函数的参数有两个: 函数的参数有两个: 参数名 strLoginCode strPass 说明 分配给企业用户的登录名 分配给企业用户的登录名 分配给企业用户的对应密码 分配给企业用户的对应密码  返回参数为一个XML文档,XML文档的格式如下: 文档的格式如下:               所有的企业消息都存放在msgtable节点中,此节点有三个属性,result、count和errmsg。 属性说明: result:

可以有两个值:0和1,如果为0表示执行成功,如果为1则表示执行失败 则表示执行失败 count:

 此属性表示本次提取所取出的消息总数 此属性表示本次提取所取出的消息总数 errmsg:

 在result为1的时候,此属性显示当前的错误信息 的时候,此属性显示当前的错误信息            在有消息的时候,返回情况如下: 在有消息的时候,返回情况如下:        444499    2010-08-06 16:41:25    0513********    企业API接口测试短信1       444499      2010-08-06 16:41:29      0513********      企业API接口测试短信2      在msgtable节点中,每一个row节点表示一条短信内容,它下面有四个子节点:

sp_num

      接收的特服号码 -

接收的特服号码 短信发送日期 -

短信发送日期 发送短信的用户号码 -

发送短信的用户号码 接收的短信内容 -

接收的短信内容 recv_date

 send_num

 recv_content

   row节点中的id属性是表明当前是第几条记录 属性是表明当前是第几条记录  1.1.3 发送任务状态查询GetStatus

函数定义如下: 函数定义如下: public string GetStatus(stringstringstringstring strLoginCode, string strPass, string strSendID) 函数的参数有两个: 函数的参数有两个: 参数名 strLoginCode strPass strSendID 说明 分配给企业用户的登录名 分配给企业用户的登录名 分配给企业用户的对应密码 分配给企业用户的对应密码 发送时返回的发送流水 发送时返回的发送流水   返回结果为一个XML列表对象 列表对象 

0512********

2010-08-06 15:54:32

0

发送完成

   result表示查询的结果:

 0  —— —— 查询成功 查询成功  1

—— —— 查询失败 查询失败 message表示失败时的错误信息 表示失败时的错误信息  row节点存放的是有多少条查询明细,即此任务发送了多少个号码的发送结果,节点存放的是有多少条查询明细,即此任务发送了多少个号码的发送结果,每一个节点即此任务发送了多少个号码的发送结果,每一个节点表示一个发送号码,每个节点下面都有如下的子节点:      recv_user_num smc_code  send_date  status   —— —— 发送的接收号码 发送的接收号码 —— —— 网关返回代码 网关返回代码 —— —— 短信发送时间 短信发送时间 —— —— 任务状态 任务状态 1.2

企业接口调用方式 企业接口函数的调用方式,此处列出各种语言及开发环境调用的示例,具体环境还需要作实际的修改。 需要作实际的修改。 1.2.1 ASP中的Jscript和VbScript的调用  在asp中使用WebService调用需下载,

引用:ient

var WSDL_URL = " 132.233.114.90/WebService/?WSDL"

var res

var soapclient

soapclient = Object("ient")

 Property("ServerHTTPRequest") = true

 //在ASP中运行 需要设置ServerHTTPRequest选项 init(WSDL_URL,"Interface","RecvMessage","")

//替换为相应要调用的函数  res = soapclient. RecvMessage (“usercode”, “userpass”)

 res即为服务器返回结果   VbScript的调用方式同JsScript的调用方式雷同,此处不在举例。 的调用方式雷同,此处不在举例。 1.2.2 C#中的调用 在C#中调用WebService很简单,在项目中添加一个WEB引用,打入服务器的地址: 址: 132.233.114.90/WebService/ 会列出此服务下面的所有方法,点击添加引用即可,在代码里面可以像本地类一样的使用WebService的服务,例如,你建立的WebService的引用为testSvc,那么调用的方式为: 方式为: ace obj = new ace;

xml = ssage(“xml = ssage(“usercode”usercode”,”userpass”userpass”);

xml即为返回的结果。 即为返回的结果。 1.2.3 Javascript的调用  用javascript调用的方式有两种,一是使用微软提供的脚本进行调用,另一种调用方式是需要下载创建一个客户端的对象进行调用; 通过客户端调用可以使用如下方法: 通过客户端调用可以使用如下方法: 在HTML代码中插入下面这段: 代码中插入下面这段: 

url()中的地址即为的站点相对路径; 的站点相对路径; 使用的时候可以使用 使用的时候可以使用 vice("../WebService/?WSDL","PubFun");

 iCallID = rvice(CheckState,"RecvMessage",strLoginCode,strPass);

 1.2.4 Java的调用方式  需要下载apache soap。下载地址:/soap/

导入: 导入: import ;

import e;

例子: Service

 service = new Service();

Call

 call

 = (Call) Call();

          getEndpointAddress( new (“WEBService地址”) ); PActionURI("qxtweb/RecvMessage");

rationName(new QName("qxtweb/webservices", "RecvMessage"));

    ameter("strLoginCode",_STRING,);

ameter("strPass",_STRING,);

urnType(_STRING);

     String strRtn = ( new Object[] {“user_code”,”user_pass”}).toString();