انتقل إلى المحتوى الرئيسي

مدير نقل أومنيتاتش

إدارة نقل الأرقام لمقدمي الخدمة — تكامل مع مراكز التنسيق، توجيه ENUM، وأحداث دورة حياة OSS/BSS، مع واجهة ويب لفرق العمليات.

قامت أومنيتاتش بنشر نقل الأرقام في شبكاتنا، مع تكامل مباشر مع PortingXS ودعم لـ NPAC في الأسواق الأمريكية الشمالية.


نظرة عامة

يتولى مدير نقل أومنيتاتش إدارة دورة حياة عمليات نقل الأرقام بالكامل: تقديم وتتبع الطلبات مع مركز التنسيق، الحفاظ على قاعدة بيانات توجيه ENUM للأرقام المنقولة، وتقديم أحداث دو��ة الحياة إلى OSS/BSS الخاص بالمشغل. يتكامل مع PortingXS عبر شبكتها التي تضم 43 دولة ومع NPAC للتطبيقات في الولايات المتحدة.

تم تصميم المنصة لتكون مدفوعة بواسطة OSS/BSS على نطاق واسع، مع واجهة ويب للعمل اليومي — مراجعة حالة النقل، التعامل مع الحالات الخاصة، استعلام التوجيه، والتحقق من تسليم الرسائل القصيرة على الأرقام المنقولة.

بعض الأمور التي تستحق الملاحظة قبل أن تقرأ المزيد:

  • يستخدم التوجيه All-Call-Query ضد قاعدة بيانات ENUM مع معلمات npdi/rn وفقًا لـ RFC 4694 و3GPP TS 23.228 — وليس جداول النطاق الثابتة، التي تتعطل بصمت عند النقلات اللاحقة
  • يتم إعادة محاولة عدم تطابق نوع الحساب (أكثر أسباب الرفض شيوعًا) تلقائيًا دون تدخل يدوي
  • تمتلك المنصة سير عمل النقل والتوجيه؛ تظل أهلية الحساب ودورة حياة الخدمة في OSS/BSS الخاص بك، مع روابط API لربطها
  • بالنسبة للمشغلين الذين يستخدمون OmniCRM، فإن تكامل OSS/BSS مُعد مسبقًا

يعمل مدير نقل أومنيتاتش كنقطة تكامل مركزية بين أنظمة إدارة العملاء، مراكز التنسيق الخارجية، بنية توجيه DNS/ENUM، ومنصات الفوترة.

هيكل التكامل

تم تصميم مدير نقل أومنيتاتش حول حدود واضحة: يمتلك سير عمل النقل والتوجيه، ويمتلك OSS/BSS الخاص بك العميل. هذا مقصود.

لدى المشغلين بالفعل BSS يعرف ما إذا كان حساب العميل في وضع جيد، وما الخدمات التي يمتلكونها، وماذا يحدث عند إنهاء خدمة. بناء تلك المنطق في منصة نقل يعني إما تكراره أو محاربته. بدلاً من ذلك، يكشف مدير نقل أومنيتاتش عن الروابط الصحيحة — تتحقق فحوص الأهلية من BSS الخاص بك للحصول على إجابة، وتقوم أحداث دورة الحياة (اكتمل النقل، تم تفويض النقل الخارجي) بإخطار BSS الخاص بك لاتخاذ إجراء. تقوم منصة النقل بعملها؛ يقوم BSS الخاص بك بعمله.

في الممارسة العملية، يعني ��ذا:

  • يتم إدارة دورة حياة طلب النقل وتفاعلات مركز التنسيق بالكامل هنا
  • يتم تحديث التوجيه تلقائيًا عند الاكتمال
  • تظل أهلية الحساب، تفعيل الخدمة، وإغلاق الحساب في OSS/BSS الخاص بك — يتم تفعيلها بواسطة أحداث من هذه المنصة، وليس استبدالها بها

بالنسبة للمشغلين الذين يستخدمون OmniCRM، فإن هذا التكامل مُعد مسبقًا. بالنسبة للمشغلين الذين لديهم BSS موجود، توفر واجهة API روابط الأحداث اللازمة لتوصيلها.

توجد واجهة الويب لفرق النقل للتعامل مع العمليات اليومية — مراجعة الطلبات، التصرف في النقلات المعلقة، استعلام التوجيه، وتشخيص مشاكل تسليم الرسائل القصيرة. على نطاق واسع، من المتوقع أن تكون تقديمات النقل واستجابات دورة الحياة مؤتمتة من خلال واجهة API.


هيكل النظام

المكونات الأساسية

  1. مدير النقل — ينظم سير عمل النقل ويدير التفاعلات مع مركز تنسيق نقل الأرقام
  2. خادم DNS/ENUM — يدير توجيه المكالمات وحل الأرقام
  3. واجهة API وواجهة ويب — توفر وصول برمجي ومستخدم لوظائف النقل

