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

camel-smpp - fails to correctly send messages that require UCS-2 encoding

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 2.12.2
    • 2.13.4, 2.14.1, 2.15.0
    • camel-smpp
    • None
    • any

    • Patch Available
    • Unknown

    Description

      If I try to send a string without any config options or headers to indicate alphabet/data coding/encoding, it appears to be sent using an 8 bit character set even if a 16 bit UCS-2 encoding is required.

      If I try to set CamelSmppAlphabet=-1 (for unknown) as a header, an invalid message is sent to the SMPP peer and it is rejected with SMPP error code 00000401

      If I try to set alphabet=-1 in the endpoint config though and if I also set CamelSmppDataCoding=8 then it correctly sends a UCS-2 message.

      Looking at the code (particularly the method SmppSmCommand.determineCharset()), it seems that it can ONLY send UCS-2 if alphabet == UNKNOWN_ALPHABET. Using the value UNKNOWN_ALPHABET (-1) as a header triggers the problem with the SMPP peer so I can only set that value in the endpoint config. This determineCharset() method should also recognise alphabet == ALPHA_UCS2

      Attachments

        1. determineCharset_fix.patch
          1 kB
          Daniel Pocock

        Activity

          People

            njiang Willem Jiang
            daniel.pocock Daniel Pocock
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: