PDA

View Full Version : First Octet Of Sms Deliver Message



reza6384
پنج شنبه 29 مرداد 1388, 17:35 عصر
سلام. در بخش انکدینگ و دیکدینگ PDU این بخش حس میکنم به طور کامل بیان نشده و باید یه کم روش بحث کنیم.



برای انکدینگ ابتدا شما باید نوع پیام را تشخیص بدین که میتونه یکی از انواع زیر باشه
SMS RECEIVED
SMS STATUS_REPORT
SMS SUBMIT
EMS RECEIVED
EMS SUBMIT
بعد از تشخیص شروع به خواندن پیام با پارامترهای موجود در نوع پیام میکنیم
برای تشخیص نوع پیام FirstOctet پیام را که در واقع همون دو بایت بعد از شماره مرکز تلفن هستند را بخونید
دو بیت آخر برای ما مهمه که در واقع همهون عدد 3 میشه 00000011
به اضافه بیت 7 تم که 64 میشه 01000000
اگه بیت اول و دوم و هفتم 1 باشن 010000011 نوع پیام ما EMS SUBMIT میشه در غیر این صورت شما
عدد دو بیت آول و بیت هفتم را با هم جمع کنید تا نوع پیام مشخص بشه
که با این حساب
SMS RECEIVED = 0
SMS STATUS REPORT = 2
SMS SUBMIT = 1
EMS RECEIVED = 64
EMS SUBMIT = 65



این رو noorsoft عزیز نوشتند. اما من یه کم مشکل دارم. اینجا هم در یک صفحه وب که این رو توضیح داده ، اما اون هم کامل نگفته :

http://www.dreamfabric.com/sms/deliver_fo.html

مثلا

در کد F9 که میشه 11111001 طبق چیزی که بالا نوشته شده چون بیت سوم از چپ هست یک پیام چند بخشیه در صورتی که اینطوری نیست. طبق چیزی هم که جناب noorsoft گفتند جمعش میشه 65 یعنی EMS Submit . بیت قرمز نشوندهنده MMS هست یعنی MoreMessages To Send.
ولی این مربوط به یک sms تک بخشی هست.

در ضمن لطفا بگین که فرق SMS Submit با SMS Deliver چیه.

mohsenm66
شنبه 02 آبان 1388, 11:36 صبح
من هم همين مشكل را دارم
ممنون ميشم كسي جواب بده

noorsoft
جمعه 08 آبان 1388, 00:53 صبح
من اشکال شما را درست متوجه نشدم میشه نمونه pdu را بصورت کامل قرار بدین تا روی یک نمونه عملی کار کنیم