نقاط التكامل

  • OmniCRM — إدارة علاقات العملاء وتوفير الخدمة
  • منصة الفوترة — إدارة الفوترة والإيرادات (CGrateS)
  • PortingXS — مركز تنسيق نقل الأرقام الدولي
  • NPAC — مركز تنسيق نقل الأرقام في الولايات المتحدة
  • بنية DNS/ENUM — توجيه المكالمات وحل الأرقام

مدير النقل

سير عمل النقل الوارد

  1. بدء الطلب — يتم إنشاء طلب النقل الوارد عبر واجهة الويب أو واجهة API
  2. تقديم لمركز التنسيق — يقدم مدير النقل الطلب إلى مركز التنسيق المناسب (PortingXS للأسواق الدولية، NPAC للولايات المتحدة)
  3. مراقبة الحالة — يتتبع النظام تغييرات الحالة عبر تدفق أحداث مركز التنسيق
  4. توفير ENUM — عند اكتمال النقل بنجاح، يتم تحديث قاعدة بيانات التوجيه تلقائيًا
  5. تفعيل الخدمة — يتم تفعيل خدمة OmniCRM وتبدأ الفوترة
  6. تكامل الفوترة — يتم إخطار منصة الفوترة لبدء الفوترة

الكشف التلقائي عن مشغل المانح

عند تقديم طلب النقل الوارد بدون donornetworkoperator، يحدد مدير نقل أومنيتاتش تلقائيًا مشغل المانح من نطاق الرقم. هذه هي الإعداد الافتراضي الموصى به لمعظم التقديمات — يحتاج رمز المشغل إلى أن يتم تحديده صراحة فقط عندما يحتاج نتيجة الكشف التلقائي إلى تجاوزها.

إعادة تقديم نوع الحساب التلقائي

سبب الرفض الشائع من مشغلي المانح هو نوع الحساب غير صحيح (رمز الرفض 35) — علامة الدفع المسبق/الدفع الآجل في الطلب لا تتطابق مع سجلات المانح. بدلاً من الحاجة إلى تدخل يدوي، يقوم مدير النقل تلقائيًا بإعادة محاولة الطلب مع تبديل نوع الحساب (الدفع المسبق → الدفع الآجل أو العكس) عند تلقي هذا الرفض.

تخلق إعادة التقديم سجل نقل جديد. في واجهة الويب، يتم عرض معرف النقل الأصلي باللون الأخضر على السجل الجديد بحيث يمكن تتبع التاريخ. عبر واجهة API، GET /np_api/PortIn/{msgidentifier} يحل بشكل شفاف إلى السجل النشط إذا حدثت إعادة تقديم.

سير عمل النقل الخارجي

  1. استقبال الطلب — يتم استلام طلب النقل الخارجي من مشغل الاستحواذ عبر مركز التنسيق
  2. التحقق من الخدمة — يتحقق النظام من وجود الخدمة وأنها مؤهلة
  3. إخطار CRM — يتم تحديث OmniCRM بحالة النقل الخارجي
  4. إلغاء توفير ENUM — يتم تحديث قاعدة بيانات التوجيه لتوجيه المكالمات إلى مشغل الاستحواذ
  5. إنهاء الخدمة — عند الوقت المحدد للنقل: يتم إلغاء تفعيل الخدمة في OmniCRM، يتم إنشاء الفاتورة النهائية، يتم إغلاق جميع الخدمات المرتبطة

تكامل مراكز التنسيق

PortingXS

PortingXS (PXS) هو مركز تنسيق نقل الأرقام الدولي المعتمد على نطاق واسع والذي يعمل في 43 دولة عبر أربع مناطق:

المنطقةالدول
الأمريكتان ومنطقة البحر الكاريبيأنتيغوا وبربودا، باهاماس، باربادوس، جزر كايمان، كوراساو، دومينيكا، غرينادا، غيانا، جامايكا، بنما، سانت لوسيا، سانت كيتس ونيفيس، سانت مارتن، سانت فنسنت وجزر غرينادين، ترينيداد وتوباغو، جزر تركس وكايكوس
أوروبابلجيكا، البوسنة والهرسك، جبل طارق، غيرنزي، أيرلندا، جزيرة مان، جيرسي، كوسوفو، مونتينيغرو، سلوفينيا، هولندا، أوكرانيا
أفريقياالجزائر، بنين، غانا، كينيا، ناميبيا، نيجيريا، رواندا، السنغال، سيشيل، توغو
الشرق الأوسط وآسياأرمينيا، بنغلاديش، ب��وناي، العراق، سريلانكا

يتكامل مدير النقل عبر واجهة REST/SOAP API ويدير دورة النقل بالكامل من خلال آلة حالة.

