短信WebService接口文档

来源:互联网 发布:数据通信与网络 pdf 编辑:程序博客网 时间:2024/06/11 08:57

最近的项目需要作为服务端,提供webService接口。

因为之前对webService 一无所知,所以查阅了很多材料。最后这个短信接口文档一来帮助对WebService 的学习更加加深了印象。二来接口文档的编写方式也是我所需要的,所以便当了回拿来主义。

在此例中,数据以XML的形式传输。


短信平台webService接口文档

一. 接口地址

http://hl.my2my.cn/services/esmsservice?wsdl 


二.接口说明

WebService的接口为以下部分:

1.短信发送接口

(1)sendSmsAsXml

·接口方法定义:

String sendSmsAsXml(StringsmsPack, String cpid, String cppwd);

·接口参数说明:

smsPack:Xml格式数据包(电话号,短信内容)

cpid:用户登录名

cppwd:用户密码

·返回值

0表示成功,否则返回错误原因。

smsPack格式如下

<?xml version="1.0"encoding="utf-8" ?>

<sms>

    <msg>

        <phone>13911111111,13811111111</phone>

           <content>xxxxxxxxxx</content>

           <spnumber>短信流水号</spnumber>

    </msg>

    <msg>

        ....

    </msg>

</sms>

(2)sendSmsAsNormal

· 接口方法定义:

             String sendSmsAsNormal(String phone,String msgcont,String spnumber,String chid,String cpid,String cppwd);

· 接口参数说明:

phone:所要发送信息的号码(多个号码请用“,”逗号为开)

         如:phone = “13800000000,13900000000”;

msgcont: 短信内容

spnumber:流水号,为Null就行,传空值就可。

chid:通道号

cpid:用户登录名

cppwd:用户密码

·返回值

      返回值为0则表示提交成功。

(3)getSmsStates

  (4) sendSms

  (5) getSmsStates

  (6) getMoList


三、接口提交注意事项:

       1.  接口提交数据一个包不能超过50个号码,50个号码提交一次,否则会提交失败。

       2.  短信息内容不能超过70个字符。(包括数字、字母、特殊字符和汉字均为一个字符)

四、Demo

Demo说明:

您可以直接创建一个Java项目,调用这个方法,传入相应参数即可。

       javaCall方法调用:

              invokeWebServiceCall(phone,smg, null, chid, cpid, cppwd);

 

       /**

        * Java 形式调用 Webservice

        *

        * phone:号码列表

        * smg:短信内容

        * spName:流水号,为null,不用传参数

        * chid:通道号

        * cpid:用户名

        * cppwd:密码

        * */

       publicstatic void invokeWebServiceCall(String phone, String smg,

                     StringspNumber, String chid, String cpid, String cppwd) {

              //Webservice所在URL

              Stringendpoint = "http://hl.my2my.cn/services/esmsservice";

 

              //创建一个服务(service)调用(call)

              Serviceservice = new Service();

 

              Callcall = null;

              try{

                     //通过service创建call对象

                     call= (Call) service.createCall();

 

                     //设置 service所在URL

                     call.setTargetEndpointAddress(newjava.net.URL(endpoint));

 

                     //方法名(sendSmsAsNormal)与SendSmsAsNormal.java方法名保持一致

                     call.setOperationName("sendSmsAsNormal");

 

                      //Object 数组封装了参数,参数为"Object数组形式",调用processService(String arg)

                      Stringret = (String) call.invoke(new Object[] { phone, smg, spNumber, chid, cpid,cppwd });

                     System.out.println(ret);

              }catch (ServiceException e) {

                     e.printStackTrace();

              }catch (MalformedURLException e) {

                     e.printStackTrace();

              }catch (RemoteException e) {

                     e.printStackTrace();

              }finally {

                      if(null== call) {

                            call= null;

                      }

                      if(null== service) {

                            service= null;

                     }

              }

       }






0 0
原创粉丝点击