Class AbstractSmsBlend<C extends SupplierConfig>
- java.lang.Object
-
- org.dromara.sms4j.provider.service.AbstractSmsBlend<C>
-
- Type Parameters:
C-
- All Implemented Interfaces:
SmsBlend
- Direct Known Subclasses:
AlibabaSmsImpl,BaiduSmsImpl,BudingV2SmsImpl,ChuangLanSmsImpl,CloopenSmsImpl,CtyunSmsImpl,DanMiSmsImpl,DingZhongSmsImpl,EmaySmsImpl,HuaweiSmsImpl,JdCloudSmsImpl,JgSmsImpl,LianLuSmsImpl,LuoSiMaoSmsImpl,MasSmsImpl,NeteaseSmsImpl,QiNiuSmsImpl,SubMailSmsImpl,TencentSmsImpl,UniSmsImpl,YiXintongSmsImpl,YunPianSmsImpl,ZhangJunSmsImpl,ZhutongSmsImpl
public abstract class AbstractSmsBlend<C extends SupplierConfig> extends Object implements SmsBlend
短信服务抽象类
-
-
Field Summary
Fields Modifier and Type Field Description private Cconfigprivate StringconfigIdprotected DelayedTimedelayedprotected SmsHttpUtilshttpprotected Executorpool
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractSmsBlend(C config)protectedAbstractSmsBlend(C config, Executor pool, DelayedTime delayed)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voiddelayedMessage(String phone, String message, Long delayedTime)说明:使用固定模板发送延时短信 delayedMessagevoiddelayedMessage(String phone, String templateId, LinkedHashMap<String,String> messages, Long delayedTime)说明:使用自定义模板发送定时短信 sendMessage delayedMessagevoiddelayMassTexting(List<String> phones, String message, Long delayedTime)说明:群发延迟短信 delayMassTextingvoiddelayMassTexting(List<String> phones, String templateId, LinkedHashMap<String,String> messages, Long delayedTime)说明:使用自定义模板发送群体延迟短信 delayMassTextingSmsResponseerrorResp(String errorMsg)返回异常protected CgetConfig()abstract SmsResponsemassTexting(List<String> phones, String message)说明:群发固定模板短信 massTextingabstract SmsResponsemassTexting(List<String> phones, String templateId, LinkedHashMap<String,String> messages)说明:使用自定义模板群发短信 massTextingabstract SmsResponsesendMessage(String phone, String message)说明:发送固定消息模板短信abstract SmsResponsesendMessage(String phone, String templateId, LinkedHashMap<String,String> messages)说明:使用自定义模板发送短信 sendMessageabstract SmsResponsesendMessage(String phone, LinkedHashMap<String,String> messages)sendMessagevoidsendMessageAsync(String phone, String message)说明:异步发送短信,不关注发送结果 sendMessageAsyncvoidsendMessageAsync(String phone, String templateId, LinkedHashMap<String,String> messages)说明:异步短信发送,使用自定义模板发送短信,不关注发送结果 sendMessageAsyncvoidsendMessageAsync(String phone, String templateId, LinkedHashMap<String,String> messages, CallBack callBack)说明:异步短信发送,使用自定义模板发送短信 sendMessagevoidsendMessageAsync(String phone, String message, CallBack callBack)说明:异步短信发送,固定消息模板短信 sendMessageAsync-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.dromara.sms4j.api.SmsBlend
batchJoinBlacklist, batchRemovalFromBlacklist, getConfigId, getSupplier, joinInBlacklist, removeFromBlacklist
-
-
-
-
Field Detail
-
configId
private final String configId
-
config
private final C extends SupplierConfig config
-
pool
protected final Executor pool
-
delayed
protected final DelayedTime delayed
-
http
protected final SmsHttpUtils http
-
-
Constructor Detail
-
AbstractSmsBlend
protected AbstractSmsBlend(C config, Executor pool, DelayedTime delayed)
-
AbstractSmsBlend
protected AbstractSmsBlend(C config)
-
-
Method Detail
-
getConfig
protected C getConfig()
-
sendMessage
public abstract SmsResponse sendMessage(String phone, String message)
说明:发送固定消息模板短信
此方法将使用配置文件中预设的短信模板进行短信发送
该方法指定的模板变量只能存在一个(配置文件中)
如使用的是腾讯的短信,参数字符串中可以同时存在多个参数,使用 & 分隔例如:您的验证码为{1}在{2}分钟内有效,可以传为 message="xxxx"+"&"+"5" sendMessage
- Specified by:
sendMessagein interfaceSmsBlend- Parameters:
phone- 接收短信的手机号 message 消息内容
-
sendMessage
public abstract SmsResponse sendMessage(String phone, LinkedHashMap<String,String> messages)
sendMessage说明:发送固定消息模板多模板参数短信
- Specified by:
sendMessagein interfaceSmsBlend- Parameters:
phone- 接收短信的手机号messages- 模板内容
-
sendMessage
public abstract SmsResponse sendMessage(String phone, String templateId, LinkedHashMap<String,String> messages)
说明:使用自定义模板发送短信 sendMessage
- Specified by:
sendMessagein interfaceSmsBlend- Parameters:
templateId- 模板idmessages- key为模板变量名称 value为模板变量值
-
massTexting
public abstract SmsResponse massTexting(List<String> phones, String message)
说明:群发固定模板短信 massTexting
- Specified by:
massTextingin interfaceSmsBlend
-
massTexting
public abstract SmsResponse massTexting(List<String> phones, String templateId, LinkedHashMap<String,String> messages)
说明:使用自定义模板群发短信 massTexting
- Specified by:
massTextingin interfaceSmsBlend
-
sendMessageAsync
public final void sendMessageAsync(String phone, String message, CallBack callBack)
说明:异步短信发送,固定消息模板短信 sendMessageAsync
- Specified by:
sendMessageAsyncin interfaceSmsBlend- Parameters:
phone- 要发送的号码message- 发送内容callBack- 回调
-
sendMessageAsync
public final void sendMessageAsync(String phone, String message)
说明:异步发送短信,不关注发送结果 sendMessageAsync
- Specified by:
sendMessageAsyncin interfaceSmsBlend- Parameters:
phone- 要发送的号码message- 发送内容
-
sendMessageAsync
public final void sendMessageAsync(String phone, String templateId, LinkedHashMap<String,String> messages, CallBack callBack)
说明:异步短信发送,使用自定义模板发送短信 sendMessage
- Specified by:
sendMessageAsyncin interfaceSmsBlend- Parameters:
templateId- 模板idmessages- key为模板变量名称 value为模板变量值callBack- 回调
-
sendMessageAsync
public final void sendMessageAsync(String phone, String templateId, LinkedHashMap<String,String> messages)
说明:异步短信发送,使用自定义模板发送短信,不关注发送结果 sendMessageAsync
- Specified by:
sendMessageAsyncin interfaceSmsBlend- Parameters:
templateId- 模板idmessages- key为模板变量名称 value为模板变量值
-
delayedMessage
public final void delayedMessage(String phone, String message, Long delayedTime)
说明:使用固定模板发送延时短信 delayedMessage
- Specified by:
delayedMessagein interfaceSmsBlend- Parameters:
phone- 接收短信的手机号message- 要发送的短信delayedTime- 延迟时间
-
delayedMessage
public final void delayedMessage(String phone, String templateId, LinkedHashMap<String,String> messages, Long delayedTime)
说明:使用自定义模板发送定时短信 sendMessage delayedMessage
- Specified by:
delayedMessagein interfaceSmsBlend- Parameters:
templateId- 模板idmessages- key为模板变量名称 value为模板变量值phone- 要发送的手机号delayedTime- 延迟的时间
-
delayMassTexting
public final void delayMassTexting(List<String> phones, String message, Long delayedTime)
说明:群发延迟短信 delayMassTexting
- Specified by:
delayMassTextingin interfaceSmsBlend- Parameters:
phones- 要群体发送的手机号码
-
delayMassTexting
public final void delayMassTexting(List<String> phones, String templateId, LinkedHashMap<String,String> messages, Long delayedTime)
说明:使用自定义模板发送群体延迟短信 delayMassTexting
- Specified by:
delayMassTextingin interfaceSmsBlend- Parameters:
phones- 要群体发送的手机号码templateId- 模板idmessages- key为模板变量名称 value为模板变量值delayedTime- 延迟的时间
-
errorResp
public SmsResponse errorResp(String errorMsg)
返回异常- Parameters:
errorMsg- 异常信息- Returns:
- SmsResponse
-
-