القدرات الأساسية:

  • إدارة النقل الوارد/الخارج مع سير عمل آلة الحالة بالكامل
  • تحديثات الحالة في الوقت الحقيقي عبر تاريخ الأحداث
  • تتبع رسائل SOA/ENUM XML
  • قاعدة بيانات توجيه مركزية لـ ENUM (IMS) وMAP/INAP/CAP (All Call Query)
  • تجاوز التوجيه اليدوي

نقاط نهاية واجهة API:

الطريقةنقطة النهايةالوصف
POST/PortIn/createتقديم طلب نقل وارد جديد
GET/PortIn/listقائمة بجميع طلبات النقل الواردة
GET/PortIn/{msgidentifier}الحصول على تاريخ الأحداث
POST/PortIn/{msgidentifier}إرسال التعليمات للمضي قدمًا
DELETE/PortIn/{msgidentifier}إلغاء طلب النقل
GET/PortOut/listقائمة طلبات النقل الخارجي
POST/PortOut/{msgidentifier}تفويض النقل الخارجي
DELETE/PortOut/{msgidentifier}رفض النقل الخارجي
GET/route/{phone_number}استعلام التوجيه الحالي
POST/route/{msisdn}/{operator}/{type}تحديث التوجيه يدويًا

يتم تكوين رموز المشغل، تنسيق الرقم، وأنواع الحسابات لكل نشر.

NPAC

للتطبيقات في الولايات المتحدة، يتكامل مدير نقل أومنيتاتش مع مركز إدارة نقل الأرقام (NPAC):

  • إنشاء وإدارة طلبات خدمة NPAC (SO)
  • تفاعلات مزود الخدمة المحلي (LSP)
  • إدارة إصدار الاشتراك (SV)
  • مزامنة الحالة في الوقت الحقيقي
  • الامتثال للوائح النقل الأمريكية والجداول الزمنية

خادم DNS / ENUM

يوفر خادم DNS خدمات DNS شاملة لشبكات الاتصالات، داعمًا خدمات الحزمة القياسية، سيناريوهات التجوال، IMS، وتوجيه المكالمات لنقل الأرقام.

مناطق شبكة 3GPP

منطقة EPC (epc.mncXXX.mccYYY.3gppnetwork.org) — تستخدم لإشارات Diameter المحلية وسيناريوهات التجوال. تمكن الشبكات الزائرة من اكتشاف موارد PGW المحلية. تحتوي على ��جلات SRV وNAPTR لاكتشاف نظراء Diameter.

منطقة IMS (ims.mncXXX.mccYYY.3gppnetwork.org) — تدعم عمليات نظام الوسائط المتعددة IP. توجيه إشارات SIP وتحديد مواقع موارد CSCF لمشتركي IMS. تدعم VoLTE وRCS.

المنطقة العامة 3GPP (mncXXX.mccYYY.pub.3gppnetwork.org) — توفر وصولًا خارجيًا إلى الخدمات الموجهة للمشتركين: اكتشاف خادم XCAP، موقع BSF لـ GBA، واكتشاف ePDG لـ VoWiFi.

ENUM لنقل الأرقام

ينفذ خادم DNS خدمات ENUM وفقًا لـ RFC 3761 باستخدام منطقة e164enum.net.

All-Call-Query (ACQ): كل مكالمة تستعلم عن قاعدة بيانات ENUM لتحديد التوجيه الحالي.

تدفق استعلام ENUM:

  1. يقوم النظام المتصل باستخراج الرقم المكون (على سبيل المثال +1-555-0100)
  2. يتم تحويل الرقم إلى تنسيق ENUM (0.0.1.0.5.5.5.1.e164.arpa)
  3. يتم إصدار استعلام DNS NAPTR إلى خادم ENUM
  4. يعيد الخادم معلومات التوجيه: معرف المشغل، رقم التوجيه (RN)، مزود الخدمة، علامات التوجيه المخصصة

تتعامل OmniCall — منصة IMS وMSC من أومنيتاتش — مع تدفق ACQ ENUM بشكل تلقائي. لا يتطلب الأمر أي عمل تكاملي إضافي؛ تستعلم OmniCall عن خادم ENUM في كل مكالمة وتوجه بناءً على استجابة NAPTR. بالنسبة للمشغلين الذين يستخدمون OmniCall جنبًا إلى جنب مع مدير نقل أومنيتاتش، يكون توجيه الأرقام المنقولة صحيحًا من لحظة اكتمال النقل، دون الحاجة إلى تدخل يدوي أو صيانة جدول توجيه م��فصل.

نهج التوجيه للأرقام المنقولة

