تسجيل IMS واحد

يتيح نظام التشغيل Android 12 نموذج تسجيل واحدًا لتوفير ميزات MMTEL وRCS. يتيح هذا النموذج إدارة جميع ميزات IMS على الأجهزة من خلال عملية تسجيل واحدة في IMS يوفّرها تطبيق ImsService على الجهاز، كما يتيح استيفاء المتطلبات التي تفرضها بعض شركات الاتصالات. مقارنةً بنموذج التسجيل المزدوج الذي يتم فيه إدارة عمليات تسجيل متعددة في نظام IMS على جهاز واحد، يقلّل التسجيل الفردي من حركة البيانات على شبكة مشغّل شبكة الجوّال ويزيد من الموثوقية.

يتوافق نظام التشغيل Android 12 مع نموذج التسجيل الفردي هذا من خلال بنية تتضمّن مجموعة من واجهات برمجة التطبيقات التي تتيح لحزمة الاتصالات في مشروع Android المفتوح المصدر (AOSP) إدارة كل من ميزات MMTEL التي يوفّرها ImsService وميزات RCS التي يوفّرها تطبيق المراسلة عبر خدمات الاتصالات التفاعلية (RCS) الذي يختاره المستخدم. ولإتاحة التسجيل الفردي في نظام IMS، على مصنّعي الأجهزة ومورّدي شرائح النظام على اللوحة (SoC) تنفيذ واجهات برمجة التطبيقات هذه لتفعيل ميزات RCS في تطبيق المراسلة عبر خدمات الاتصالات التفاعلية (RCS) الذي يختاره المستخدم.

يوضّح الشكل 1 حزمة IMS للجهاز عند استخدام نموذج التسجيل الفردي في IMS. تستخدم جميع تطبيقات IMS خدمة ImsService التلقائية للجهاز من أجل ميزات MMTEL وRCS عبر عملية تسجيل واحدة في IMS. ويشمل ذلك توفير الخدمة وإعادة توجيه رسائل SIP وتبادل إمكانات مستخدم RCS.

بنية وضع التسجيل الفردي

الشكل 1. بنية نموذج التسجيل الفردي

لا يتيح الإصدار 11 من نظام التشغيل Android والإصدارات الأقدم سوى نموذج تسجيل مزدوج لتوفير ميزات MMTEL وRCS، حيث يتم توفير MMTEL من خلال ImsService على الجهاز، ويتم تنفيذ ميزات RCS بشكل مستقل من خلال حزمة IMS الخاصة بها وإدارة اتصالها بشبكة مشغّل شبكة الجوّال.

يوضّح الشكل 2 بنية نموذج التسجيل المزدوج. في هذا النموذج، يكون كل تطبيق مسؤولاً عن الاتصال بشبكة مشغّل شبكة الجوّال وإنشاء تسجيل IMS لميزات MMTEL وRCS. تنفِّذ خدمة ImsService على الجهاز بروتوكول MMTEL، وتستخدم اتصال بيانات IMS الخاص بالجهاز بشبكة مشغّل شبكة الجوّال، وتعمل بشكل مستقل عن تطبيقات RCS الأخرى.

بنية وضع التسجيل المزدوج

الشكل 2. بنية نموذج التسجيل المزدوج

واجهات برمجة التطبيقات للتسجيل الفردي في IMS

يجب أن تتوافق الأجهزة التي تتوفّر لدى شركات الاتصالات التي تتطلّب التسجيل الفردي في IMS مع واجهات برمجة التطبيقات الخاصة بالتسجيل الفردي في IMS، وأن تحدّد ميزة Android PackageManager#FEATURE_TELEPHONY_IMS_SINGLE_REGISTRATION. تعرض "الشكل 3" واجهات برمجة التطبيقات التي تتيح التسجيل الفردي في IMS.

مساحات عرض واجهة برمجة التطبيقات التي تتيح التسجيل الفردي في IMS

الشكل 3. مساحات عرض عالية المستوى لواجهة برمجة التطبيقات تتيح التسجيل الفردي في IMS

يجب أن تتوافق أجهزة Android التي تتيح التسجيل الفردي في نظام IMS كجزء من حزمة الاتصالات الهاتفية في مشروع AOSP مع جميع واجهات برمجة التطبيقات في مشروع AOSP الموضّحة في الجدول التالي.

مساحة سطح واجهة برمجة التطبيقات واجهات برمجة تطبيقات RCS واجهات برمجة تطبيقات نظام إدارة المعلومات لدى المورّد الوصف
توفير خدمات الاتصالات التفاعلية (RCS) ProvisioningManager ImsConfigImplBase يسمح هذا الإذن لمصنّع المعدات الأصلية أو مشغّل شبكة الجوّال بتوفير تطبيق لتعديل حالة توفير خدمة RCS إذا كان مشغّل شبكة الجوّال يستخدم آلية خاصة للتحقّق من أهلية المستخدم. يجب أن تتوافق خدمة ImsService أيضًا مع معيار AutoConfigurationServer (ACS) لتوفير خدمات شركات الاتصالات التي لا تستخدم آلية خاصة.
إعادة توجيه رسائل SIP SipDelegateManager SipTransportImplBase يسمح لأحد تطبيقات RCS بربط علامات ميزات RCS معيّنة بالجهاز ImsService أولاً، ثم إرسال رسائل SIP وتلقّيها، بالإضافة إلى تحديثات تسجيل IMS المرتبطة بعلامات ميزات RCS هذه.
إشعارات بشأن خدمة نقل البيانات المخصّصة ConnectivityManager DataCallResponse يتيح هذا الإذن للتطبيق الاستماع إلى إشعارات جودة الخدمة على مقبس مرتبط بمنفذ محلي معيّن.
مصادقة GBA bootstrapAuthenticationRequest GbaService يسمح لأحد تطبيقات RCS بالمصادقة على الشبكة والوصول إلى المفاتيح المستخدَمة في ميزات RCS، مثل نقل الملفات.
تبادل إمكانات مستخدمي خدمات الاتصالات التفاعلية (RCS) ImsRcsManager RcsCapabilityExchangeImplBase تتيح هذه السمة لنظام التشغيل AOSP إرسال إمكانات MMTEL وRCS إلى ImsService الخاص بالمورّد، ما يتيح نشرها ضمن كيان واحد على الشبكة لتبادل إمكانات مستخدمي RCS. يسمح هذا الإذن أيضًا للتطبيقات الأخرى المهتمة بإمكانات RCS الخاصة بجهة اتصال واحدة أو أكثر بالبحث في الشبكة عن إمكانات RCS الخاصة بجهات الاتصال.

