Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从DeliverSM(logica smpp)和java检索UDH_Java_Smpp - Fatal编程技术网

如何从DeliverSM(logica smpp)和java检索UDH

如何从DeliverSM(logica smpp)和java检索UDH,java,smpp,Java,Smpp,我们使用Java1.6和logica_smpp.1.3.7.jar 我的问题是连接消息。我们总是在DeliverSM类中使用hasSarMsgRefNum方法来表示这是一个多消息部分 然而,这一点已经改变,我们现在接收GSM短消息服务用户数据,作为DeliverSM的一部分 我可以得到DeliverSM的esm_类,它向我指示这是一个连接的消息部分。我在检索shortMessage字段开头的实际用户数据头信息时遇到困难 这就是我得到乌迪的方式: byte udhi = (byte)Data.

我们使用Java1.6和logica_smpp.1.3.7.jar

我的问题是连接消息。我们总是在DeliverSM类中使用hasSarMsgRefNum方法来表示这是一个多消息部分

然而,这一点已经改变,我们现在接收GSM短消息服务用户数据,作为DeliverSM的一部分

我可以得到DeliverSM的esm_类,它向我指示这是一个连接的消息部分。我在检索shortMessage字段开头的实际用户数据头信息时遇到困难

这就是我得到乌迪的方式:

  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...
我需要知道如何转换第一部分。

我解决了这个问题

我得到前5个字符(标题信息)

等等

第三个字符是消息参考号。 第四个字符是全部部分。 第五个字符是当前部分

我希望这对将来的人有所帮助:)

  int char1 = del.getShortMessage().charAt(1);
  int char2 = del.getShortMessage().charAt(2);