توضح هذه المقالة كيفية تكوين NPS مشترك لاستخدام وكيل مصادقة NPS، بحيث يمكن استخدامه أيضا لدفع إعلامات المكالمات إلى تطبيقات Webex. إذا كان NPS الخاص بك لا يدعم التطبيقات الأخرى ، فيمكنك اتباع الإجراء المبسط في Webex لدليل https://help.webex.com/z9gt5jحلول BroadWorks .

نظرة عامة على وكيل NPS

للتوافق مع Webex ل BroadWorks ، يجب تصحيح NPS الخاص بك لدعم ميزة وكيل NPS ، Push Server ل VoIP في UCaaS.

تنفذ الميزة تصميما جديدا في خادم دفع الإشعارات لحل الثغرة الأمنية لمشاركة المفاتيح الخاصة لشهادة الإشعارات الفورية مع موفري الخدمة لعملاء الأجهزة المحمولة. بدلا من مشاركة شهادات ومفاتيح إشعارات الدفع مع مزود الخدمة ، يستخدم NPS واجهة برمجة تطبيقات جديدة للحصول على رمز مميز لإشعارات الدفع قصير العمر من الواجهة الخلفية ل UCaaS ، ويستخدم هذا الرمز المميز للمصادقة مع Apple APNs وخدمات Google FCM.

تعمل الميزة أيضا على تحسين قدرة خادم دفع الإشعارات على دفع الإشعارات إلى أجهزة Android من خلال واجهة برمجة تطبيقات Google Firebase Cloud Messaging (FCM) HTTPv1 الجديدة.

يجب أن يفي XSP (أو منصة تسليم التطبيقات ADP) التي تستضيف NPS بالمتطلبات التالية:

الحد الأدنى من الإصدارات وقيود الإقامة المشتركة

  • يجب تنشيط NPS على XSP / ADP مخصص ويجب أن يكون NPS هو التطبيق المستضاف الوحيد على الخادم. هذا للقضاء على التداخل مع تسليم إشعارات الدفع.

  • يجب أن يكون هناك تطبيق NPS واحد فقط في النشر. إذا كنت تستخدم UC-One Collaborate/Connect للجوال و أو UC-One SaaS، وكنت تقوم بتنفيذ Webex ل BroadWorks، فيجب عليك مشاركة NPS الفردي هذا لجميع التطبيقات.

  • يجب أن يكون NPS على الإصدار R22 أو أحدث XSP أو ADP.

    R22 / R23 XSP متوافق مع مكدس R21 إذا كان XSP يقوم بتشغيل NPS فقط و AS هو R21. SP1. راجع مصفوفة توافق BroadWorks لمزيد من المعلومات.

  • يمكن العثور على مزيد من المعلومات حول خادم ADP على https://xchange.broadsoft.com/node/1051580.

NPS المشتركة

اقرأ هذه الملاحظات قبل تكوين NPS المشترك لاستخدام وكيل NPS:

  • إذا تم استخدام NPS الخاص بك مع تطبيقات أخرى (وليس فقط تطبيق Webex): قم أولا بتكوين وكيل NPS ، ثم قم بتغيير NPS من استخدام واجهة برمجة تطبيقات FCM القديمة إلى استخدام واجهة برمجة تطبيقات FCM HTTP v1.

  • بعد التحقق من أن الإشعارات تعمل بشكل صحيح للتطبيقات القديمة باستخدام وكيل NPS ، قم بإزالة مفتاح FCM API لتطبيق Android ، ومفتاح مصادقة APNs لتطبيق iOS.

APNs HTTP / 2

  • إذا قمت بنشر أي تطبيقات iOS ليست من Cisco/BroadSoft، فقم بتكوين هذه التطبيقات لاستخدام بروتوكول HTTP/2 APNS قبل تكوين NPS لاستخدام وكيل NPS.

  • يجب ترحيل XSP/ADPs التي تدعم بالفعل تطبيق Collaborate أو SaaS BroadWorks إلى HTTP/2. للحصول على معلومات مفصلة حول تكوين HTTP / 2 ، راجع دعم HTTP / 2 لخادم دفع الإشعارات ل APNS (يتم تلخيص ترحيل NPS لدعم تطبيقات iOS هذه في هذه المقالة).

