/**
* 发短信所需常量类
* @author asus
*
*/
public class Constant {
static String SMS_YTX_URL = "appsms.cloopen.com"; //容联的appsms的url是固定不变的
static String SMS_YTX_PORT = "8883"; //端口号,也是不变的
static String SMS_YTX_SID = "8a216.....24d0cef"; //容联主账户的ACCOUNT SID
static String SMS_YTX_TOKEN = "f95da.....389bbb"; //容联主账户的AUTH TOKEN
static String SMS_YTX_APPID = "8a216d.....aa0cf6"; //正在开发的应用的 APP ID
static String SMS_YTX_VALID_MIN = "5"; //验证码有效时间 可以自己设置,分钟为单位
static String SMS_YTX_TEMPID = "485746"; //短信模板ID
}
public class ResponseObj {
/**
* 总记录数
*/
private int total;
/**
* 当前记录集合
*/
private Object data;
/**
* 是否成功
*/
private boolean successful;
/**
* 结果消息
*/
private String resultMsg;
/**
* 错误类型
*/
private String type;
/**
* 添加数据
* @param data
* @return
*/
public static ResponseObj successResult(Object data) {
return new ResponseObj(1,data,true, "", "");
}
/**
* 添加数据
* @param data
* @return
*/
public static ResponseObj successResult(Object data,int total) {
return new ResponseObj(total,data,true, "", "");
}
/**
* 返回失败信息
* @param exMessage
* @return
*/
public static ResponseObj failedResult(String exMessage) {
return new ResponseObj(0, "", false,exMessage, "error");
}
/**
* 返回失败信息和类型
* @param exMessage
* @param type
* @return
*/
public static ResponseObj failedResult(String exMessage, String type) {
return new ResponseObj(0, "",false, exMessage, type);
}
/**
* 构造函数,类型为error
*
*/
public ResponseObj() {
type = "error";
}
public ResponseObj(boolean successful,String resultMsg){
this.successful = successful;
this.resultMsg = resultMsg;
}
public ResponseObj(int total, Object data, boolean successful,String resultMsg, String type) {
this.total = total;
this.data = data;
this.successful = successful;
this.resultMsg = resultMsg;
this.type = type;
}
/**
* @return the 总记录数
*/
public int getTotal() {
return total;
}
/**
* @param total 总记录数 the total to set
*/
public void setTotal(int total) {
this.total = total;
}
/**
* @return the 是否成功
*/
public boolean isSuccessful() {
return successful;
}
/**
* @param successful 是否成功
* the successful to set
*/
public void setSuccessful(boolean successful) {
this.successful = successful;
}
/**
* @return the data
*/
public Object getData() {
return data;
}
/**
* @param data the data to set
*/
public void setData(Object data) {
this.data = data;
}
/**
* @return the 结果消息
*/
public String getResultMsg() {
return resultMsg;
}
/**
* @param resultMsg 结果消息
* the resultMsg to set
*/
public void setResultMsg(String resultMsg) {
this.resultMsg = resultMsg;
}
/**
* @return the 错误类型
*/
public String getType() {
return type;
}
/**
* @param type 错误类型
* the type to set
*/
public void setType(String type) {
this.type = type;
}
}
import java.util.HashMap;
import java.util.Set;
public class SDKTestSendTemplateSMS {
public static ResponseObj sendRegCodeByYTX(String tel,String... verifyName){
ResponseObj obj = new ResponseObj(true, "操作成功");
HashMap result = null;
//初始化SDK
CCPRestSDK restAPI = new CCPRestSDK();
restAPI.init(Constant.SMS_YTX_URL, Constant.SMS_YTX_PORT);// 初始化服务器地址和端口,格式如下,服务器地址不需要写https://
restAPI.setAccount(Constant.SMS_YTX_SID, Constant.SMS_YTX_TOKEN);// 初始化主帐号和主帐号TOKEN
restAPI.setAppId(Constant.SMS_YTX_APPID);// 初始化应用ID
String smsValidMin=Constant.SMS_YTX_VALID_MIN; //验证码过期时间
result = restAPI.sendTemplateSMS(tel, Constant.SMS_YTX_TEMPID, verifyName);
// result = restAPI.sendTemplateSMS("手机号码","模板id" ,new String[]{});
System.out.println("SDKTestSendTemplateSMS result=" + result);
if("000000".equals(result.get("statusCode"))){
//正常返回输出data包体信息(map)
HashMap data = (HashMap) result.get("data");
Set keySet = data.keySet();
for(String key:keySet){
Object object = data.get(key);
System.out.println(key +" = "+object);
}
}else{
//异常返回输出错误码和错误信息
System.out.println("错误码=" + result.get("statusCode") +" 错误信息= "+result.get("statusMsg"));
obj.setSuccessful(false);
obj.setResultMsg(String.valueOf(result.get("statusMsg")));
}
return obj;
}
}
public static void main(String[] args) {
ResponseObj obj = SDKTestSendTemplateSMS.sendRegCodeByYTX("手机号", "呵呵");
System.out.println(obj.getResultMsg());
}