النهج المحدد في RFC 4694 والمعتمد من قبل 3GPP في TS 23.228 §4.18 لـ IMS هو All-Call-Query ضد قاعدة بيانات ENUM. تستعلم كل مكالمة عن ENUM لتوجيه الرقم المحدد، وتحمل الاستجابة رقم توجيه المشغل الحالي مباشرة. هذه هي الطريقة التي من المفترض أن يعمل بها نقل الأرقام في شبكة IMS — قرارات التوجيه بناءً على بيانات حقيقية لكل رقم، وليس جداول النطاق التي تتطلب صيانة يدوية وتخرج عن التاريخ مع النقلات المتكررة.

يقوم مدير نقل أومنيتاتش بتنفيذ ذلك بالكامل. عند اكتمال النقل، يتم دفع سجلات NAPTR إلى خادم ENUM تلقائيًا لكل رقم في النطاق. تحمل الاستجابة معاملين:

  • rn — رقم التوجيه لمشغل الخدمة الحالي. يقوم المفتاح الأصلي بالتوجيه إلى هذا، وليس إلى مشغل الرقم الأصلي.
  • npdi — يشير إلى أن بحث NP ��د تم. يجب ألا تعيد العقد السفلية الاستعلام، مما يمنع الحلقات.

عند اكتمال النقل، يقوم مدير نقل أومنيتاتش تلقائيًا بدفع سجل NAPTR إلى خادم ENUM لكل رقم في النطاق المنقول:

0.0.1.0.5.5.5.1.e164.arpa. NAPTR 10 10 "u" "E2U+pstn:tel"
"!(^.*$)!sip:\1;npdi;rn=<routing_number>@<carrier_ims_domain>!"

بالنسبة للأرقام غير المنقولة، يتم تعيين npdi بدون rn — مما يؤكد أن البحث قد تم وأن الرقم لم يتحرك. في كلتا الحالتين، يحصل نواة IMS الأصلية (S-CSCF/BGCF) على إجابة حاسمة من DNS وتوجه دون أي مزيد من البحث في قاعدة البيانات.

يظل التوجيه صحيحًا عبر عدة نقلات دون أي تدخل يدوي. يظل خادم ENUM دائمًا المصدر الوحيد للحقيقة.


تكامل منصة الفوترة

النقل الوارد

عند نقل رقم بنجاح:

  1. ترسل البوابة إشعار التفعيل إلى منصة الفوترة
  2. تقوم منصة الفوترة بإنشاء حساب مشترك وملفات تقييم
  3. تبدأ الرسوم المتكررة وتقييم الاستخدام على الفور
  4. قد تكون الفاتورة الأولى محسوبة بشكل نسبي بناءً على تاريخ اكتمال النقل

النقل الخارجي

عند نقل رقم خارجي:

  1. ترسل البوابة إشعار الإلغاء إلى منصة الفوترة
  2. تتوقف الفوترة في الوقت الحقيقي عند الوقت المحدد للنقل
  3. يتم إنشاء الفاتورة النهائية: رسوم متكررة محسوبة بشكل نسبي، استخدام غير مدفوع، رسوم إنهاء مبكرة (إذا كانت قابلة للتطبيق)، ائتمانات/استردادات
  4. يتم إغلاق حساب المشترك مع رمز سبب النقل

سير العمل التشغيلي

العمليات اليومية

  1. مراجعة حالة الصباح — تحقق من أنشطة النقل الليلية وتحديثات مركز التنسيق
  2. معالجة عناصر العمل — التعامل مع الموافقات المعلقة وتأكيدات العملاء
  3. حل الأخطاء — التحقيق وحل النقلات الفاشلة أو المرفوضة
  4. التواصل مع العملاء — التنسيق مع العملاء بشأن تواريخ النقل القادمة

المراقبة

يوفر مدير نقل أومنيتاتش مراقبة آلية لـ:

  • اتصال API بمركز التنسيق
  • فشل توفير ENUM
  • أخطاء مزامنة CRM
  • فشل تكامل منصة الفوترة
  • معدلات رفض النقل غير الطبيعية

الامتثال والتدقيق

  • يتم تسجيل جميع أنشطة النقل مع مسارات تدقيق كاملة
  • الامتثال للجداول الزمنية التنظيمية للنقل
  • الاحتفاظ بسجلات التواصل بين المشغلين
  • التسوية المالية مع رسوم مركز التنسيق

القضايا الشائعة

النقل عالق في حالة الانتظار — تحقق من اتصال API بمركز التنسيق، تحقق من معلومات العميل، راجع سجل الأحداث لمعرفة سبب الرفض.

التوجيه غير محدث بعد النقل — تأكد من أن حالة النقل هي Number_Ported. استخدم استعلام التوجيه للتحقق من الحالة الحالية. استخدم دفع التوجيه لتصحيحها يدويًا إذا لزم الأمر.

فشل التحقق من الرسائل القصيرة — قم بتوسيع صف النتيجة لجمع معرف الرسالة ومعرف المعاملة. قدم هذه المعلومات لمزود CPaaS عند التصعيد.


