ESME_RTLVNOTALLWD في SMPP

ما هو ESME_RTLVNOTALLWD؟

ESME_RTLVNOTALLWD (كود الخطأ: 0x00000068) هو خطأ في بروتوكول SMPP يشير إلى أن معلمة Tag-Length-Value (TLV) المضمنة في الطلب غير مسموح بها أو غير مدعومة من قبل SMSC.

الأسباب المحتملة

  • الطلب يحتوي على معلمة TLV غير صالحة أو غير مدعومة.
  • معلمة TLV غير مناسبة لنوع الطلب المرسل.
  • لدى SMSC سياسات صارمة بشأن معلمات TLV المسموح بها.
  • تنسيق أو ترميز غير صحيح لحقول TLV.

متى يحدث هذا الخطأ؟

يحدث هذا الخطأ عندما يقوم ESME بتضمين معلمة TLV غير مدعومة في طلب SMPP، ويرفض SMSC الطلب بسبب سياساته أو قيود قدراته.

مثال على معاملة PDU في SMPP

طلب PDU (submit_sm) مرسل من ESME مع معلمة TLV غير صالحة

00000040 (الطول)
00000004 (معرف الأمر لـ submit_sm)
00000000 (حالة الأمر)
00000001 (رقم التسلسل)
00 (نوع الخدمة)
01 (نوع عنوان المصدر - دولي)
01 (معرف خطة ترقيم المصدر - ISDN)
31323334 00 (عنوان المصدر: "1234")
01 (نوع عنوان الوجهة - دولي)
01 (معرف خطة ترقيم الوجهة - ISDN)
39383736 00 (عنوان الوجهة: "9876")
00 (فئة ESM)
00 (معرف البروتوكول)
00 (علامة الأولوية)
00000000 (وقت التسليم المحدد - غير مضبوط)
00000000 (فترة الصلاحية - غير مضبوطة)
00 (علامة استبدال إذا موجود)
00 (معرف الرسالة الافتراضي)
0005 (طول الرسالة)
48656C6C 6F (الرسالة: "Hello")
0421 0001 01 (معلمة TLV غير صالحة: العلامة 0x0421، الطول 1، القيمة 01)

رد PDU (submit_sm_resp) مع ESME_RTLVNOTALLWD

00000010 (الطول)
80000004 (معرف الأمر لـ submit_sm_resp)
00000068 (حالة الأمر - ESME_RTLVNOTALLWD)
00000001 (رقم التسلسل)

المشكلة: رفض SMSC الطلب بسبب وجود معلمة TLV غير مدعومة (مثل العلامة 0x0421).

كيف يتم حلها؟

  • تحقق من مواصفات SMPP لمعلمات TLV الصالحة للعملية المحددة.
  • قم بإزالة أي معلمات TLV غير ضرورية من الطلب.
  • تأكد من أن قيم TLV منسقة بشكل صحيح وفي النطاقات المسموح بها.
  • استشر مزود SMSC للحصول على قائمة بمعلمات TLV المدعومة.
  • اختبر بدون معلمة TLV لتأكيد أنها سبب الرفض.

يتطلب إصلاح هذه المشكلة التحقق من الاستخدام الصحيح لمعلمة TLV والتوافق مع قدرات SMSC.

More information