Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-16134

camel-smpp - Registered delivery flag on 1 of N segments of a long SMS

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 3.11.0
    • camel-smpp
    • None
    • Unknown

    Description

      When sending a long SMS (multipart) with the registered delivery receipt flag, each and every segment would be registered with the DLR flag.

      This makes the SMSC send a DLR for every segment of the message and you have to make a bigger effort on keeping their state, so you can merge the final state of the whole SMS.

      I would like to request an `SmppConfiguration` option (i.e DlrOnLast) that would enable the DLR flag only on the last segment of the long SMS.

      A possible work-around that should occur on the SubmitSm and SubmitMulti:

       

      // i.e on SmppSubmitSmCommand:70
      SubmitSm[] submitSms = new SubmitSm[segments.length];
      byte registeredDelivery = submitSms[0].getRegisteredDelivery();
      
      for(int i = 0; i < segments.length; ++i) {
          SubmitSm submitSm = SmppUtils.copySubmitSm(template);
          submitSm.setShortMessage(segments[i]);
          if (this.config.getDlrOnLast()) {
              submitSm.setSmscDelReceiptNotRequested();
          }
          submitSms[i] = submitSm;
      }
      submitSms[segments.length - 1].setRegisteredDelivery(registeredDelivery);
      
      return submitSms;
      

      A possible better solution incorporating this would be to remove the DLR flag from the submit-sm template, at the first place.

       

       

      Attachments

        Activity

          People

            Unassigned Unassigned
            memas.kal Gerasimos Kalouris
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: