ESME_RINVDSTNPI في SMPP

ما هو ESME_RINVDSTNPI؟

ESME_RINVDSTNPI (كود الخطأ: 0x00000051) هو خطأ في SMPP يشير إلى أن قيمة destination NPI (مؤشر خطة الترقيم) المقدمة في PDU غير صالحة أو غير مدعومة من قبل SMSC.

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

  • حقل destination NPI يحتوي على قيمة غير صحيحة أو غير مدعومة.
  • SMSC لا يتعرف على NPI المحدد.
  • destination NPI لا يتطابق مع تكوين destination TON.
  • استخدام قيمة NPI محجوزة أو غير محددة.

متى يحدث؟

يحدث هذا الخطأ عندما يرسل ESME submit_sm أو deliver_sm أو أي PDU مشابه بقيمة غير صالحة لـ destination NPI.

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

PDU submit_sm غير صحيح (NPI وجهة غير صالح)

0000002F (الطول)
00000004 (معرف الأمر لـ submit_sm)
00000000 (حالة الأمر)
00000001 (رقم التسلسل)
00 (نوع الخدمة)
01 (مصدر TON العنوان - دولي)
01 (مصدر NPI العنوان - ISDN)
31323334 00 (مصدر العنوان: "1234")
01 (وجهة TON العنوان - دولي)
FF (وجهة NPI العنوان غير صالحة)
39383736 00 (وجهة العنوان: "9876")
00 (فئة ESM)
00 (معرف البروتوكول)
00 (علم الأولوية)
00000000 (وقت التسليم المجدول - غير مضبوط)
00000000 (فترة الصلاحية - غير مضبوطة)
00 (تسليم مسجل)
00 (استبدال إذا كان موجودًا)
00 (معرف الرسالة الافتراضي Sm)
0005 (طول الرسالة)
48656C6C 6F (الرسالة: "Hello")

استجابة PDU (submit_sm_resp) مع ESME_RINVDSTNPI

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

المشكلة: حقل destination NPI مضبوط على قيمة غير صالحة (0xFF)، والتي لا يتعرف عليها SMSC.

كيفية حلها؟

  • استخدم قيمة صالحة لـ destination NPI بناءً على مواصفات SMPP:
    • 0x00 - غير معروف
    • 0x01 - ISDN (E.164)
    • 0x03 - بيانات (X.121)
    • 0x04 - تيليكس (F.69)
    • 0x06 - هاتف محمول أرضي (E.212)
    • 0x08 - وطني
    • 0x09 - خاص
    • 0x0A - ERMES
    • 0x0E - إنترنت (IP)
    • 0x12 - معرف عميل WAP
  • تأكد من SMSC حول قيم destination NPI المدعومة.
  • تأكد من أن destination NPI متطابق بشكل صحيح مع destination TON.
  • راجع وقم بتصحيح بناء PDU قبل الإرسال.

إذا استمرت المشكلة، قم بتمكين سجلات التصحيح واتصل بمزود SMSC لمزيد من استكشاف الأخطاء وإصلاحها.

More information