أندرويد FCMv1

  • إذا قمت بنشر أي تطبيقات Android ليست من Cisco / BroadSoft ، فقم بتكوين هذه التطبيقات لاستخدام مفاتيح FCMv1 قبل تكوين NPS لاستخدام وكيل NPS.

  • إذا كان XSP/ADP يدعم حاليا تطبيق Connect أو UC-One SaaS، فقم بتمكين مفاتيح FCMv1 بعد تكوين وكيل NPS. نوصي بترحيل جميع التطبيقات الإضافية إلى مفاتيح FCMv1 وتمكينها واختبارها ثم تعطيلها حتى تصبح جاهزا لإكمال تعليمات الإعداد (يتم توثيق تدفق الترحيل في هذه المقالة).

ملخص مرئي للترحيل إلى وكيل مصادقة NPS
الجدول رقم 1. ملخص المهام المراد ترحيلها إلى وكيل NPS

تسلسل

عنوان المهمة

متى / لماذا تكون المهمة مطلوبة؟

1

قم بترحيل NPS إلى HTTP / 2 لتطبيقات UC-One SaaS (أو الاتصال) iOS.

إذا كان NPS يدعم هذه التطبيقات ، ولم يتم تكوينها بعد ل HTTP / 2.

2

قم بترحيل NPS إلى FCMv1 لتطبيقات UC-One SaaS (أو الاتصال) Android.

إذا كان NPS يدعم هذه التطبيقات ، ولم يتم تكوينها بعد ل FCMv1.

3

قم بتمكين وضع FCMv1 واختبر إشعارات الدفع.

إذا كان NPS يدعم UC-One Connect و / أو تطبيقات Android الأخرى (غير Cisco).

4

أعد تمكين الوضع القديم FCM.

إذا كان NPS يدعم UC-One SaaS. إذا تركت FCMv1 ممكنا ، قبل تكوين وكيل NPS ، فستبدأ الإشعارات الفورية إلى UC-One SaaS في الفشل.

5

قم بتثبيت تصحيحات وكيل مصادقة NPS.

إذا كان NPS على XSP R22 أو XSP R23.

6

تكوين NPS لاستخدام وكيل مصادقة NPS:

  • إرفاق الدعم الفني من NPS

  • طلب حساب CI OAuth

  • إنشاء حساب CI على NPS وتكوين مهلة رمز التحديث

  • إضافة معرفات التطبيقات المتوافقة مع Android

  • إضافة معرفات تطبيقات iOS

  • التحقق من / تعيين عناوين URL ومهلات الاتصال

  • إضافة تطبيقات إلى قائمة السماح AS

  • (إعادة-)تمكين FCMv1

  • إعادة تشغيل XSP / ADP

  • اختبار PNs لتطبيقات iOS و Android

مطلوب دائما.

7

قم بإزالة مفاتيح الوضع القديم FCM.

للتطبيقات التي يدعمها NPS بنجاح على FCMv1.

هذه المهمة إلزامية لدفع الإخطارات إلى تطبيقات UC-One SaaS و Webex على منصات iOS.

قبل البدء

إذا كان XSP يعمل بنظام R22، فستحتاج إلى تطبيق ap354313 قبل أن تتمكن من تكوين تطبيق NPS لاستخدام HTTP/2 ل APNS.

1

اضبط عنوان URL للإنتاج ومعلمات الاتصال على XSP_CLI/Applications/NotificationPushServer/APNS/Production>

set url https://api.push.apple.com/3/device

set connectionPoolSize 2

set connectionTimeout 3000

set connectionIdleTimeoutInSeconds 600

ملاحظة: لا تقم بتعيين مهلة الاتصال أقل من 1000.

2