دليل المستخدم

البدء

يتم التحكم في الوصول بواسطة مفتاح API. عند التحميل الأول، سيتم مطالبتك بواجهة إدخال مفتاح API. أدخل مفتاح API المعين لك وانقر على حفظ التغييرات. يتم تخزين بيانات الاعتماد في localStorage للمتصفح وتستمر بين الجلسات. لتحديث مفتاحك في أي وقت، انقر على تغيير مفتاح API في الزاوية العلوية اليمنى من شريط التنقل.

تحدد فئة حسابك الميزات المتاحة:

الفئةالوصول
المسؤولوصول كامل إلى جميع الميزات
مستخدم PXSإدارة النقل الوارد/الخارج والتوجيه
قراءة فقطاستعلامات التوجيه والتحقق من الرسائل القصيرة فقط

التنقل

طلب النقل — تقديم طلب نقل وارد جديد

النقل الوارد — عرض وإدارة جميع طلبات النقل الواردة

النقل الخارجي — مراجعة والرد على طلبات النقل الخارجي من م��غلين آخرين

استعلام التوجيه — البحث عن التوجيه الحالي لأي رقم

دفع التوجيه — توفير سجل توجيه يدويًا

التحقق من توجيه الرسائل القصيرة — إرسال رسائل SMS اختبارية عبر مزودي CPaaS متعددين

تغيير مفتاح API — تحديث بيانات اعتمادك (زر، أعلى اليمين)


طلب النقل الجديد

انقر على طلب النقل في التنقل لفتح نموذج التقديم.

نموذج طلب النقل الجديد

الحقلالوصف
مشغل الشبكة المانحةرمز مشغل المانح. اختر تلقائي للكشف التلقائي من نطاق الرقم.
تجاوز فترة الانتظارتعيين إلى صحيح فقط عندما يتنازل العميل صراحة عن فترة الانتظار. الافتراضي: خطأ.
نوع الحسابالدفع المسبق أو الدفع الآجل
نوع الأرقاممتحرك أو ثابت
الرقم الأولبداية نطاق الرقم (تنسيق محلي، بدون رمز الدولة)
الرقم الأخيرنهاية ا��نطاق — نفس الرقم الأول لرقم واحد
إجمالي الأرقاممحسوب تلقائيًا
البريد الإلكتروني (جهة الاتصال)البريد الإلكتروني للجهة الاتصال لهذا الطلب
رقم التفويضرقم تفويض العميل — يتم ملؤه تلقائيًا من الرقم الأول إذا تُرك فارغًا

انقر على تقديم لإنشاء الطلب. ستظهر رسالة نجاح تعرض معرف الرسالة المعين.


لوحة معلومات النقل الوارد

لوحة معلومات النقل الوارد

العمودالوصف
المعرفمعرف قاعدة البيانات الداخلية
معرف النقلمعرف رسالة مركز التنسيق
الحالةالحالة الحالية للنقل
التاريخ المطلوبطابع زمني للتقديم
التاريخ المحدثطابع زمني آخر تحديث
المشغلرمز مشغل الشبكة المانحة
الهدفرقم الاتصال/التفويض
النوعمتحرك أو ثابت
نوع الخدمةزر تاريخ الأحداث
الإجراءاتأزر��ر الإجراءات المعتمدة على الحالة

حيث تم إعادة تقديم النقل (على سبيل المثال، بعد عدم تطابق نوع الحساب)، يتم عرض معرف النقل الأصلي باللون الأخضر. حيث تم رفض النقل، يتم عرض سبب الرفض باللون الأحمر.

حالات النقل الوارد:

الحالةالمعنى
Waiting_for_Authorisation_Responseتم تقديم الطلب، في انتظار رد المانح
Waiting_for_Instructionتم تفويض المانح — تأكيد المضي قدمًا
Waiting_for_Instruction_Responseتم إرسال التعليمات، في انتظار الاعتراف
Waiting_for_Ported_Responseتنفيذ النقل قيد التقدم
Number_Ported / Number_Ported_Completeاكتمل النقل، تم تحديث التوجيه
Abortedتم الإلغاء
Rejectedرفض المانح الطلب
TimeOutانتهت صلاحية الطلب

الإجراءات:

  • Waiting_for_Authorisation_Response — زر إلغاء (أحمر) يلغي الطلب
  • Waiting_for_Instruction — زر التعليمات (أخضر) يؤكد أن النقل يجب أن يستمر

تاريخ الأحد��ث:

انقر على تاريخ الأحداث في أي صف لفتح نافذة سجل الأحداث.

نافذة تاريخ أحداث النقل الوارد

  • الأحداث — قائمة قابلة للطي لكل انتقال حالة مع نوع الحدث وتفاصيل السجل
  • XML Bodies — روابط تنزيل لجميع رسائل SOA/ENUM XML، مقسمة إلى outbound (Output_XML) وinbound (Input_XML)
  • البيانات التفصيلية — تفريغ JSON كامل لسجل النقل

