當前位置:名人名言大全網 - 短信平臺 - 求助java 如何連 cmpp 2.0 的問題

求助java 如何連 cmpp 2.0 的問題

public void smsDemo(String content, String phone) throws IOException {

Args smsArgs = new Cfg("config.xml", false).getArgs("ismg");

smsArgs.set("source-addr", "XXXX");

smsArgs.set("shared-secret", "XXXX");

smsArgs.set("port", 7890);

smsArgs.set("host", "XXXXXX");

smsArgs.set("heartbeat-interval", 10);

smsArgs.set("reconnect-interval", 30);

smsArgs.set("heartbeat-noresponseout", 5);

smsArgs.set("transaction-timeout", 20);

smsArgs.set("version", 1);

smsArgs.set("debug", false);

CMPPSMProxy cmppSmProxy = new CMPPSMProxy(smsArgs);

String[] rcvMobile = phone.split(",");

CMPPSubmitMessage submitMsg = new CMPPSubmitMessage(1, // 相同Msg_id消息的總條數

1, // 相同Msg_id的消息序號

1, // 需要狀態報告

1, // 信息類別

"websms", // 業務類型,應與Infox對應

1, // 計費用戶類型,0:對目的終端MSISDN計費,1:對源終端MSISDN計費,2:對SP計費,3:本字段無效

"", // 被計費用戶的號碼(因是對主叫計費,所以此段填寫了空)

0, // GSM協議類型

0, // GSM協議類型

1, // 信息的CMPP格式類型: 0: ASCII格式, 1: UCS2格式

"websms", // 信息內容來源,對應於登錄Infox的帳號

"02", // 資費類別,“短消息類型”為“發送”,對“計費用戶號碼”不計信息費,此類話單僅用於核減SP對稱的信道費

"10", // 資費代碼,以分為單位

new java.util.Date(System.currentTimeMillis() + 2 * 24 * 60

* 60 * 1000), // 存活有效期,當前時間+2天

new java.util.Date(System.currentTimeMillis()), // 定時發送時間(null:立即發送)

"8888", // 源終端MSISDN號碼(為SP的服務代碼或前綴, 為服務代碼的長號碼,

// 網關將該號碼完整的填到SMPP協議相應的destination_address字段,

// 該號碼最終在用戶手機上顯示為短消息的主叫號碼) (沒有可以為空)

rcvMobile, // 接收業務的MSISDN號碼(數組)

content.getBytes("utf-8"), "");

CMPPSubmitRepMessage rep = (CMPPSubmitRepMessage) cmppSmProxy

.send(submitMsg);

if (rep != null) {

prlint(phone + ":發送結果smsDemo: " + rep.getResult()

+ ",rep.getSequenceId():" + rep.getSequenceId()

+ ",rep.getMsgId():" + rep.getMsgId()

+ ",rep.getCommandId():" + rep.getCommandId()

+ new Timestamp(System.currentTimeMillis()));

}

cmppSmProxy.close();

System.out.println("執行完畢smsDemo:" + rep);

}