我正在使用cloudhopper-smpp通过SMPP接收SMS。在实现了DefaultSmppSessionHandler之后,SessionHandler将接收PDU请求(在覆盖的firePduRequestReceived方法中)。

是否有任何帮助程序类/实用程序从PduRequest类型的deliver_sm中提取SMS?
PduRequest中找不到任何吸气剂来访问SMS。

最佳答案

找到了答案。

        if (pduRequest.getCommandId() == SmppConstants.CMD_ID_DELIVER_SM) {
         DeliverSm mo = (DeliverSm) pduRequest;
         int length = mo.getShortMessageLength();
         Address source_address = mo.getSourceAddress();
         Address dest_address = mo.getDestAddress();
         byte[] shortMessage = mo.getShortMessage();
         String SMS= new String(shortMessage);
        }

09-11 19:51