Class SmsClient

java.lang.Object
io.springboot.sms.core.SmsClient

public class SmsClient extends Object
阿里云 SMS 客户端.
Author:
cn-src
  • Field Details

    • acsClients

      private Map<String,com.aliyuncs.IAcsClient> acsClients
      key 是阿里云 的templateCode
    • smsTemplates

      private Map<String,SmsTemplate> smsTemplates
  • Constructor Details

  • Method Details

    • sendVerificationCode

      public String sendVerificationCode(String code, String... phoneNumbers)
      发送短信验证码. (使用第一个模板)
      Parameters:
      phoneNumbers - 手机号码(中国)
      code - 验证码
      Returns:
      6 位数的随机码
    • checkSmsTemplate

      private boolean checkSmsTemplate()
      校验是否可用
    • sendCodeByKey

      public String sendCodeByKey(String smsTemplateKey, String code, String... phoneNumbers)
      发送短信验证码.(通过短信模板key)
      Parameters:
      smsTemplateKey - 模板key
      phoneNumbers - 手机号码(中国)
      code - 验证码
      Returns:
      验证码
    • sendCode

      public String sendCode(String code, String... phoneNumbers)
      发送短信验证码.(默认第一个渠道)
      Parameters:
      phoneNumbers - 手机号码(中国)
      code - 验证码
      Returns:
      验证码
    • sendParamByKey

      public void sendParamByKey(String smsTemplateKey, Map<String,String> params, String... phoneNumbers)
      发送短信验证码.(通过短信模板key)
      Parameters:
      smsTemplateKey - 模板key
      phoneNumbers - 手机号码(中国)
      params - 模板参数
    • send

      public void send(String smsTemplateKey)
      发送短信.
      Parameters:
      smsTemplateKey - 预置短信模板 key
    • send

      public void send(String smsTemplateKey, String... phoneNumbers)
      发送短信.
      Parameters:
      smsTemplateKey - 预置短信模板 key
      phoneNumbers - 手机号码,优先于预置短信模板中配置的手机号码
    • send

      public void send(SmsTemplate smsTemplate)
      发送短信.
      Parameters:
      smsTemplate - 短信模板