我们使用 Java 1.6 和 logica_smpp.1.3.7.jar
我的问题是连接消息。我们一直使用 DeliverSM 类中的 hasSarMsgRefNum 方法来表明这是一个多消息部分。
然而,这种情况发生了变化,我们现在接收作为 DeliverSM 一部分的 GSM 短消息服务用户数据。
我可以得到 DeliverSM 的 esm_class,它向我表明这是一个串联的消息部分。我在检索短消息字段开头的实际用户数据标题信息时遇到了困难。
这就是我获得UDHI的方式:
byte udhi = (byte)Data.SM_UDH_GSM;
if (del.getEsmClass() == udhi) {
log.debug("This is a concatenated message part!");
}
这就是我获得短消息的方式:
byte[] bytes = del.getShortMessage().getBytes();
但是,当我将其转换为字符串时,它看起来像这样:
^E^@^C�^B^This is part one of a test message...
我需要知道如何转换第一部分。