dataCoding not working properly in camel-smpp
---------------------------------------------
Key: CAMEL-4491
URL: https://issues.apache.org/jira/browse/CAMEL-4491
Project: Camel
Issue Type: Bug
Components: camel-smpp
Affects Versions: 2.8.0, 2.7.0, 2.9.0
Reporter: Jonas Bengtsson
Attachments: patch.txt
This is related to CAMEL-3093.
The way the dataCoding option works is incorrect (or at least very confusing).
After reading the documentation I was under the impression that the given value
would be used in the data_coding-part of the submit_sm PDU-packets, but this is
not the case. When 0 is given as dataCoding 0x11 (hexadecimal) is sent in the
PDU-packets. If 4 is specified 0x15 is sent, and if 8 is specified then 0x19 is
sent. This is caused in SmppProducer by the use of the constructor with several
parameters:
{code}
new GeneralDataCoding(
false,
true,
MessageClass.CLASS1,
Alphabet.valueOf(submitSm.getDataCoding()))
{code}
It constructs a DCS-value as defined in the GSM 03.38 specification, not as
specified in the SMPP specification. 0x11 is for example a valid DCS-value in
GSM 03.38, but is reserved in SMPP. I think that it would be better and more
logical if the constructor with one parameter was used instead:
{code}
new GeneralDataCoding(submitSm.getDataCoding())
{code}
This is more flexibal (DCS-values can still be created manually) and is a
better default value (0 instead of 0x11). With my SMS-center (this probably
varies between centers though) a data_coding of 0x11 forces me to do the 7-bit
GSM decoding myself. When 0 is specified (or 3) all I have to do is to pass it
ISO-8859-1 encoded bytes.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira