Long Message Receiving Issue - SMPP Server

.NET library for SMPP protocol
Locked
hishhash2
Posts: 17
Joined: Mon Jan 30, 2012 11:24 am

Long Message Receiving Issue - SMPP Server

Post by hishhash2 » Thu Mar 08, 2012 7:57 am

I am using both SMPP Client & SMPP server & i have the below scenario,

Using Inetlab SMPP client I am submitting a long message using SubmitMode.ShortMessage. From the SMPP server side i am receiving each portion of the message as seperate _smppServer_evClientSubmitSm events. Below is the Screenshot of the watch i have added to the SubmitSm data object.

Image

It is clear from the UserDataPdu.Headers that there are 2 segments and the current is segment number and also a sequence number also(from above screenshot it is 158).

Is there a an easy way to parse the Header and get the Sequence number.

When the submit mode from SMPP Client is SubmitMode.Payload then i can traverse TLV parameters from Optional parameter. But when the submit mode is SubmitMode.ShortMessage then the data.Optional is null. Then the sequence and segment numbers comes with the data.UserdataPdu.Headers. My question is how do i parse this header to take out the sequence numbers. Isn't there a chance that the data.UserdataPdu.Headers can have other information too...

I am stuck at this point, hoping someone must have come across the same issue.
alt
Site Admin
Posts: 985
Joined: Tue Apr 25, 2006 9:45 am

Re: Long Message Receiving Issue - SMPP Server

Post by alt » Tue Mar 13, 2012 8:44 pm

you can get concatenation parameters from
submitSm.UserDataPdu.Headers[InformationElementIdentifiers.ConcatenatedShortMessages8bit]
or
submitSm.UserDataPdu.Headers[InformationElementIdentifiers.ConcatenatedShortMessages16bit]
or from TLV parameters
submitSm.Optional[Common.OptionalTags.SARReferenceNumber]
submitSm.Optional[Common.OptionalTags.SARTotalSegments]
submitSm.Optional[Common.OptionalTags.SARSequenceNumber]

In Inetlab.SMPP 1.1 you will be able to use Concatenation property in SubmitSm class. Also new version will provide MessageComposer class.
It helps to get full message text from the sequence of message parts.
Locked