跳至主要內容
SMS4J文档

SMS4J文档

SMS4J -- 让发送短信变的更简单。

🏡 开始🍐 V3.3.3

☕开箱即用

极简单的配置,方便的使用,三分钟即可完成发送短信的功能

⏰简单优雅

统一各个厂商的发送方式和功能,省去学习不同短信厂商的差异化方法,做到极简使用

🛫切换灵活

只需要通过配置文件即可立即切换不同的服务商,省去查阅文档和ctrl c v,发送短信,有手就行

📱功能丰富

对于短信中常见的限制和规则,不需要编写额外的功能方法和模块,只需要开启配置即可,后续还将集成更多功能方便使用

💻无缝切换

无需修改代码,即可完成短信厂商的切换

🔌强大拓展

拓展诸多插件,通知不再繁琐

📹轻装上阵

少量的第三方依赖,无需引入诸多SDK,为项目减肥

📀maven安装

 <dependency>
     <groupId>org.dromara.sms4j</groupId>
     <artifactId>sms4j-spring-boot-starter</artifactId>
     <version> version </version>
 </dependency>

🛠️基础配置

  sms:
    # 标注从yml读取配置
    config-type: yaml
    blends:
      # 自定义的标识,也就是configId这里可以是任意值(最好不要是中文)
      tx1:
        #厂商标识,标定此配置是哪个厂商,详细请看厂商标识介绍部分
        supplier: tencent
        #您的accessKey
        access-key-id: 您的accessKey
        #您的accessKeySecret
        access-key-secret: 您的accessKeySecret
        #您的短信签名
        signature: 您的短信签名
        #模板ID 非必须配置,如果使用sendMessage的快速发送需此配置
        template-id: xxxxxxxx
        #您的sdkAppId
        sdk-app-id: 您的sdkAppId
        # 自定义的标识,也就是configId这里可以是任意值(最好不要是中文)
      tx2:
        #厂商标识,标定此配置是哪个厂商,详细请看厂商标识介绍部分
        supplier: tencent
        #您的accessKey
        access-key-id: 您的accessKey
        #您的accessKeySecret
        access-key-secret: 您的accessKeySecret
        #您的短信签名
        signature: 您的短信签名
        #模板ID 非必须配置,如果使用sendMessage的快速发送需此配置
        template-id: xxxxxxxx
        #您的sdkAppId
        sdk-app-id: 您的sdkAppId

🧿使用

@RestController
public class TestController {

    @GetMapping("/test")
    public void testSend(){
        //在创建完SmsBlend实例后,再未手动调用注销的情况下框架会持有该实例,可以直接通过指定configId来获取想要的配置,如果你想使用
        //负载均衡形式获取实例,只要使用getSmsBlend的无参重载方法即可,如果你仅有一个配置,也可以使用该方法
        SmsBlend smsBlend = SmsFactory.getSmsBlend("在配置中定义的configId");
        SmsResponse smsResponse = smsBlend.sendMessage("18888888888","123");
    }
}

🤝 dromara 组织项目

💏友情链接

最好用的接口测试工具。程序员盒子。最好用的国产Java框架。开源全栈测试平台。

💾代码托管

dromara/SMSAggregationopen in new window
dromara/SMSAggregation