ESME_RINVSCHED في بروتوكول SMPP
ما هو ESME_RINVSCHED؟
ESME_RINVSCHED (كود الخطأ: 0x00000061) هو خطأ في بروتوكول SMPP يشير إلى أن حقل schedule_delivery_time
في طلب submit_sm
يحتوي على تنسيق أو قيمة غير صالحة.
الأسباب المحتملة
- حقل
schedule_delivery_time
ليس بالتنسيق الصحيح. - التاريخ والوقت المقدمين بتنسيق غير مدعوم.
- خادم SMSC لا يدعم تسليم الرسائل المجدولة.
- الوقت المجدول في الماضي.
متى يحدث هذا الخطأ؟
يحدث هذا الخطأ عندما يرسل ESME رسالة SMS بحقل schedule_delivery_time
غير صحيح التنسيق.
مثال على معاملة SMPP PDU
PDU submit_sm
غير صحيح (وقت تسليم مجدول غير صالح)
0000003F (الطول) 00000004 (معرف الأمر لـ submit_sm) 00000000 (حالة الأمر) 00000001 (رقم التسلسل) 00 (نوع الخدمة) 01 (نوع عنوان المصدر TON - دولي) 01 (معرف خطة ترقيم المصدر NPI - ISDN) 31323334 00 (عنوان المصدر: "1234") 01 (نوع عنوان الوجهة TON - دولي) 01 (معرف خطة ترقيم الوجهة NPI - ISDN) 39383736 00 (عنوان الوجهة: "9876") 00 (فئة ESM) 00 (معرف البروتوكول) 00 (علامة الأولوية) 31323039 3031303030303030 00 (وقت التسليم المجدول غير الصالح) 00000000 (فترة الصلاحية - غير مضبوطة) 00 (علامة استبدال إذا موجودة) 00 (معرف الرسالة الافتراضي Sm) 0005 (طول الرسالة) 48656C6C 6F (الرسالة: "Hello")
رد PDU (submit_sm_resp
) مع ESME_RINVSCHED
00000010 (الطول) 80000004 (معرف الأمر لـ submit_sm_resp) 00000061 (حالة الأمر - ESME_RINVSCHED) 00000001 (رقم التسلسل)
المشكلة: حقل schedule_delivery_time
غير صحيح التنسيق، مما يؤدي إلى رفضه من قبل SMSC.
كيف يتم حلها؟
- تأكد من أن حقل
schedule_delivery_time
يتبع تنسيق الوقت المطلق أو النسبي لـ SMPP: - تنسيق الوقت المطلق:
YYMMDDhhmmss000R
(مثال:240211153000000R
ليوم 11 فبراير 2024، الساعة 15:30:00 بالتوقيت العالمي) - تنسيق الوقت النسبي:
000001000000000R
(تسليم بعد ساعة من الآن) - تأكد من أن الوقت المجدول في المستقبل.
- تحقق مع مزود SMSC ما إذا كان التسليم المجدول مدعومًا.
- استخدم أحرف إنهاء صحيحة (مثل
00
للسلاسل المنتهية بـ NULL).
إذا استمرت المشكلة، راجع سجلات SMPP وتأكد من استخدام تنسيق الجدولة الصحيح.