Search code examples
c#smspdu

multipart sms sending failed with AT commands


I send one part pdu sms by AT commands, but when my message is more than 70 character my sms didn't sent.
My text body is :

نام و نام خانوادگی : احسان صادقی
آخرین اعتبار موجود در کارت : 1597739 ریال
تاریخ : 1393/11/07
ساعت : 12:7

and pdu that I create is :

PDU Number:1    Length For AT:153
079189390500410051000C918919229556870008FF8B060804945B02010646062706450020064800200646062706450020062E0627064606480627062F06AF06CC0020003A00200627062D063306270646002006350627062F064206CC000D000A0622062E063106CC0646002006270639062A062806270631002006450648062C0648062F0020062F0631002006A906270631062A0020003A0020003100350039

PDU Number:2    Length For AT:105    079189390500410051000C918919229556870008FF5B060804945B020200370037003300390020063106CC06270644000D000A062A0627063106CC062E0020003A00200031003300390033002F00310031002F00300037000D000A063306270639062A0020003A002000310032003A0037

this new pdu didn't sent and when I split message to 70 character parts and send them individually they sent but received as separate message in phone.


Solution

  • You can not send message that has length greater then 70 uni-code (16 bits) or 140 8-Bit characters or 160, 7 bit (GSM Encoded) characters in a SMS. If you have more then 70 character then you have to send two SMS but they will be treated as two separate SMS to make a single SMS for characters more than 70 uni code characters you need to use concatenated SMS using a User Data Header. This article explains about the structure of concatenated messages.