📄 smsmsgout.java
字号:
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name: SMSMsgOut.java
package org.cross.sms.msg;
import java.io.PrintStream;
import java.util.Date;
// Referenced classes of package org.cross.sms.msg:
// SMSMsg, TP_Address_SMSC, TP_FirstOctet, TP_Address_Da_Oa,
// TP_Dsc_CharSet, TP_UDH, TP_UDH_EI_Sar, _CharacterUtil,
// SmsUtil
public class SMSMsgOut extends SMSMsg
{
public SMSMsgOut()
{
super(2, null, null, null, null, -1);
m_withUserHeader = false;
setSendDate(null);
setDate(new Date());
}
public SMSMsgOut(String recipient, String text)
{
super(2, new Date(), null, recipient, text, -1);
m_withUserHeader = false;
if(_CharacterUtil.isContainsChineseChar(text))
setMessageEncoding("gsm_unicode");
setSendDate(null);
setDate(new Date());
}
public void setSendDate(Date date)
{
dispatchDate = date;
}
public Date getSendDate()
{
return dispatchDate;
}
public String getPdu()
{
String pdu = getSMSHeader();
String str2;
if(m_withUserHeader)
{
str2 = getDataHeader();
str2 = str2 + getUserDataPdu();
} else
{
str2 = getUserDataPdu();
}
String str1 = _CharacterUtil.getPduHexLength(str2, messageEncoding);
pdu = pdu + str1 + str2;
return pdu.toUpperCase();
}
public String getSMSHeader()
{
String pdu = "";
TP_Address_SMSC smsc = new TP_Address_SMSC();
smsc.setPhone(SmsUtil.SMSC_CODE);
pdu = pdu + smsc.getPdu();
TP_FirstOctet first = new TP_FirstOctet();
first.set(m_withUserHeader, false);
pdu = pdu + first.getPdu();
pdu = pdu + "00";
TP_Address_Da_Oa da = new TP_Address_Da_Oa();
da.setPhone(recipient);
pdu = pdu + da.getPdu();
pdu = pdu + "00";
pdu = pdu + getTCSPdu();
pdu = pdu + "FF";
return pdu;
}
public String getTCSPdu()
{
TP_Dsc_CharSet encoding = new TP_Dsc_CharSet();
encoding.setMessageEncoding(messageEncoding);
return encoding.getPdu();
}
public String getDataHeader()
{
TP_UDH h = new TP_UDH();
TP_UDH_EI_Sar sar = new TP_UDH_EI_Sar();
sar.max = max;
sar.no = no;
sar.refno = indication;
h.addEI(sar);
return h.getPdu();
}
public String getUserDataPdu()
{
String tmp = _CharacterUtil.stringToHexString(text, messageEncoding);
if(m_withUserHeader && messageEncoding.equals("gsm_default"))
tmp = _CharacterUtil.offsetHexString(tmp, 1);
return tmp;
}
public static void main(String args[])
{
SMSMsgOut m = new SMSMsgOut("", "liuxk");
System.out.println(m.getMessageEncoding());
}
private Date dispatchDate;
public static int msgIndicator = 1;
boolean m_withUserHeader;
int max;
int no;
int indication;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -