From 0bf3f664ce4f3dd4ee25a044a7915ed44835a15f Mon Sep 17 00:00:00 2001 From: zhizhi wu <2377881365@qq.com> Date: Thu, 8 Apr 2021 16:17:51 +0800 Subject: [PATCH] =?UTF-8?q?=E8=85=BE=E8=AE=AF=E7=9F=AD=E4=BF=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/wmeimob/bjyy/util/SmsTxUtil.java | 59 +++++++++++++++++++ pom.xml | 7 ++- 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 bjyy-core/src/main/java/com/wmeimob/bjyy/util/SmsTxUtil.java diff --git a/bjyy-core/src/main/java/com/wmeimob/bjyy/util/SmsTxUtil.java b/bjyy-core/src/main/java/com/wmeimob/bjyy/util/SmsTxUtil.java new file mode 100644 index 0000000..d70b79d --- /dev/null +++ b/bjyy-core/src/main/java/com/wmeimob/bjyy/util/SmsTxUtil.java @@ -0,0 +1,59 @@ +package com.wmeimob.bjyy.util; + +import cn.hutool.core.util.RandomUtil; +import cn.hutool.json.JSONException; +import com.github.qcloudsms.SmsSingleSender; +import com.github.qcloudsms.SmsSingleSenderResult; +import com.github.qcloudsms.httpclient.HTTPException; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.io.IOException; + +@Slf4j +@Component +public class SmsTxUtil { + // 1400开头 + private static final int appid = 1400188778; + private static final String appkey = "c86ca104521ab2e28e1d4b558fdd665e"; + /** + * {1} 验证码{1}, 您正在通过{2}登录传控科技“时物链条”会议管理系统,请与{3}分钟内填写,如非本人操作,请忽略本短信。\ + */ + private static final int templateId = 286731; + /** + * {1} 您正在通过{2}登录传控科技“时物链条”会议管理系统,请与{2}分钟内填写,如非本人操作,请忽略本短信。 + */ + private static final int templateId1 = 286682; + /**验证码{1},{2}分钟内有效,如非本人操作请忽略 + * + */ + private static final int templateId2 = 686476; + private static final String smsSign = "燕园睿耋"; + + public static void sendSms(String phone,String code, Integer seconds){ + String phoneNumbers[] = {phone}; + Integer minutes = (seconds - 1) / 60 + 1; + try { + //数组具体的元素个数和模板中变量个数必须一致,例如事例中templateId:5678对应一个变量,参数数组中元素个数也必须是一个 + String[] params = {code,String.valueOf(minutes)}; + SmsSingleSender ssender = new SmsSingleSender(appid, appkey); + // 签名参数未提供或者为空时,会使用默认签名发送短信 + SmsSingleSenderResult result = ssender.sendWithParam("86", phoneNumbers[0], + templateId2, params, smsSign, "", ""); + log.info(String.valueOf(result)); + } catch (HTTPException e) { + // HTTP响应码错误 + e.printStackTrace(); + } catch (JSONException e) { + // json解析错误 + e.printStackTrace(); + } catch (IOException e) { + // 网络IO错误 + e.printStackTrace(); + } + } + + public static String generateRandomSmsCode(int length){ + return RandomUtil.randomNumbers(4); + } +} diff --git a/pom.xml b/pom.xml index 0a9cb01..e538c1d 100644 --- a/pom.xml +++ b/pom.xml @@ -374,7 +374,12 @@ jackson-databind 2.11.2 - + + + com.github.qcloudsms + qcloudsms + 1.0.5 +