沙钢智慧能源系统后端代码
houzhongjian
2024-10-09 97edd72e5e6dbb134cedae4b72c95be8c948c5ec
提交 | 用户 | 时间
97edd7 1 package com.iailab.module.shasteel.framework.sms.core.client;
H 2
3 import com.iailab.framework.common.core.KeyValue;
4 import com.iailab.module.shasteel.framework.sms.core.client.dto.SmsReceiveRespDTO;
5 import com.iailab.module.shasteel.framework.sms.core.client.dto.SmsSendRespDTO;
6 import com.iailab.module.shasteel.framework.sms.core.client.dto.SmsTemplateRespDTO;
7
8 import java.util.List;
9
10 /**
11  * 短信客户端,用于对接各短信平台的 SDK,实现短信发送等功能
12  *
13  * @author zzf
14  * @since 2021/1/25 14:14
15  */
16 public interface SmsClient {
17
18     /**
19      * 获得渠道编号
20      *
21      * @return 渠道编号
22      */
23     Long getId();
24
25     /**
26      * 发送消息
27      *
28      * @param logId 日志编号
29      * @param mobile 手机号
30      * @param apiTemplateId 短信 API 的模板编号
31      * @param templateParams 短信模板参数。通过 List 数组,保证参数的顺序
32      * @return 短信发送结果
33      */
34     SmsSendRespDTO sendSms(Long logId, String mobile, String apiTemplateId,
35                            List<KeyValue<String, Object>> templateParams) throws Throwable;
36
37     /**
38      * 解析接收短信的接收结果
39      *
40      * @param text 结果
41      * @return 结果内容
42      * @throws Throwable 当解析 text 发生异常时,则会抛出异常
43      */
44     List<SmsReceiveRespDTO> parseSmsReceiveStatus(String text) throws Throwable;
45
46     /**
47      * 查询指定的短信模板
48      *
49      * @param apiTemplateId 短信 API 的模板编号
50      * @return 短信模板
51      */
52     SmsTemplateRespDTO getSmsTemplate(String apiTemplateId) throws Throwable;
53
54 }