crmeb Java集成第三方sdk之阿里短信

PlayJavaCode是一个维护中的Java工具类和示例代码仓库,包含Springboot基础项目及阿里云SDK使用示例,如短信服务。提供了详细的使用方法,包括如何根据模板创建请求对象并发送批量短信。
摘要由CSDN通过智能技术生成

PlayJavaCode 这个是一个二开示例的代码库,会长期维护更新

一个综合java工具类代码和示例的仓库
有需求或者错误的可以在项目上提issue

gitHub https://github.com/stivepeimm/PlayJavaCode
gitee https://gitee.com/stivepeim/PlayJavaCode

springbootDemo 一个基础的Springboot项目示例 springbootAliSDK 一个准备综合ali常用SDK的项目示例

阿里短信使用示例
使用方法
申请对应的短信模版
如示例中alisms.request对象类死,根据申请的模版变量创建自己的request对象
如:crmeb 您有 o r d e r 的 待 支 付 订 单 , 请 在 {order}的待支付订单,请在 order{time}时间内支付,过期将自动关闭
request内容应该为

1.private String order;
2.private String time;

实际指定的发送短信方法,这里默认使用批量发送的方式,一条多条都能发。

/**
 *  根据短信模版Code 发送短信
 * @param smsTempCode       模板Code
 * @param aliSmsRequests    自定义组装对象 这个集合对象中的pramObj就是你的参数对象,和code是对应的,自行根据ali云申请的模板自己创建
 * @throws Exception        异常信息
 */
public static void SendAliSms(String smsTempCode,List<AliSmsRequest> aliSmsRequests) {
    if(null == aliSmsRequests) return;
    if (aliSmsRequests.size() == 0) return;
    // 根据业务参数拆分成API可用数据参数
    List<String> phones = new ArrayList<>();
    List<String> signNames = new ArrayList<>();
    List<Object> pramObj = new ArrayList<>();
    for (AliSmsRequest aliSmsRequest : aliSmsRequests) {
        phones.add(aliSmsRequest.getPhone());
        signNames.add(aliSmsRequest.getSignName());
        pramObj.add(aliSmsRequest.getSmsPramObj());
    }
    SendBatchSmsRequest sendBatchSmsRequest = new SendBatchSmsRequest()
            .setPhoneNumberJson(JSON.toJSONString(phones))
            .setSignNameJson(JSON.toJSONString(signNames))
            .setTemplateCode(smsTempCode)
            .setTemplateParamJson(JSON.toJSONString(pramObj));
    com.aliyun.dysmsapi20170525.Client client = null;
    try {
        client = createClient(AK, AS);
        SendBatchSmsResponse sendBatchSmsResponse = client.sendBatchSms(sendBatchSmsRequest);
        logger.info("Send aliSms success",sendBatchSmsResponse);
    } catch (Exception exception) {
        logger.error("Send Ali Sms Error:",exception.getMessage());
    }
}

怎么调用呢?

// 组装邮寄短信参数
AliSmsPostRequest aliSmsPostRequest =
        new AliSmsPostRequest(time,
                orderInfoVo.getInfo().getProductInfo().getStoreName(),orderInfoVo.getInfo().getCartNum()+"");
aliSmsRequest.setPhone(storeOrder.getUserPhone());
aliSmsRequest.setSignName(AliSmsUtils.ALiSmsTempSign);
aliSmsRequest.setSmsPramObj(aliSmsPostRequest);
pramList.add(aliSmsRequest);
logger.info("即将发短信的参数:"+JSON.toJSONString(pramList));
AliSmsUtils.SendAliSms(AliSmsUtils.AliSmsTempCodeSendPost,pramList);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值