# wintop-sms-spring-boot-starter
**Repository Path**: javacse/wintop-sms-spring-boot-starter
## Basic Information
- **Project Name**: wintop-sms-spring-boot-starter
- **Description**: No description available
- **Primary Language**: Java
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-04-30
- **Last Updated**: 2022-05-05
## Categories & Tags
**Categories**: Uncategorized
**Tags**: 公司自用短信starter
## README
### SpringBoot Sms Starer (author: guanhuimin)
---
> 当前项目为开发版本(待持续集成)
#### 1. 使用方式
- 需要使用短信服务的项需要引入一下坐标
```xml
com.wintop
wintop-sms-spring-boot-starter
1.0.1-RELEASE
```
- 项目配置文件配置
```yaml
ali:
sms:
access-key-id: #阿里云 access-key-id
access-secret: #阿里云 access-secret
enable: #是否启用短信功能
enable-cache: #是否开启短信缓存 (默认缓存5分钟)
```
#### 2.接口说明
> 1.短信发送
**接口:**
- sendSms (String phoneNumber,String signName,String templateCode,String templateParam,boolean isVerCodeModel)
***注:此接口当需要为验证码使用时可以开启短信缓存配置或者项目开发者自定义缓存验证码过期时间并重写短信校验方法,验证码校验默认5分钟。***
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|phoneNumber |是 |string |手机号 |
|signName |是 |string | 短信签名 (阿里云短信服务中的短信签名) |
|templateCode |是 |string | 短信模板code(阿里云短信服务中的模板code) |
|templateParam |是 |string (需为格式化好过后的JSON格式参数) | 短信参数 |
|isVerCodeModel |是 |boolean | 是否为短信验证码模式(true 是 false 不是) |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| true或false|boolean |当返回true时说明短信发送成功(当开启缓存配置后请开发者捕获异常信息) |
---
> 2.批量短信发送
**接口:**
- boolean sendBatchSms( List PhoneNumberJson, List SignNameJson,
String TemplateCode, List TemplateParamJson);
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|PhoneNumberJson |是 |List |短信接收号码,JSON格式,批量上限为100个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式。 |
|SignNameJson |是 |List | 短信签名,JSON格式。 |
|TemplateCode |是 |string | 短信模板ID。 |
|TemplateParamJson |是 |List (需为格式化好过后的JSON格式参数) | 短信模板变量替换JSON串,友情提示:如果JSON中需要带换行符,请参照标准的JSON协议。 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| true或false|boolean |当返回true时说明短信发送成功 |
---
> 3.获取指定位数随机验证码
**接口:**
- getRandCode(int digits)
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|digits |是 |int |验证位数 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| |int |返回当前位数验证码 |
---
> 4.短信验证接口
**接口:**
- checkVerifyCode(String phone,String code)
***注:此接口需要开启短信缓存配置***
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|phone |是 |string |手机号 |
|code |是 |string | 验证码 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| true或false|boolean |当返回true时说明验证码验证成功 |
---
#### 3. 代码实例 [代码实例](./simple/Simple.java)