Solon v2.7.5

::sms4j-solon-plugin

</> markdown

此插件,由社区成员(风)贡献

<dependency>
    <groupId>org.dromara.sms4j</groupId>
    <artifactId>sms4j-solon-plugin</artifactId>
    <version>3.2.0</version>
</dependency>

1、描述

短信发送工具 sms4j(代码仓库)的适配插件。SMS4J 为短信聚合框架,帮您轻松集成多家短信服务,解决接入多个短信SDK的繁琐流程。 目前已接入数家常见的短信服务商,后续将会继续集成。目前已支持厂商有:

  • 阿里云国内短信
  • 腾讯云国内短信
  • 华为云国内短信
  • 京东云国内短信
  • 容联云国内短信
  • 亿美软通国内短信
  • 天翼云短信
  • 合一短信
  • 云片短信

2、配置示例

sms:
   alibaba:
     #阿里云的accessKey
     accessKeyId: 您的accessKey
     #阿里云的accessKeySecret
     accessKeySecret: 您的accessKeySecret
     #短信签名
     signature: 测试签名
     #模板ID 用于发送固定模板短信使用
     templateId: SMS_215125134
     #模板变量 上述模板的变量
     templateName: code
     #请求地址 默认为dysmsapi.aliyuncs.com 如无特殊改变可以不用设置
     requestUrl: dysmsapi.aliyuncs.com
   huawei:
     #华为短信appKey
     appKey: 5N6fvXXXX920HaWhVXXXXXX7fYa
     #华为短信appSecret
     app-secret: Wujt7EYzZTBXXXXXXEhSP6XXXX
     #短信签名
     signature: 华为短信测试
     #通道号
     sender: 8823040504797
     #模板ID 如果使用自定义模板发送方法可不设定
     template-id: acXXXXXXXXc274b2a8263479b954c1ab5
     #华为回调地址,如不需要可不设置或为空
     statusCallBack:
      #华为分配的app请求地址
     url: https://XXXXX.cn-north-4.XXXXXXXX.com:443

3、代码应用

@Mapping("/test")
@Controller
public class SmsController {
    @Mapping("/sms")
    public void testSendSms(String phone, String code) {
          //阿里云向此手机号发送短信
        SmsFactory.createSmsBlend(SupplierType.ALIBABA).sendMessage(phone,code);
        //华为短信向此手机号发送短信
        SmsFactory.createSmsBlend(SupplierType.HUAWEI).sendMessage(phone,code);
    }
}

启动代码,从浏览器访问 http://localhost:8080/test/sms?phone=18888888888&code=123456 等待手机收到短信