mirror of
https://gitee.com/dromara/sms4j.git
synced 2025-12-06 17:08:40 +08:00
commit
f4b1ecb01a
@ -10,6 +10,14 @@ import lombok.Data;
|
||||
**/
|
||||
@Data
|
||||
public class SmsResponse {
|
||||
|
||||
/**
|
||||
* 是否成功
|
||||
*
|
||||
* @since 2.2.0
|
||||
*/
|
||||
private boolean success;
|
||||
|
||||
/** 状态码*/
|
||||
private String code;
|
||||
/** 返回消息*/
|
||||
|
||||
@ -102,6 +102,7 @@ public class AlibabaSmsImpl extends AbstractSmsBlend {
|
||||
smsResponse.setMessage(resJson.getStr("Message"));
|
||||
if ("OK".equals(smsResponse.getCode())) {
|
||||
smsResponse.setBizId(resJson.getStr("BizId"));
|
||||
smsResponse.setSuccess(true);
|
||||
}
|
||||
return smsResponse;
|
||||
}
|
||||
|
||||
@ -63,6 +63,7 @@ public class CloopenHelper {
|
||||
String statusMsg = Convert.toStr(responseMap.get("statusMsg"));
|
||||
boolean isSuccess = "000000".equals(statusCode);
|
||||
if (isSuccess) {
|
||||
smsResponse.setSuccess(true);
|
||||
smsResponse.setCode(statusCode);
|
||||
smsResponse.setMessage(statusMsg);
|
||||
smsResponse.setData(response);
|
||||
|
||||
@ -90,6 +90,7 @@ public class CtyunSmsImpl extends AbstractSmsBlend {
|
||||
smsResponse.setCode(resJson.getStr("code"));
|
||||
smsResponse.setMessage(resJson.getStr("message"));
|
||||
smsResponse.setBizId(resJson.getStr("requestId"));
|
||||
smsResponse.setSuccess("OK".equals(smsResponse.getCode()));
|
||||
return smsResponse;
|
||||
}
|
||||
|
||||
|
||||
@ -104,6 +104,7 @@ public class EmaySmsImpl extends AbstractSmsBlend {
|
||||
} else {
|
||||
smsResponse.setCode(code);
|
||||
if ("success".equalsIgnoreCase(code)) {
|
||||
smsResponse.setSuccess(true);
|
||||
JSONArray data = execute.getJSONArray("data");
|
||||
JSONObject result = (JSONObject) data.get(0);
|
||||
String smsId = result.getStr("smsId");
|
||||
|
||||
@ -22,7 +22,7 @@ import static org.dromara.sms4j.huawei.utils.HuaweiBuilder.listToString;
|
||||
@Slf4j
|
||||
public class HuaweiSmsImpl extends AbstractSmsBlend {
|
||||
public HuaweiSmsImpl(HuaweiConfig config, Executor pool, DelayedTime delayed) {
|
||||
super(pool,delayed);
|
||||
super(pool, delayed);
|
||||
this.config = config;
|
||||
}
|
||||
|
||||
@ -60,6 +60,9 @@ public class HuaweiSmsImpl extends AbstractSmsBlend {
|
||||
smsResponse.setMessage(jsonBody.getDescription());
|
||||
smsResponse.setBizId(jsonBody.getResult().get(0).getSmsMsgId());
|
||||
smsResponse.setData(jsonBody.getResult());
|
||||
if ("000000".equals(jsonBody.getCode())) {
|
||||
smsResponse.setSuccess(true);
|
||||
}
|
||||
}))
|
||||
.onError((ex, req, res) -> {
|
||||
HuaweiResponse huaweiResponse = res.get(HuaweiResponse.class);
|
||||
|
||||
@ -91,6 +91,7 @@ public class JdCloudSmsImpl extends AbstractSmsBlend {
|
||||
smsResponse.setMessage(res.getMessage());
|
||||
Boolean status = res.getStatus();
|
||||
boolean isSuccess = status != null && status;
|
||||
smsResponse.setSuccess(isSuccess);
|
||||
if (!isSuccess) {
|
||||
smsResponse.setErrMessage(res.getMessage());
|
||||
smsResponse.setErrorCode(String.valueOf(res.getCode()));
|
||||
|
||||
@ -107,6 +107,7 @@ public class TencentSmsImpl extends AbstractSmsBlend {
|
||||
smsResponse.setBizId(sendStatusSet.getJSONObject(0).getStr("SerialNo"));
|
||||
smsResponse.setMessage(sendStatusSet.getJSONObject(0).getStr("Message"));
|
||||
smsResponse.setCode(sendStatusSet.getJSONObject(0).getStr("Code"));
|
||||
smsResponse.setSuccess(true);
|
||||
}
|
||||
}))
|
||||
.onError((ex, req, res) -> {
|
||||
|
||||
@ -33,7 +33,6 @@ public class UniResponse {
|
||||
this.message = response.getStr("message");
|
||||
} else {
|
||||
this.message = body.getJSONArray("messages").getStr(0);
|
||||
;
|
||||
}
|
||||
this.code = code;
|
||||
} else {
|
||||
|
||||
@ -89,6 +89,7 @@ public class UniSmsImpl extends AbstractSmsBlend {
|
||||
smsResponse.setMessage(send.message);
|
||||
smsResponse.setBizId(send.requestId);
|
||||
smsResponse.setData(send);
|
||||
smsResponse.setSuccess("Success".equals(send.message));
|
||||
}catch(Exception e){
|
||||
smsResponse.setErrMessage(e.getMessage());
|
||||
}
|
||||
|
||||
@ -39,7 +39,8 @@ public class YunPianSmsImpl extends AbstractSmsBlend {
|
||||
smsResponse.setCode(execute.getStr("code"));
|
||||
smsResponse.setMessage(execute.getStr("msg"));
|
||||
smsResponse.setBizId(execute.getStr("sid"));
|
||||
if (execute.getInt("code") != 0) {
|
||||
smsResponse.setSuccess(execute.getInt("code") == 0);
|
||||
if (!smsResponse.isSuccess()) {
|
||||
smsResponse.setErrMessage(execute.getStr("msg"));
|
||||
}
|
||||
smsResponse.setData(execute);
|
||||
|
||||
@ -25,9 +25,10 @@ class Sms4jTest {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 阿里
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.ALIBABA).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue("OK".equals(smsResponse.getCode()));
|
||||
Assert.isTrue("OK".equals(smsResponse.getCode()) && smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -35,9 +36,87 @@ class Sms4jTest {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 华为
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.HUAWEI).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue("000000".equals(smsResponse.getCode()));
|
||||
Assert.isTrue("000000".equals(smsResponse.getCode()) && smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
}
|
||||
@Test
|
||||
public void cloopenSmsTest() {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 容联云
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.CLOOPEN).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue("000000".equals(smsResponse.getCode()) && smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void emaySmsTest() {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 亿美软通
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.EMAY).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue("success".equals(smsResponse.getCode()) && smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void jdCloudSmsTest() {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 京东云
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.JD_CLOUD).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue(smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void yunPianSmsTest() {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 云片
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.YUNPIAN).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue("0".equals(smsResponse.getCode()) && smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void tencentSmsTest() {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 腾讯
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.TENCENT).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue("Ok".equals(smsResponse.getCode()) && smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void uniSmsTest() {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 合一
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.UNI_SMS).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue("Success".equals(smsResponse.getMessage()) && smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void cyYunSmsTest() {
|
||||
if (StrUtil.isBlank(PHONE)) {
|
||||
return;
|
||||
}
|
||||
// 天翼云
|
||||
SmsResponse smsResponse = SmsFactory.createSmsBlend(SupplierType.CTYUN).sendMessage(PHONE, SmsUtil.getRandomInt(6));
|
||||
log.info(JSONUtil.toJsonStr(smsResponse));
|
||||
Assert.isTrue("OK".equals(smsResponse.getCode()) && smsResponse.isSuccess());
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user