package cc.mrbird.febs.common.utils; 
 | 
  
 | 
import cn.hutool.core.date.DatePattern; 
 | 
import cn.hutool.core.date.DateUtil; 
 | 
import cn.hutool.core.util.StrUtil; 
 | 
import cn.hutool.core.util.XmlUtil; 
 | 
import cn.hutool.http.HttpUtil; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
  
 | 
import java.util.Date; 
 | 
import java.util.HashMap; 
 | 
  
 | 
/** 
 | 
 * @author wzy 
 | 
 * @date 2020-07-14 
 | 
 **/ 
 | 
@Slf4j 
 | 
public class Sms106Send { 
 | 
  
 | 
    private static final String URL = "http://www.qf106.com/sms.aspx"; 
 | 
    private static final String ID = "16832"; 
 | 
    private static final String ACCOUNT = "MashiMaro"; 
 | 
    private static final String PASSWORD = "123456"; 
 | 
  
 | 
  
 | 
    /** 
 | 
     * @param phone 手机号 
 | 
     * @param code  验证码 
 | 
     * @param time  失效时间 
 | 
     * @return 
 | 
     */ 
 | 
    public static boolean sendVerifyCode(String phone, String code, int time) { 
 | 
        String msg = "您的验证码是{},请在{}分钟内输入,请勿泄露给他人,如非本人操作,请及时修改密码。"; 
 | 
        String content = StrUtil.format(msg, code, time); 
 | 
        return request(phone, content, "验证码"); 
 | 
    } 
 | 
  
 | 
    private static boolean request(String phone, String content, String tagName) { 
 | 
        HashMap<String, Object> param = new HashMap<>(); 
 | 
        param.put("userid", ID); 
 | 
        param.put("account", ACCOUNT); 
 | 
        param.put("password", PASSWORD); 
 | 
        param.put("mobile", phone); 
 | 
        param.put("content", content); 
 | 
        param.put("sendTime", DateUtil.format(DateUtil.offsetMinute(DateUtil.date(), -60), DatePattern.NORM_DATETIME_PATTERN)); 
 | 
        param.put("action", "send"); 
 | 
        param.put("checkcontent", 0); 
 | 
        param.put("taskName", tagName); 
 | 
        param.put("countnumber", 1); 
 | 
        param.put("mobilenumber", 1); 
 | 
        param.put("telephonenumber", 0); 
 | 
  
 | 
        String response = HttpUtil.post(URL, param); 
 | 
        //log.info("短信发送:{}, {}", tagName, response); 
 | 
        if ("Success".equals(XmlUtil.xmlToMap(response).get("returnstatus"))) { 
 | 
            return true; 
 | 
        } else { 
 | 
//            throw new GlobalException((String) XmlUtil.xmlToMap(response).get("message")); 
 | 
            return false; 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public static void main(String[] args) { 
 | 
  
 | 
        String msg = "您的验证码是{},请在{}分钟内输入,请勿泄露给他人,如非本人操作,请及时修改密码。"; 
 | 
        String content = StrUtil.format(msg, "123456", 2); 
 | 
        HashMap<String, Object> param = new HashMap<>(); 
 | 
        param.put("userid", ID); 
 | 
        param.put("account", ACCOUNT); 
 | 
        param.put("password", PASSWORD); 
 | 
        param.put("mobile", ""); 
 | 
        param.put("content", content); 
 | 
        param.put("sendTime", DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN)); 
 | 
        param.put("action", "send"); 
 | 
        param.put("checkcontent", 0); 
 | 
        param.put("taskName", "验证码"); 
 | 
        param.put("countnumber", 1); 
 | 
        param.put("mobilenumber", 1); 
 | 
        param.put("telephonenumber", 0); 
 | 
  
 | 
        String response = HttpUtil.post(URL, param); 
 | 
    } 
 | 
  
 | 
} 
 |