لوحة معلومات النقل الخارجي

لوحة معلومات النقل الخارجي

العمودالوصف
المعرفمعرف قاعدة البيانات الداخلية
معرف النقلمعرف رسالة مركز التنسيق
الحالةالحالة الحالية للنقل
التاريخ المطلوبطابع زمني للتقديم
التاريخ المحدثطابع زمني آخر تحديث
المشغلرمز مشغل المستلم (المستحوذ)
الأهدافنطاقات الأرقام التي يتم نقلها
نوع الخدمةزر سجل الأحداث
الإج��اءاتأزرار تفويض أو رفض

الإجراءات (Waiting_for_Authorisation_Response):

  • تفويض (أخضر) — يوافق على النقل الخارجي ويخطر مشغل الاستحواذ
  • رفض (أحمر) — ينكر الطلب. استخدم فقط لأسباب مشروعة: عدم تطابق الحساب، رصيد غير مدفوع، طلب احتيالي، أو رقم غير نشط.

انقر على سجل الأحداث في أي صف لعرض تبادل الرسائل الكامل.

نافذة تاريخ أحداث النقل الخارجي


استعلام التوجيه

أدخل الرقم المحلي (يتم إضافة رمز الدولة تلقائيًا) وانقر على تحقق من التوجيه.

نتيجة استعلام التوجيه

الاستجابة هي نتيجة CGrateS ProcessEvent الخام:

الحقلالوصف
Event.E164Addressالرقم المستعلم عنه
Event.NAPTRAddressسلسلة توجيه NAPTR — مجال IMS أو رقم التوجيه
Event.NAPTROrderقيمة ترتيب NAPTR
Event.NAPTRPreferenceقيمة تفضيل NAPTR
MatchedProfilesملف تعريف سمة CGrateS المتطابق لهذا الرقم

دفع التوجيه

نموذج دفع التوجيه

الحقلالوصف
رقم الهاتف (بدون رمز الدولة)رقم محلي — يتم إضافة رمز الدولة تلقائيًا
المشغلرمز المشغل لتوجيه هذا الرقم إليه
النوعمتحرك أو ثابت

استخدمه لتصحيحات الطوارئ، التوفير الأولي، أو عندما يفشل التوجيه التلقائي بعد النقل.


التحقق من توجيه الرسائل القصيرة

التحقق من توجيه الرسائل القصيرة

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

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

يتحقق من أن المزود قبل تقديم الرسالة — لا يؤكد التسليم إلى الهاتف المحمول. استخدم جهاز اختبار أو تحقق من سجل SMSc لتأكيد التسليم.

  1. أدخل رقم الهاتف المستهدف (عادةً رقم مُنقل حديثًا تحت الاختبار)
  2. اختر واحدًا أو أكثر من مزودي A2P للاختبار من خلالهم
  3. انقر على تحقق من التوجيه

سيستقبل الرقم المستهدف رسالة SMS من كل مزود مختار مع نص اختبار من {اسم المزود}. تظهر النتائج باللون الأخضر (مقبولة) أو الأحمر (خطأ). انقر على أي صف من النتائج لتوسيع معلومات التصحيح — المطلوبة عند تصعيد مشاكل التوجيه إلى مزودي CPaaS.

المزودون المتاحون:

المزودالملاحظات
Enetتسليم SMPP من المنصة الأصلية
GTTمباشر من المشغل
Digicelمباشر من المشغل
Sinchمزود CPaaS
Twilioلدى أومنيتاتش جهة اتصال تصعيد مباشرة
Vonageلدى أومنيتاتش جهة اتصال تصعيد مباشرة
Telnyxعميل أومنيتاتش — جهة اتصال مباشرة مع الفريق
Pilvoلدى أومنيتاتش جهة اتصال تصعيد مباشرة

Swagger / مستكشف API

يكشف مدير نقل أومنيتاتش عن واجهة Swagger حية في /np_api/doc.

واجهة Swagger — نظرة عامة على المساحات

واجهة Swagger — مساحة التوجيه

واجهة Swagger — إنشاء النقل الوارد

مخطط OpenAPI متاح في /np_api/swagger.json للاستيراد إلى Postman أو أدوات API الأخرى.


مرجع API

عنوان URL الأساسي

/np_api/

التوثيق التفاعلي متاح في /np_api/doc.

المصادقة

راجع دليل المسؤول لإعداد المصادقة وإدارة بيانات الاعتماد.

الفئةالقدرات
adminوصول كامل إلى جميع نقاط النهاية
pxsإدارة النقل الوارد/الخارج والتوجيه
read_onlyنقاط نهاية التحقق ومعلومات الرقم فقط

