|  |  |  | 
|---|
|  |  |  | import cn.hutool.core.util.XmlUtil; | 
|---|
|  |  |  | import cn.hutool.crypto.SecureUtil; | 
|---|
|  |  |  | import cn.hutool.http.HttpUtil; | 
|---|
|  |  |  | import cn.hutool.json.JSONObject; | 
|---|
|  |  |  | import cn.hutool.json.JSONUtil; | 
|---|
|  |  |  | import com.aliyun.dysmsapi20170525.models.SendSmsResponse; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  | import com.aliyun.tea.*; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | 
|---|
|  |  |  | @Slf4j | 
|---|
|  |  |  | public class ZzSmsSend { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static com.aliyun.dysmsapi20170525.Client createClient(String accessKeyId, String accessKeySecret) throws Exception { | 
|---|
|  |  |  | com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config() | 
|---|
|  |  |  | // 您的 AccessKey ID | 
|---|
|  |  |  | .setAccessKeyId(accessKeyId) | 
|---|
|  |  |  | // 您的 AccessKey Secret | 
|---|
|  |  |  | .setAccessKeySecret(accessKeySecret); | 
|---|
|  |  |  | // 访问的域名 | 
|---|
|  |  |  | config.endpoint = "dysmsapi.aliyuncs.com"; | 
|---|
|  |  |  | return new com.aliyun.dysmsapi20170525.Client(config); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private static final String SIGNNAME = "BLNKA"; | 
|---|
|  |  |  | //    private static final String TEMPLATECODE = "SMS_291555713"; | 
|---|
|  |  |  | private static final String TEMPLATECODE = "SMS_464995315"; | 
|---|
|  |  |  | public static boolean sendALiYun(String phone,String TemplateParam){ | 
|---|
|  |  |  | com.aliyun.dysmsapi20170525.Client client = null; | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | client = createClient("LTAI5tKRA3S29dWTRMxLFNdJ", "hXBMw2VASDwgGnXo6jgBYaflhE33i9"); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | e.printStackTrace(); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | com.aliyun.dysmsapi20170525.models.SendSmsRequest sendSmsRequest = new com.aliyun.dysmsapi20170525.models.SendSmsRequest() | 
|---|
|  |  |  | //                .setSignName("阿里云短信测试") | 
|---|
|  |  |  | .setSignName(SIGNNAME) | 
|---|
|  |  |  | //                .setTemplateCode("SMS_154950909") | 
|---|
|  |  |  | .setTemplateCode(TEMPLATECODE) | 
|---|
|  |  |  | //                .setPhoneNumbers("15274802129") | 
|---|
|  |  |  | .setPhoneNumbers(phone) | 
|---|
|  |  |  | //                .setTemplateParam("{\"code\":\"1234\"}"); | 
|---|
|  |  |  | .setTemplateParam("{\"code\":\""+TemplateParam+"\"}"); | 
|---|
|  |  |  | com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions(); | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | // 复制代码运行请自行打印 API 的返回值 | 
|---|
|  |  |  | SendSmsResponse sendSmsResponse = client.sendSmsWithOptions(sendSmsRequest, runtime); | 
|---|
|  |  |  | log.info("短信发送:{}", sendSmsResponse); | 
|---|
|  |  |  | JSONObject jsonObject = JSONUtil.parseObj(sendSmsResponse); | 
|---|
|  |  |  | System.out.print(jsonObject); | 
|---|
|  |  |  | if(200 == sendSmsResponse.getStatusCode()) { | 
|---|
|  |  |  | return true; | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (TeaException error) { | 
|---|
|  |  |  | // 如有需要,请打印 error | 
|---|
|  |  |  | com.aliyun.teautil.Common.assertAsString(error.message); | 
|---|
|  |  |  | } catch (Exception _error) { | 
|---|
|  |  |  | TeaException error = new TeaException(_error.getMessage(), _error); | 
|---|
|  |  |  | // 如有需要,请打印 error | 
|---|
|  |  |  | com.aliyun.teautil.Common.assertAsString(error.message); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private static final String URL = "http://zzsms365.com/v2sms.aspx?action=send"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private static final String USER_ID = "1654"; | 
|---|
|  |  |  | 
|---|
|  |  |  | private static final String PWD = "1369815429"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static boolean sendVerifyCode(String telphone, String code, int time) { | 
|---|
|  |  |  | String content = "【壹元团】您的验证码是{},请在{}分钟内输入,请勿泄露给他人,如非本人操作,请及时修改密码。"; | 
|---|
|  |  |  | String content = "【美澳】您的验证码是{},请在{}分钟内输入,请勿泄露给他人,如非本人操作,请及时修改密码。"; | 
|---|
|  |  |  | return send(telphone, StrUtil.format(content, code, time)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static void main(String[] args) { | 
|---|
|  |  |  | Map<String, Object> data = new HashMap<>(); | 
|---|
|  |  |  | Long time = System.currentTimeMillis(); | 
|---|
|  |  |  | data.put("userid", USER_ID); | 
|---|
|  |  |  | data.put("timestamp", time); | 
|---|
|  |  |  | data.put("mobile", "15773002834"); | 
|---|
|  |  |  | String signStr = ACCOUNT + PWD + time; | 
|---|
|  |  |  | String sign = SecureUtil.md5(signStr); | 
|---|
|  |  |  | data.put("sign", sign); | 
|---|
|  |  |  | data.put("content", "【HiBit】尊敬的用户,恭喜您于2010-03-25有一笔充值已成功到账,充值数量为10。"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String post = HttpUtil.post(URL, data); | 
|---|
|  |  |  | System.out.println(post); | 
|---|
|  |  |  | //        Map<String, Object> data = new HashMap<>(); | 
|---|
|  |  |  | //        Long time = System.currentTimeMillis(); | 
|---|
|  |  |  | //        data.put("userid", USER_ID); | 
|---|
|  |  |  | //        data.put("timestamp", time); | 
|---|
|  |  |  | //        data.put("mobile", "15773002834"); | 
|---|
|  |  |  | //        String signStr = ACCOUNT + PWD + time; | 
|---|
|  |  |  | //        String sign = SecureUtil.md5(signStr); | 
|---|
|  |  |  | //        data.put("sign", sign); | 
|---|
|  |  |  | //        data.put("content", "【HiBit】尊敬的用户,恭喜您于2010-03-25有一笔充值已成功到账,充值数量为10。"); | 
|---|
|  |  |  | // | 
|---|
|  |  |  | //        String post = HttpUtil.post(URL, data); | 
|---|
|  |  |  | //        System.out.println(post); | 
|---|
|  |  |  | boolean b = sendALiYun( "15274802129", "123456"); | 
|---|
|  |  |  | System.out.println(b); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|