容聯短信驗證

最近做了一個H5的移動項目,其中需要短信驗證,採用的是容聯雲通訊,流程如下:

1、登錄容聯雲通訊http://www.yuntongxun.com/?kw=PPQP,註冊賬號,申請app,然後編輯短信模板。

2、下載容聯的文檔及jar包


3、編寫代碼

package com.gsafety.umuser.util;


import java.util.HashMap;


import com.cloopen.rest.sdk.CCPRestSmsSDK;
import com.opensymphony.xwork2.util.logging.Logger;
import com.opensymphony.xwork2.util.logging.LoggerFactory;


public class SMSSendUtil {



private static final Logger log = LoggerFactory
.getLogger(SMSSendUtil.class);

/**
* 發送容聯安全傘短信的模板
* @param phonenum 電話號碼
* @param b        true  短信驗證   false 忘記密碼
* @param str      發送的內容
* @return
*/
public static boolean sendSms(String phonenum,boolean b,String str[]) {
HashMap<String, Object> result = null;
boolean ok=false;


//初始化SDK
CCPRestSmsSDK restAPI = new CCPRestSmsSDK();

//******************************註釋*********************************************
//*初始化服務器地址和端口                                                       *
//*沙盒環境(用於應用開發調試):restAPI.init("sandboxapp.cloopen.com", "8883");*
//*生產環境(用戶應用上線使用):restAPI.init("app.cloopen.com", "8883");       *
//*******************************************************************************
restAPI.init("app.cloopen.com", "8883");

//******************************註釋*********************************************
//*初始化主帳號和主帳號令牌,對應官網開發者主賬號下的ACCOUNT SID和AUTH TOKEN     *
//*ACOUNT SID和AUTH TOKEN在登陸官網後,在“應用-管理控制檯”中查看開發者主賬號獲取*
//*參數順序:第一個參數是ACOUNT SID,第二個參數是AUTH TOKEN。                   *
//*******************************************************************************
restAPI.setAccount("8a48b5514c982bdb014c9cb4fd160467", "440dc049202d42b4b7bb3fe9dfac9f52");


//******************************註釋*********************************************
//*初始化應用ID                                                                 *
//*測試開發可使用“測試Demo”的APP ID,正式上線需要使用自己創建的應用的App ID     *
//*應用ID的獲取:登陸官網,在“應用-應用列表”,點擊應用名稱,看應用詳情獲取APP ID*
//*******************************************************************************
restAPI.setAppId("8a48b5514fb1a66a014fb5d4db5d07db");


//******************************註釋****************************************************************
//*調用發送模板短信的接口發送短信                                                                  *
//*參數順序說明:                                                                                  *
//*第一個參數:是要發送的手機號碼,可以用逗號分隔,一次最多支持100個手機號                          *
//*第二個參數:是模板ID,在平臺上創建的短信模板的ID值;測試的時候可以使用系統的默認模板,id爲1。    *
//*系統默認模板的內容爲“【雲通訊】您使用的是雲通訊短信模板,您的驗證碼是{1},請於{2}分鐘內正確輸入”*
//*第三個參數是要替換的內容數組。       *
//**************************************************************************************************

//**************************************舉例說明***********************************************************************
//*假設您用測試Demo的APP ID,則需使用默認模板ID 1,發送手機號是13800000000,傳入參數爲6532和5,則調用方式爲           *
//*result = restAPI.sendTemplateSMS("13800000000","1" ,new String[]{"6532","5"});  *
//*則13800000000手機號收到的短信內容是:【雲通訊】您使用的是雲通訊短信模板,您的驗證碼是6532,請於5分鐘內正確輸入     *
//*********************************************************************************************************************

String smsid="";
if(b){
smsid="37965";
}else{
smsid="37971";
}
System.out.println(smsid);
result = restAPI.sendTemplateSMS(phonenum,smsid,str);

System.out.println("SDKTestGetSubAccounts result=" + result);
String resultstate=(String) result.get("statusCode");

if("000000".equals(resultstate)){
// //正常返回輸出data包體信息(map)
// HashMap<String,Object> data = (HashMap<String, Object>) result.get("data");
// Set<String> keySet = data.keySet();
// for(String key:keySet){
// Object object = data.get(key);
// System.out.println(key +" = "+object);
// }
ok=true;
}else{
//異常返回輸出錯誤碼和錯誤信息
log.info("錯誤碼=" + result.get("statusCode") +" 錯誤信息= "+result.get("statusMsg"));
System.out.println("錯誤碼=" + result.get("statusCode") +" 錯誤信息= "+result.get("statusMsg"));
ok=false;
}
return ok;
}



}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章