Concatenation using payload

Concatenation using payload SearchSearch
Author Message
Johanes
New member
Username: Otnateos

Post Number: 17
Registered: 04-2010
Posted on Wednesday, December 01, 2010 - 05:11 am:   

Hi,

I am having problem with sending concatenation to NowSMS using payload. If I send long message which can be split into 2 sms, it works ok, but not with 3 sms.

I have enabled the debugging and I can see NowSMS receives the full message from my SMSC client but it cut the message randomly if the message is more than 3 sms
text/plain
smppdebug-part.txt (3.5 k)
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2679
Registered: 08-2008
Posted on Wednesday, December 01, 2010 - 06:07 pm:   

Hi Johanes,

This is not random.

Your message_payload TLV parameter indicates that the payload is 32 (0x20) bytes in length. So NowSMS only sees the first 32 characters of the message and interprets the rest of the SMPP PDU as invalid TLV parameters to be ignored.

--
Des
NowSMS Support
Johanes
New member
Username: Otnateos

Post Number: 18
Registered: 04-2010
Posted on Thursday, December 02, 2010 - 12:10 am:   

Hi Des,

Can you let me know which part of the logging indicates this?

I have tested as long as the message payload less than 256 octets it will work, but anything more than that is cut off. I attach debug for my test.
- first one 300 chars sms, got forwarded only 44 chars
- 2nd one 305 chars sms, got forwarded 49 chars

It seems like it ignores about the last 256 chars for anything submitted with message payload.


text/plainsms debug for long message
concatenation-issue-2.txt (8.4 k)
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 2684
Registered: 08-2008
Posted on Thursday, December 02, 2010 - 04:14 pm:   

Hi Johanes,

I tried to give you a quick reply last night, but I don't see it this afternoon. Apologies for that.

Referring to your first example ...

04 24 is the Tag for the message_payload TLV parameter

00 20 is the Length for the message_payload TLV parameter

NowSMS interprets this as meaning that your content is 0x20 (32) characters long, because that is the length indicated for the parameter. NowSMS then sees the rest of the message as invalid TLV parameters.

I think you meant for the length to be 01 20 ... or 0x120 ... or 288 characters ... but you lost the high byte.

In your second example, I see the same pattern of problems. The high byte of the length field is always 00 in your submissions. As long as that is the case, you'll never see more than 255 characters accepted, as that's the most that can be specified in a single byte.

--
Des
NowSMS Support