أضف معرفات التطبيق إلى سياق تطبيقات APNS، مع التأكد من حذف مفتاح المصادقة - اضبطه على فارغ.

بالنسبة إلى UC-One SaaS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.broadsoft.uc-one

لتطبيق Webex: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

3

تحقق من مفاتيح المصادقة باستخدام XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> get

4

إذا لم يكن مفتاح المصادقة فارغا ل com.broadsoft.uc-one ، يمكنك مسحها باستخدام XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> clear the-authkey

5

تمكين HTTP / 2:

XSP_CLI/Applications/NotificationPushServer/APNS/GeneralSettings> set HTTP2Enabled true

6

بالنسبة لتطبيقات UC-One SaaS فقط: سجل الدخول إلى بوابة الموزع وانتقل إلى التكوين > BroadWorks > .

7

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

  • تنطبق هذه المهمة على NPS على XSP. تجاهلها إذا كان NPS الخاص بك على ADP.

  • يمكنك استخدام هذا الإجراء للترحيل إلى إشعارات FCMv1 لتطبيقات UC-One Connect أو UC-One SaaS Android.

  • يجب عليك استخدام FCMv1 إذا كنت تريد استخدام وكيل NPS لمصادقة إشعارات الدفع إلى UC-One أو تطبيقات Webex Android.

  • تقوم هذه المهمة بإعداد NPS ل FCMv1 بحيث يمكنك تمكينه كجزء من تكوين وكيل مصادقة NPS. لا تقم بتمكين FCMv1 حتى تكون مستعدا لتكوين وكيل مصادقة NPS ، أو ستفشل الإعلامات لعملاء SaaS.

1

الحصول على رقم تعريف المشروع من وحدة تحكم Firebase:

  1. سجل الدخول إلى console.firebase.google.com.

  2. حدد مشروع تطبيق UC-One (Connect أو SaaS) ، وافتح إعدادات المشروع الخاصة به.

  3. افتح علامة التبويب عام وقم بتسجيل معرف المشروع.

2

احصل على المفتاح الخاص لحساب الخدمة من Firebase:

  1. انتقل إلى علامة التبويب حسابات الخدمة في إعدادات المشروع.

  2. إما إنشاء حساب خدمة جديد والحصول على مفتاحه الخاص.

  3. أو افتح حساب خدمة موجودا وقم بإنشاء مفتاح خاص جديد له.

    ملاحظة: يجب أن يكون حساب الخدمة لديه إذن firebaseadmin-sdk .

  4. قم بتنزيل المفتاح إلى مكان آمن.

3

انسخ المفتاح إلى XSP الذي يستضيف NPS الخاص بك.

4

أضف معرف المشروع والمفتاح الخاص المقترن إلى سياق مشاريع FCM:

XSP_CLI/Applications/NotificationPushServer/FCM/Projects> add project-id path/to/keyfile

5

أضف تطبيق UC-One (Connect أو SaaS) ومعرف المشروع المقترن إلى سياق تطبيقات FCM:

XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add applicationId com.broadsoft.connect projectId project-id

6

تحقق من تكوين FCM مقابل السمات والقيم الموصى بها الموضحة هنا. استخدام set إصدار الأمر لتغيير القيم إذا لزم الأمر:

تشغيل XSP_CLI/Applications/NotificationPushServer/FCM> get

المعلمة

القيمة الموصى بها

authURL

https://www.googleapis.com/oauth2/v4/token

pushURL

https://fcm.googleapis.com/v1/projects/PROJECT-ID/messages:send

scope

https://www.googleapis.com/auth/firebase.messaging

tokenTimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

  • تنطبق هذه المهمة على NPS على ADP. تجاهلها إذا كان NPS الخاص بك على XSP.

  • يمكنك استخدام هذا الإجراء للترحيل إلى إشعارات FCMv1 لتطبيقات UC-One Connect أو UC-One SaaS Android.

  • يجب عليك استخدام FCMv1 إذا كنت تريد استخدام وكيل NPS لمصادقة إشعارات الدفع إلى UC-One أو تطبيقات Webex Android.

  • تقوم هذه المهمة بإعداد NPS ل FCMv1 بحيث يمكنك تمكينه كجزء من تكوين وكيل مصادقة NPS. لا تقم بتمكين FCMv1 حتى تكون مستعدا لتكوين وكيل مصادقة NPS ، أو ستفشل الإعلامات لعملاء SaaS.

1

الحصول على رقم تعريف المشروع من وحدة تحكم Firebase:

  1. سجل الدخول إلى console.firebase.google.com.

  2. حدد مشروع تطبيق UC-One (Connect أو SaaS) ، وافتح إعدادات المشروع الخاصة به.

  3. افتح علامة التبويب عام وقم بتسجيل معرف المشروع.

2

احصل على المفتاح الخاص لحساب الخدمة من Firebase:

  1. انتقل إلى علامة التبويب حسابات الخدمة في إعدادات المشروع.

  2. إما إنشاء حساب خدمة جديد والحصول على مفتاحه الخاص.

  3. أو افتح حساب خدمة موجودا وقم بإنشاء مفتاح خاص جديد له.

    ملاحظة: يجب أن يكون حساب الخدمة لديه إذن firebaseadmin-sdk .

  4. قم بتنزيل المفتاح (ملف .json) إلى مكان آمن.

3

استيراد ملف .json إلى خادم ADP /bw/install.

4

قم بتسجيل الدخول إلى ADP CLI وأضف المشروع ومفتاح واجهة برمجة التطبيقات إلى سياق مشاريع FCM:

ADP_CLI/Applications/NotificationPushServer/FCM/Projects> add connect-ucaas /bw/install/filename.json

5

أضف معرف التطبيق والمشروع إلى سياق تطبيقات FCM:

ADP_CLI/Applications/NotificationPushServer/FCM/Applications> add applicationId com.broadsoft.ucaas.connect projectId project-id

6

تحقق من التكوين:

ADP_CLI/Applications/NotificationPushServer/FCM/Projects> get
Project ID Accountkey
========================
connect-ucaas ********
ADP_CLI/Applications/NotificationPushServer/FCM/Applications> get
Application ID Project ID
===================================
com.broadsoft.ucaas.connect connect-ucaas

ما عليك سوى إجراء ذلك (كجزء من الترحيل) في الحالات التالية:

  • يتم استخدام NPS الخاص بك لتطبيقات UC-One SaaS أو BroadWorks Connect Android.

  • لقد اختبرت بالفعل أن إشعارات الدفع بالمكالمات إلى التطبيقات الأخرى تعمل مع FCMv1 API.

أنت تقوم بتعطيل FCMv1 مؤقتا لأنه يجب تمكين مفاتيح FCMv1 لهذه التطبيقات فقط أثناء عملية تكوين وكيل مصادقة NPS.

1

سجل الدخول إلى XSP الذي يستضيف NPS المشترك.

2

انتقل إلى سياق FCM وقم بتعطيل FCM v1: XSP_CLI/Applications/NotificationPushServer/FCM> set V1enabled false للعودة إلى استخدام مفتاح واجهة برمجة التطبيقات القديم FCM.

1

قم بإنشاء طلب خدمة مع جهة اتصال الإعداد الخاصة بك ، أو مع TAC ، لتوفير حساب عميل OAuth (Webex Common Identity). عنوان تكوين NPS لطلب الخدمة لإعداد وكيلالمصادقة.

تمنحك Cisco معرف عميل OAuth وسر عميل ورمز تحديث صالح لمدة 60 يوما. إذا انتهت صلاحية الرمز المميز قبل استخدامه مع NPS الخاص بك ، فيمكنك رفع طلب آخر.
2

قم بإنشاء حساب العميل على NPS:

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> set clientId client-Id-From-Step1

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> set clientSecret
New Password: client-Secret-From-Step1

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> set RefreshToken
New Password: Refresh-Token-From-Step1