الأمان والأذونات

يقدّم نظام التشغيل Android 12 الأذونات التالية لضمان الوصول الآمن إلى شبكة مشغّل شبكة الجوّال وبيانات المستخدم:

يجب أن يحدّد تطبيق المراسلة الذي يتضمّن ميزات RCS الإذن android.permission.PERFORM_IMS_SINGLE_REGISTRATION. يجب استيفاء الشروط التالية لمنح هذا الإذن:

  • يجب تثبيت التطبيق كتطبيق مميّز، ما يعني أنّه مثبَّت مسبقًا على الجهاز ويُسمح له بالوصول إلى الأذونات المميّزة.
  • يجب ضبط التطبيق كدور الرسائل القصيرة SMS التلقائي للمستخدم باستخدام RoleManager

في حال عدم استيفاء أي من هذين الشرطين، سيتم رفض منح التطبيق إذن الوصول إلى android.permission.PERFORM_IMS_SINGLE_REGISTRATION. ويعني ذلك أنّه لا يُسمح للتطبيقات التابعة لجهات خارجية بالوصول إلى واجهات برمجة التطبيقات الخاصة بالتسجيل الفردي في خدمات RCS لأنّها تتطلّب شهادة اعتماد من مشغّل شبكة الجوّال على الجهاز.

عند منح إذن android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE لتطبيق لديه أيضًا إذن READ_CONTACTS، يسمح ذلك للتطبيق بطلب إمكانات RCS لأرقام الهواتف باستخدام RcsUceAdapter. يجب استيفاء الشروط التالية لمنح هذا الإذن:

  • يجب تثبيت التطبيق كتطبيق مميّز، ما يعني أنّه مثبَّت مسبقًا على الجهاز ويُسمح له بالوصول إلى الأذونات المميّزة.
  • يجب تحديد التطبيق على أنّه أحد الأدوار التالية RoleManager:

    • تطبيق المراسلة التلقائي: يحدّده المستخدم.
    • تطبيق الاتصال التلقائي: يحدّده المستخدم.
    • تطبيق جهات الاتصال التلقائي: هو دور تم تقديمه في نظام التشغيل Android 12 يتيح لمصنّع المعدات الأصلية تحديد اسم حزمة من خلال قيمة تراكب الجهاز config_systemContacts، ويجب أن يتطابق مع تطبيق جهات الاتصال على الجهاز، ثم يتم منح هذا التطبيق دور جهات الاتصال.

للوصول إلى اسم نقطة الوصول (APN) لنظام IMS باستخدام ConnectivityManager لإعداد حركة بيانات وإدارتها، يجب أن تطلب التطبيقات أيضًا الإذن android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS.

أمثلة ومصدر

يوفّر نظام التشغيل Android تطبيقًا في "مشروع Android المفتوح المصدر" (AOSP) ينفّذ تطبيق مراسلة تجريبيًا يتضمّن دعمًا أساسيًا للمراسلة عبر "خدمات الاتصالات التفاعلية" (RCS) لأغراض الاختبار والتطوير. يمكنك العثور على التطبيق على testapps/TestRcsApp. عند تثبيت التطبيق على جهاز، يمكن ضبطه كتطبيق المراسلة التلقائي للمستخدم، وسيحصل على الأذونات المطلوبة للوصول إلى واجهات برمجة التطبيقات الخاصة بالتسجيل الفردي في نظام إدارة المعلومات (IMS).

يوفّر نظام التشغيل Android أيضًا نموذجًا لتنفيذ ImsService لخدمات الاتصالات التفاعلية (RCS). يمكنك العثور على رمز المصدر على الرابط /testapps/ImsTestService.

التنفيذ

لمزيد من التفاصيل حول التنفيذ، يمكنك تنزيل التسجيل الفردي في IMS على Android.

التحقُّق

للتأكّد من صحة عملية تنفيذ ميزة "التسجيل الفردي" في IMS، اتّبِع الخطوات التالية:

  • تأكَّد من اجتياز CtsTelephonyTestCases لمجموعة أدوات اختبار التوافق (CTS).
  • ثبِّت تطبيق TestRcsApp وشغِّله لتنفيذ حالات اختبار التسجيل الفردي الأساسية أثناء عملية الدمج.
  • اجتياز شهادة اعتماد مشغّل شبكة الجوّال لحالات اختبار التسجيل الفردي في IMS