BroadNet
الأساسيات مبتدئ

أساسيات SMS

كيف تُبنى رسالة SMS وتُرمَّز وتُقسَّم — من حد الـ160 حرفًا ومعيار GSM 03.38 إلى إيصالات التسليم والفرق بين A2P وP2P.

5 الدروس3 دقائق قراءةقائم على المعايير · بوتيرة ذاتية
مخططكيفية وصول رسالة A2P إلى الهاتف
  1. تطبيقكيتم الإرسال عبر REST API أو SMPP
  2. منصة BroadNetتتحقق من كل رسالة وتوجّهها وتحتسب تكلفتها
  3. SMSC الخاص بالمشغّلاتصال مباشر مع المشغّل
  4. هاتف المشتركيتم تسليم الرسالة
يعود إيصال التسليم (DLR) عبر المسار نفسه إلى الـ webhook الخاص بك
الدرس 01

بنية رسالة SMS

SMS — خدمة الرسائل القصيرة — جرى توحيد معاييرها كجزء من GSM، وتحمل حمولة (payload) مقدارها 140 بايت. هذا الحجم الثابت هو أصل كل حد لطول الحروف تصادفه: فكل ما يتعلق بطول SMS هو في حقيقته مسألة احتواء ضمن 140 بايت.

تنتقل الرسالة إما كـ MO (مصدرها الجهاز — مرسَلة من هاتف) أو MT (منتهية على الجهاز — مسلَّمة إلى هاتف). حركة من التطبيقات إلى الأشخاص (A2P) هي في الغالب MT بالكامل: منصتك ترسل الرسالة والشبكة تُنهيها إلى المشترك.

بين الإرسال والجهاز يقف SMSC (مركز خدمة الرسائل القصيرة)، الذي يخزّن الرسالة ويعيد توجيهها عندما يصبح المستلم قابلًا للوصول. وإذا كان الهاتف مغلقًا، يحتفظ SMSC بالرسالة حتى تنتهي فترة الصلاحية.

الدرس 02

الترميز: GSM 7-bit مقابل UCS-2

يستخدم النص اللاتيني البسيط أبجدية GSM 7-bit الافتراضية المحدَّدة في GSM 03.38. ولأن كل حرف يأخذ 7 بتّات، فإن 140 بايت تسع 160 حرفًا — وهو الحد المألوف للجزء الواحد.

تعيش مجموعة من الرموز الشائعة (مثل { } [ ] ~ ^ | \ ورمز اليورو) في جدول امتداد وتكلّف كل واحدة منها حرفين. من السهل تجاوز حد الجزء دون ملاحظة ذلك عندما يحتوي نصك على أحد هذه الرموز.

بمجرد أن تحتوي رسالة على أي حرف خارج تلك الأبجدية — عربي، سيريلي، صيني، أو رمز تعبيري (إيموجي) — تتحوّل الرسالة كاملةً إلى UCS-2، وهو ترميز يونيكود بـ16 بتًا. الآن يأخذ كل حرف 2 بايت، لذا يسع الجزء الواحد 70 حرفًا فقط.

الدرس 03

التجزئة والتسلسل

عندما يتجاوز النص جزءًا واحدًا، يُقسَّم ويُعاد تجميعه على الجهاز. ولفعل ذلك، تُضاف رأسية بيانات مستخدم صغيرة (UDH) إلى كل جزء، وهي تستهلك مساحة من الحمولة. لهذا السبب تحمل الأجزاء المتسلسلة عددًا أقل من الأحرف مقارنة بالجزء المستقل.

في GSM 7-bit، تحمل الأجزاء المتسلسلة 153 حرفًا بدلًا من 160؛ وفي UCS-2 تحمل 67 بدلًا من 70. رسالة لاتينية من 300 حرف تُقسَّم إلى ثلاثة أجزاء؛ ونفس الطول بالعربية يُقسَّم إلى خمسة. أنت تُفوتَر لكل جزء، لذا يقود الترميز التكلفة مباشرةً.

خطأ شائع يمكن تجنّبه هو رسالة تتجاوز الحد بقليل — 161 حرفًا تتحوّل إلى جزأين وتضاعف سعر كل إرسال. تقليم بضع كلمات، أو إزالة رمز من جدول الامتداد، يمكن أن يخفّض الفاتورة إلى النصف على نطاق واسع.

الدرس 04

إيصالات التسليم والحالة

إيصال التسليم (DLR) هو تأكيد الشبكة لما حدث للرسالة. يُبلغ عن حالة نهائية مثل مُسلَّمة، أو غير مُسلَّمة، أو منتهية الصلاحية، أو مرفوضة، وغالبًا رمز خطأ خاص بالمشغّل يشرح السبب.

إيصالات DLR ضرورية للتسوية وقياس الجودة. طلبها فقط حيثما تستهلكها يبقي الحركة نظيفة؛ فالإيصال المُسلَّم يؤكد أن الجهاز استلم الرسالة، بينما يعني الإيصال المنتهي الصلاحية أنه لم يكن قابلًا للوصول أبدًا ضمن فترة الصلاحية.

ولأن رموز أخطاء المشغّلين تختلف بين المسارات، يقوم المرسلون الناضجون بتوحيدها ضمن تصنيف متسق — مشترك غير موجود، رقم غير صالح، محظور كسبام — بحيث يمكن مقارنة الجودة عبر الوجهات.

الدرس 05

A2P مقابل P2P

P2P (من شخص إلى شخص) هي رسائل SMS الحوارية التي يرسلها شخص إلى آخر. أما A2P (من التطبيقات إلى الأشخاص) فهي حركة برمجية من البرمجيات: التنبيهات، وOTP، والإشعارات، والتسويق. تبدو متطابقة على الجهاز لكنها مختلفة تجاريًا وتقنيًا.

يسعّر المشغّلون ويوجّهون A2P بشكل مختلف ويتوقعون وصولها عبر قنوات رسمية مُفوتَرة. أما A2P المُسلَّمة عبر مسارات P2P لتفادي رسوم الإنهاء فهي مسار رمادي — أرخص مبدئيًا، لكنها عرضة للفلترة، وضعف التسليم، والتعرّض لمخاطر الامتثال.

فهم هذا الفصل هو الأساس لكل ما يليه: جودة التوجيه، وقواعد معرّف المُرسِل، وجدران الحماية كلها موجودة لأن المشغّلين يجب أن يميّزوا حركة A2P المشروعة والمدفوعة عن التحايل.

أهم النقاط
  • حمولة SMS هي 140 بايت؛ لهذا يسع GSM 7-bit 160 حرفًا وUCS-2 يسع 70 فقط.
  • أي حرف خارج GSM (عربي، إيموجي) يحوّل الرسالة كاملةً إلى UCS-2 ويقلّص الحد.
  • الأجزاء المتسلسلة تكلّف مساحة رأسية (153 / 67 حرفًا) وأنت تدفع لكل جزء.
  • تُغلق DLRs الحلقة على التسليم؛ وA2P وP2P متشابهتان بالمظهر لكن التوجيه والتسعير مختلفان.
قم بتطبيقه عملياً

استغل ما تعلمته للتو.

تحدث إلى مهندس حقيقي حول حالة استخدامك، أو افتح وثائق المطورين وأرسل رسالة عبر المسارات التي يصفها هذا المقرر.

لماذا نتعلم من BroadNet
  • منذ2003
  • بلدان200+
  • روابط المشغّل1,000+