نقاط نهاية النقل الوارد

إنشاء طلب النقل الوارد

POST /np_api/PortIn/createالمصادقة: admin, pxs

الحقلالنوعمطلوبالوصف
donornetworkoperatorسلسلةلارمز مشغل المانح — اترك فارغًا للكشف التلقائي
emailسلسلةنعمالبريد الإلكتروني للجهة الاتصال
overridecooloffمنطقيلاتخطي فترة الانتظار التنظيمية (الافتراضي: خطأ)
contacttelephonenumberسلسلةنعمرقم تفويض العميل
Type_of_Numbersسلسلةنعم"mobile" أو "fixed"
telephonenumberseriestartسلسلةنعمالرقم الأول في النطاق
telephonenumberserieendسلسلةنعمالرقم الأخير في النطاق
AccountTypeسلسلةنعم"Prepaid" أو "Postpaid"
PortingStateعدد صحيحلاتجاوز الحالة الأولية (الافتراضي: 0)
curl -X POST https://your-host/np_api/PortIn/create \
-u "your_username:your_api_key" \
-H "Content-Type: application/json" \
-d '{
"donornetworkoperator": "DONOR",
"email": "ops@example.com",
"overridecooloff": false,
"contacttelephonenumber": "5550100",
"Type_of_Numbers": "mobile",
"telephonenumberseriestart": "5550100",
"telephonenumberserieend": "5550199",
"AccountType": "Prepaid"
}'

الاستجابة:

{
"result": "success",
"msgidentifier": "XX202501-CARR-00001",
"message": "تم إنشاء طلب النقل الوارد بنجاح"
}

قائمة طلبات النقل الوارد

GET /np_api/PortIn/listالمصادقة: admin, pxs

ترجع حتى 30 سجلًا مرتبة حسب الأحدث.

الحصول على طلب النقل الوارد

GET /np_api/PortIn/{msgidentifier}المصادقة: admin, pxs

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

شكل الاستجابة:

{
"port_in_id": 42,
"msgidentifier": "XX202501-CARR-00001",
"PortingState": 2,
"PortingStateString": "Waiting_for_Instruction",
"donornetworkoperator": "DONOR",
"email": "ops@example.com",
"contacttelephonenumber": "5550100",
"Type_of_Numbers": "mobile",
"AccountType": "Prepaid",
"overridecooloff": false,
"submission_timestamp": "2025-01-15T10:30:00",
"update_timestamp": "2025-01-15T14:22:00",
"failure_reason": null,
"original_porting_request": null,
"phone_number_ranges": [
{ "telephonenumberseriestart": "5550100", "telephonenumberserieend": "5550199" }
],
"events": [
{
"porting_in_event_id": 1,
"msgtype": "PortingRequest",
"direction": 0,
"eventlog": "تم تقديمه إلى مركز التنسيق",
"submission_timestamp": "2025-01-15T10:30:00Z"
}
]
}

قيم حالة النقل:

القيمةالحالة
0NoPort
1Waiting_for_Authorisation_Response
2Waiting_for_Instruction
3Waiting_for_Instruction_Response
10Waiting_for_Ported_Response
11Waiting_for_Change_Response
20Number_Ported
30Number_Ported_Complete
97TimeOut
98Aborted
99Rejected

رموز أسباب الرفض (failure_reason):

الرمزالسبب
0غير معروف
31تم تعليق الحساب
32مشكلة في الحساب
33مشكلة في الفاتورة
34تجاوز الإيداع
35نوع حساب غير صحيح
36تم الإبلاغ عنه كمسروق أو مفقود
37خاص
38لا فترة انتظار (إعادة توطين)
39مشكلة في فاتورة الدفع المسبق
99رفض عام

إرسال التعليمات (تأكيد النقل)

POST /np_api/PortIn/{msgidentifier}المصادقة: admin, pxs

يؤكد أن النقل يجب أن يستمر. صالح فقط عندما تكون PortingState هي Waiting_for_Instruction (2).

إلغاء النقل الوارد

DELETE /np_api/PortIn/{msgidentifier}المصادقة: admin, pxs

يلغي النقل الوارد. صالح في الحالات: Waiting_for_Authorisation_Response, Waiting_for_Instruction, Waiting_for_Authorisation.

قائمة ملفات XML

GET /np_api/PortIn/get_xml_list/{msgidentifier}المصادقة: admin, pxs

ترجع مصفوفة من أسماء ملفات XML لنقل.

تنزيل ملف XML

GET /np_api/PortIn/get_xml/{folder}/{filename}المصادقة: admin, pxs

folder هو output_XML (مرسل) أو input_XML (مستلم).


نقاط نهاية النقل الخارجي

قائمة طلبات النقل الخارجي

GET /np_api/PortOut/listالمصادقة: admin, pxs

