短信平台WebService接口文档
发布者::admin 发布时间: :2012-07-05 17:14 浏览次数: :
一、接口地址
http://hl.my2my.cn/services/esmsservice?wsdl
二、接口说明
Webservice的接口分为以下部分:
1. 短信发送接口
(1)sendSmsAsXml
·接口方法定义:
·接口参数说明:
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
·接口方法定义:
·接口参数说明:
phone:所要发送信息的号码(多个号码请用“,”逗号为开)
如:phone = “13800000000,13900000000”;
msgcont: 短信内容
spnumber:流水号,为Null就行,传空值就可。
chid:通道号
cpid:用户登录名
cppwd:用户密码
·返回值
返回值为0则表示提交成功。
·接口方法定义:
String getSmsStates(String cpid,String cppwd);
·接口参数说明:
cpid:用户登录名
cppwd:用户密码
·返回值
<?xml version="1.0" encoding="utf-8" ?>
<smsResult nextID="20">
<result>
< spnumber >短信流水号</ spnumber >
<phone>手机号码</phone>
<status>DELIVRD</status>
<sendtime>2008-12-24 23:58:24</sendtime>
</result>
……………………
</smsResult>
说明:DELIVRD成功,其他失败。
(4)sendMms
·接口方法定义:
String sendMms(String smsPack,String cpid,String cppwd);
·接口参数说明:
smsPack:Xml格式数据包(电话号,短信内容)
cpid:用户登录名
cppwd:用户密码
·返回值
<?xml version="1.0" encoding="utf-8" ?>
<mms>
<page>
<img type='jpg' >BASE64Encoder编码</img>
<text>....</text>
</page>
<page>
<img type='jpg'>BASE64Encoder编码</img>
//此处为空,必须保留该节点
<text>....</text>
</page>
...
</mms>
(5)getMmsStates
·接口方法定义:
String getMmsStates(String cpid,String cppwd);
·接口参数说明:
cpid:用户登录名
cppwd:用户密码
·返回值
<?xml version="1.0" encoding="utf-8" ?>
<mmsResult nextID="20">
<result>
< spnumber >短信流水号</ spnumber >
<phone>手机号码</phone>
<status>1000</status>
<sendtime>2008-12-24 23:58:24</sendtime>
</result>
……………………
</mmsResult>
说明:DELIVRD成功,其他失败。
(6)getMoList
·接口方法定义:
String getMoList(String nextId,String cpid,String cppwd);
·接口参数说明:
nextId:
cpid:用户登录名
cppwd:用户密码
·返回值
<?xml version="1.0" encoding="utf-8" ?>
<smsMo nextID="20">
<result>
<phone>手机号码</phone>
<content>1000</ content >
<motime>2008-12-24 23:58:24</sendtime>
</result>
……………………
</smsMo>
三、接口提交注意事项:
1. 接口提交数据一个包不能超过50个号码,50个号码提交一次,否则会提交失败。
2. 短信息内容不能超过70个字符。(包括数字、字母、特殊字符和汉字均为一个字符)
四、Demo
Demo说明:
您可以直接创建一个Java项目,调用这个方法,传入相应参数即可。
java Call方法调用:
invokeWebServiceCall(phone, smg, null, chid, cpid, cppwd);
/**
* Java 形式调用 Webservice
*
* phone:号码列表
* smg:短信内容
* spName:流水号,为null,不用传参数
* chid:通道号
* cpid:用户名
* cppwd:密码
* */
public static void invokeWebServiceCall(String phone, String smg,
String spNumber, String chid, String cpid, String cppwd) {
// Webservice所在URL
String endpoint = "http://hl.my2my.cn/services/esmsservice";
// 创建一个服务 (service)调用(call)
Service service = new Service();
Call call = null;
try {
// 通过service创建call对象
call = (Call) service.createCall();
// 设置 service所在URL
call.setTargetEndpointAddress(new java.net.URL(endpoint));
// 方法名 (sendSmsAsNormal)与SendSmsAsNormal.java方法名保持一致
call.setOperationName("sendSmsAsNormal");
// Object 数组封装了参数,参数为"Object数组形式",调用processService(String arg)
String ret = (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;
}
}
}
