puzhibing
2023-12-22 d45923a8b023f9a010fc75f53b13ffca01c573fa
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/SMSUtil.java
@@ -1,9 +1,17 @@
package com.stylefeng.guns.modular.system.util;
import cn.hutool.http.ContentType;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.twilio.Twilio;
import com.twilio.rest.api.v2010.account.Message;
import com.twilio.type.PhoneNumber;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.net.ssl.*;
import java.io.*;
@@ -16,6 +24,7 @@
import java.text.SimpleDateFormat;
import java.util.*;
@Component
public class SMSUtil {
    //无需修改,用于格式化鉴权头域,给"X-WSSE"参数赋值
@@ -267,29 +276,34 @@
    }
    public static void main(String[] args) {
//        try {
//            SMSUtil.send_huawei_sms("b793ae3d41a049059197bfe92cf8bc83", "+233500666666", "[\"1234\"]");
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
        // Find your Account SID and Auth Token at twilio.com/console
        // and set the environment variables. See http://twil.io/secure
        String ACCOUNT_SID = "AC1fd05e898bd59d17ba72db621afca537";
        String AUTH_TOKEN = "7cee1a6cb0e2936a9037be577b1ffe57";
        try {
            Twilio.init(ACCOUNT_SID, AUTH_TOKEN);
            Message message = Message.creator(
                    new PhoneNumber("+233570111999"),
                    new PhoneNumber("+16672740015"),
                    "This is the ship that made the Kessel Run in fourteen parsecs?"
            ).create();
            System.out.println(message.getSid() + "--->" + message.getStatus().toString());
        }catch (Exception e){
            e.printStackTrace();
    /**
     * Cellulant短信
     * @param toPhone
     * @param msg
     * @return
     */
    public boolean sendCellulantMessage(String toPhone, String msg){
        String url = "https://sms.nalosolutions.com/smsbackend/Nal_resl/send-message/";
        HttpRequest post = HttpUtil.createPost(url);
        post.contentType(ContentType.JSON.toString());
        JSONObject params = new JSONObject();
        params.put("key", "ru#0flkf3993qh!!rg!@y4)nhwi08c#tg_vasek!ja)kvfnfjyoljoz(@nai(jkf");
        params.put("msisdn", toPhone);
        params.put("message", msg);
        params.put("sender_id", "I-GO");
        post.body(params.toJSONString());
        HttpResponse execute = post.execute();
        String body = execute.body();
        execute.close();
        JSONObject jsonObject = JSON.parseObject(body);
        Integer status = jsonObject.getInteger("status");
        if(null != status && 1701 == status){
            return true;
        }else{
            System.err.println("短信发送失败:" + jsonObject.toJSONString());
            return false;
        }
    }
}