للتحقق من تطابق القيم التي أدخلتها مع ما تم إعطاؤه لك، قم بتشغيل XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> get

3

أدخل عنوان URL لوكيل NPS، واضبط الفاصل الزمني لتحديث الرمز المميز (يوصى ب 30 دقيقة):

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set url https://nps.uc-one.broadsoft.com/nps/

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set VOIPTokenRefreshInterval 1800

4

(لإشعارات Android) أضف معرفات تطبيقات Android إلى سياق تطبيقات FCM على NPS.

لتطبيق Webex على Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add com.cisco.wx2.android

لتطبيق UC-One على Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add com.broadsoft.connect

5

(لإشعارات Apple iOS) أضف معرف التطبيق إلى سياق تطبيقات APNS، مع التأكد من حذف مفتاح المصادقة - اضبطه على فارغ.

بالنسبة لتطبيق Webex على iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

بالنسبة لتطبيق UC-One على iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

6

قم بتكوين عناوين URL NPS التالية:

سياق XSP CLI

المعلمة

القيمة

XSP_CLI/Applications/NotificationPushServer/FCM>

authURL

https://www.googleapis.com/oauth2/v4/token

pushURL

https://fcm.googleapis.com/v1/projects//messages:send

scope

https://www.googleapis.com/auth/firebase.messaging

XSP_CLI/Applications/NotificationPushServer/APNS/Production>

url

https://api.push.apple.com/3/device

7

قم بتكوين معلمات اتصال NPS التالية إلى القيم الموصى بها المعروضة:

سياق XSP CLI

المعلمة

القيمة

XSP_CLI/Applications/NotificationPushServer/FCM>

tokenTimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

XSP_CLI/Applications/NotificationPushServer/APNS/Production>

connectionTimeout

3000

connectionPoolSize

2

connectionIdleTimeoutInSeconds

600

8

تحقق مما إذا كان خادم التطبيقات يقوم بفحص معرفات التطبيق، لأنك قد تحتاج إلى إضافة تطبيقات Webex إلى قائمة السماح:

  1. تشغيل AS_CLI/System/PushNotification> get وتحقق من قيمة enforceAllowedApplicationList. إذا كان true ، تحتاج إلى إكمال هذه المهمة الفرعية. خلاف ذلك ، تخطي بقية المهمة الفرعية.

  2. AS_CLI/System/PushNotification/AllowedApplications> add com.cisco.wx2.android “Webex Android”

  3. AS_CLI/System/PushNotification/AllowedApplications> add com.cisco.squared “Webex iOS”

1

أعد تشغيل XSP:

bwrestart
2

اختبر إشعارات المكالمات إلى Android عن طريق إجراء مكالمات من مشترك BroadWorks إلى عميل الاتصال على Android. تحقق من ظهور إشعار المكالمة على جهاز Android.

ملاحظة: إذا بدأت إشعارات الدفع في الفشل لتطبيق UC-One android ، فمن المحتمل أن يكون هناك خطأ في التكوين. إذا كان هذا هو موقفك ، فيمكنك العودة إلى FCM القديم كما يلي:

  1. تعطيل FCMv1: XSP_CLI/Applications/NotificationPushServer/FCM> set V1Enabled false

  2. إعادة تشغيل XSP: bwrestart

  3. تحقق من التكوين الخاص بك.

  4. أعد تمكين FCMv1 وأعد تشغيل XSP.

  5. كرر الاختبار.

3

اختبر إشعارات المكالمات إلى iOS عن طريق إجراء مكالمات من مشترك BroadWorks إلى عميل الاتصال على iOS. تحقق من ظهور إشعار المكالمة على جهاز iOS.

ملاحظة: إذا بدأت إشعارات الدفع في الفشل لتطبيق UC-One iOS ، فمن المحتمل أن يكون هناك خطأ في التكوين. إذا كان هذا هو موقفك ، فيمكنك العودة إلى الواجهة الثنائية القديمة باستخدام set HTTP2Enabled false