sms-aggregation 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
sms-aggregation 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
sms-aggregation 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache-2.0
开发语言 Java
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 风如歌
适用人群 未知
收录时间 2023-04-01

软件简介

在日常的开发过程中,短信的发送经常使用(尤其是中小型的外包公司),毕竟不是每个公司都有阿里腾讯一样的实力, 也不是每个都像银行联通等公司一样有内部的短信规程。第三方的短信往往是最常见的解决方案,但是市面上第三方短信服务商众多, 各家都有不同的方式和标准,每次需要使用时候,都需要花费时间去阅读文档和编写相应的工具,为一个短信浪费了太多的精力和时间。 这个工具的目的就是为了统一下各个厂商的短信发送工具的标准,甚至于更换短信厂商只需要更改yml配置文件即可。

在SpringBoot环境集成

  1. maven引入

    <dependency>
     <groupId>kim.wind</groupId>
     <artifactId>sms-aggregation-spring-boot-starter</artifactId>
     <version> version </version>
    </dependency>
     
    最新版本请查看官网或gitee仓库
    最新的master版本会发布至maven中央仓库
  2. 设置配置文件

    sms:
    # 短信服务商 
    supplier: alibaba
    # 是否开启短信发送限制 默认false
    restricted: true
    # 以下设置仅在开启短信发送限制后生效
    # 是否使用redis进行缓存 默认false
    redisCache: true
    # 单账号每日最大发送量
    accountMax: 20
    # 单账号每分钟最大发送
    minuteMax: 2
     

阿里云配置示意

sms:
  # 短信服务商
  supplier: alibaba
  alibaba:
    #阿里云的accessKey
    accessKeyId: 您的accessKey
    #阿里云的accessKeySecret
    accessKeySecret: 您的accessKeySecret
    #短信签名
    signature: 测试签名
    #模板ID 用于发送固定模板短信使用
    templateId: SMS_215125134
    #模板变量 上述模板的变量
    templateName: code
    #请求地址 默认为dysmsapi.aliyuncs.com 如无特殊改变可以不用设置
    requestUrl: dysmsapi.aliyuncs.com
 
  1. 方法使用

    public class Demo{
     //此处作为演示使用,推荐使用构造注入或set注入
     @Autowired
     private final SmsBlend sms;
    
     public void test() {
         //发送固定模板短信
         SmsResponse smsResponse = sms.sendMessage("18888888888","测试固定模板短信");
         System.out.println(smsResponse);
     }
    }
     

配置详解

线程池配置

每一家厂商都对于异步短信有不同的支持,有些甚至没有,为了统一存在一个异步短信,我们配置了一个线程池用于执行异步短信任务,线程池默认配置如下:

sms:
  #核心线程池大小
  corePoolSize: 10
  #最大线程数
  maxPoolSize: 30
  #队列容量
  queueCapacity: 50
  #活跃时间
  keepAliveSeconds: 60
  # 线程名字前缀
  threadNamePrefix: sms-executor-
  #设置线程池关闭的时候等待所有任务都完成再继续销毁其他的Bean
  shutdownStrategy: true
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(1) 发布并加入讨论🔥
发表了资讯
2023/04/14 19:52

sms4j 成功晋级 gitee推荐项目

sms4j 于今天下午成功晋级为gitee推荐项目,感谢gitee对于我们的支持。 SMS4J是一款基于Java语言的短信发送工具,它可以轻松地集成多家短信服务商,包括阿里云、腾讯云、华为云、云片、容联云通讯等等。开发者可以根据自己的需求选择不同的服务商,进行简单的配置和快速的集成。 SMS4J为开发者提供了一系列短信发送功能,包括验证码、短信通知、批量发送、定时发送、短信模板等多种功能。这大大简化了开发流程,提高了开发效率。...

2
13
发表了资讯
2023/04/14 11:44

sms-aggregation 正式改名 sms4j

sms-aggregation自开源以来受到的众多的反馈,其中很多人在吐槽名字又丑又长不容易记,经过社区内投票之后,成功更定新名称 sms4j,新名称将伴随新的包名,groupId,新的特性,新的文档,在周六进行发布,这次的更新是跨越性的更新,也是全新的起航,在后续将会新版本的迭代计划和维护计划,在作者的有生之年,这个项目将长久的维护下去。 如果我们的项目对你产生了帮助或者你觉得还不错,请为我们点上一颗star 仓库地址 官方文...

4
3
发表了资讯
2023/04/10 10:13

sms-aggregation 成功加入 Dromara 开源组织

sms-aggregation 聚合短信发送工具 作者介绍 名称:wind dromara 开源组织成员,dromara/sms_aggregation 作者 java高级开发工程师,拥有丰富实战经验 个人空间:https://gitee.com/MR-wind 官方文档:https://wind.kim/ 关于 SMS Aggregation SMS Aggregation 是一款聚合短信发送工具,统一了各个厂商的发送功能和发送方法,省去学习不同短信厂商的差异化的时间,极简单的使用,可以让你在三分钟内完成短信发送功能的编写,并且...

0
3
发表了资讯
2023/04/05 15:35

SMS Aggregation 1.0.4 版本发布在即!

SMS Aggregation 是一款发布于 gitee 的开源 java 工具,遵循 Apache-2.0 license 开源协议 旨在聚合各家短信服务商统一标准,简化发送流程。用最简单的方式完成短信的发送,并且让服务商的切换变得流畅自然,不需要额外的去阅读文档,编写测试用例。目前已经发布到了 1.0.3 版本,支持了阿里云,华为云,腾讯云,unisms,云片五家厂商。按照作者的规划,在后续的版本中至少支持 15 家以上的服务商,并且会在后续接入国际短信的...

0
6
发表了资讯
2023/04/02 19:50

SMS Aggregation 短信聚合 1.0.3 版本正式发布

SMS Aggregation短信聚合 1.0.3版本正式发布 现已发布至maven中央仓库 本次更新除了前一版本的bug修复之外,还额外增加了华为云国内短信的支持 截止目前版本已经支持了 阿里云国内短信 华为云国内短信 腾讯云国内短信 unisms短信 云片短信 五家短信厂商,在后续的版本中将陆续的支持更多的厂商 官方文档 gitee地址 **您的支持是我最大的动力,如果你觉得还不错,请用你发财的小手帮我点一个 ⭐️⭐️⭐️Star:star...

0
7
发表了资讯
2023/04/01 13:56

短信聚合工具 sms-aggregation 发布,干掉三拜九叩,让简单的事情回归简单

不知道各位有没有发现一件事,现在是个东西他都要手机号和短信验证码 然后等你输入了手机号之后,各种营销短信,广告短信接踵而至。 好了别吐槽了,身为开发者,咱们都是原罪(当然发明验证码的人更是罪中罪)。 现在在项目中,短信功能几乎快成了标配,发短信这件事本身不难,但是烦就烦在各种的运营商和服务商各种的奇技淫巧,文档看了一堆又一堆,Demo写了一个又一个……标准不统一不说,功能还不一样,每次要写短信功能时候...

4
18
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
1 评论
22 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部