الحصول على طلب النقل الخارجي

GET /np_api/PortOut/{msgidentifier}المصادقة: admin, pxs

شكل الاستجابة:

{
"port_out_id": 99,
"msgidentifier": "XX202501-DONOR-00001",
"PortingState": 1,
"PortingStateString": "Waiting_for_Authorisation_Response",
"recipientnetworkoperator": "DONOR",
"Type_of_Numbers": "mobile",
"submission_timestamp": "2025-01-16T09:15:00",
"update_timestamp": "2025-01-16T09:15:00",
"phone_number_ranges": [
{ "telephonenumberseriestart": "5550200", "telephonenumberserieend": "5550249" }
],
"events": []
}

تفويض النقل الخارجي

POST /np_api/PortOut/{msgidentifier}المصادقة: admin, pxs

يوافق على النقل الخارجي ويخطر مشغل الاستحواذ.

رفض النقل الخارجي

DELETE /np_api/PortOut/{msgidentifier}المصادقة: admin, pxs

يرفض النقل الخارجي. استخدم فقط لأسباب مشروعة: عدم تطابق الحساب، رصيد غير مدفوع، طلب احتيالي، أو رقم غير نشط.


نقاط نهاية التوجيه

استعلام توجيه الرقم

GET /np_api/route/{msisdn}المصادقة: admin, pxs

ترجع سجل توجيه CGrateS بما في ذلك عنوان NAPTR، الترتيب، التفضيل، وبيانات اشتراك HSS. msisdn هو الرقم الكامل بتنسيق E.164 بدون + في البداية.

دفع تحديث التوجيه

POST /np_api/route/{msisdn}/{operator}/{type}المصادقة: admin, pxs

يوفر يدويًا سجل توجيه. operator هو محدد حسب النشر. type هو mobile أو fixed.

حذف سجل التوجيه

DELETE /np_api/route/{msisdn}المصادقة: admin, pxs

يزيل سجل التوجيه.

استعلام HSS فقط

GET /np_api/route/hss_route/{msisdn}المصادقة: admin, pxs

ترجع بيانات اشتراك HSS فقط، دون البحث في قاعدة بيانات التوجيه.


نقاط نهاية التحقق

التحقق من توجيه الرسائل القصيرة

POST /np_api/validate/sms_validateالمصادقة: admin, pxs, read_only

ترسل رسالة SMS اختبارية عبر مزود CPaaS محدد. يتم إضافة بادئة رمز الدولة تلقائيًا.

الحقلالنوعالوصف
phone_numberسلسلةالرقم المستهدف
OperatorسلسلةEnet, GTT, Digicel, Sinch, Twilio, Vonage, Telnyx, Pilvo, ClickSend
apiKeyسلسلةمفتاح API للمزود (إذا لزم الأمر)

الاستجابة:

{
"result": "Sent",
"x-message-id": "SM1234567890abcdef",
"x-transaction-id": "8a2c925809bb403f01",
"x-message-timestamp": "2025-01-15T10:30:00.000Z",
"x-provider": "Twilio",
"x-provider-response": "..."
}

معلومات الرقم

GET /np_api/info/{msisdn}المصادقة: admin, pxs, read_only

يستعلم من مركز التنسيق عن معلومات الرقم. ترجع استجابة مركز التنسيق الخام بتنسيق JSON.


إنهاء الرقم

DELETE /np_api/terminate/{msisdn}/{type_of_numbers}المصادقة: admin, pxs

يقدم طلب إنهاء إلى مركز التنسيق ويزيل سجل التوجيه. type_of_numbers هو mobile أو fixed.


مستقبل XML لمركز التنسيق

POST /np_api/{deployment_prefix}/recv/المصادقة: pxs (بيانات اعتماد مركز التنسيق)

نقطة نهاية داخلية يستخدمها مركز التنسيق لتسليم الرسائل XML الواردة. ليست للاستخدام المباشر. يتم تكوين بادئة النشر لكل تثبيت.

نوع الرسالةالإجراء
authorisation_requestينشئ سجل نقل خارجي جديد
authorisation_responseيحدث حالة النقل الوارد؛ يعيد المحاولة مع تبديل نوع الحساب عند الرمز 35
instruction_responseيتقدم النقل الوارد إلى Waiting_for_Ported_Response
portedيحدد النقل المكتمل، يحدث قاعدة بيانات التوجيه، يرسل إشعار ترحيبي
timedoutيحدد الحالة إلى TimeOut
terminatedيزيل سجل التوجيه

استجابات الأخطاء

{
"result": "استثناء تم رفعه في ...",
"Reason": "تفاصيل الخطأ"
}
الحالةالمعنى
200نجاح
401فشل المصادقة
403الملف غير موجود (تنزيل XML)
500خطأ داخلي — تحقق من حقل Reason