Den här artikeln beskriver hur du konfigurerar ett delat NPS för att använda NPS-autentiseringsproxy, så att den också kan användas för att skicka samtalsaviseringar till Webex-appar. Om din NPS inte stöder andra appar kan du följa den förenklade proceduren i Webex för BroadWorks lösningsguide.

NPS-proxy, översikt

För att vara kompatibel med Webex för BroadWorks måste nps-programmet korrigeras för att stödja NPS-proxyfunktionen, push-server för VoIP i UCaaS.

Funktionen implementerar en ny design i Aviserings push-servern för att lösa säkerhetsrisken för delning av certifikat för push-meddelande med privata nycklar med tjänsteleverantörer för mobilklienter. Istället för att dela push-notifieringscertifikat och nycklar med tjänsteleverantören använder NPS ett nytt API för att hämta en kortlivad push-notifieringstoken från UCaaS-backend och använder denna token för autentisering med Apple APN:er och Google FCM-tjänster.

Funktionen förbättrar också möjligheten för push-servern för meddelanden att skicka meddelanden till Android-enheter via google Firebase Cloud Messaging (FCM) HTTPv1 API.

Den XSP (eller Application Delivery Platform ADP) som är värd för NPS måste uppfylla följande krav:

Lägsta antal versioner och begränsningar för sametr?de

  • NPS måste aktiveras på en dedikerad XSP/ADP och NPS måste vara det enda värdprogrammet på servern. Detta för att eliminera störningar vid leverans av push-meddelanden.

  • Det ska bara finnas en NPS-app i en distribution. Om du använder mobil UC-One Collaborate/Connect och eller UC-One SaaS och implementerar Webex för BroadWorks, måste du dela detta enskilda NPS för alla appar.

  • NPS måste finnas på version R22 eller senare, XSP eller ADP.

    R22/R23 XSP är kompatibel med en R21-stapel om XSP endast kör NPS och AS är R21. SP1. Se BroadWorks kompatibilitetsmatris för mer information.

  • Mer information om ADP-servern finns på Cisco BroadWorks Application Delivery Platform.

Delade NPS

Läs dessa anteckningar innan du konfigurerar ditt delade NPS för att använda NPS-proxyn:

  • Om din NPS används med andra appar (inte bara Webex-appen): Konfigurera först NPS-proxyn och ändra sedan NPS från att använda FCM-äldre API till att använda FCM HTTP v1 API.

  • När du har verifierat att aviseringarna fungerar korrekt för äldre appar med NPS-proxyn tar du bort FCM API-nyckeln för Android-appen och APNs autentiseringsnyckel för iOS-appen.

HTTP/2 för API:er

  • Om du har driftsatt några iOS-appar som inte kommer från Cisco/BroadSoft, konfigurera dessa appar för att använda HTTP/2 APNS-protokollet innan NPS konfigureras för att använda NPS-proxy.

  • XSP/ADPs som redan har stöd för Appen Collaborate eller SaaS BroadWorks måste migreras till HTTP/2. Detaljerad information om hur HTTP/2 konfigureras finns i Http/2 Support to Notification Push Server för APNS (migrering av NPS för stöd av dessa iOS-appar sammanfattas i den här artikeln).

Android FCMv1

  • Om du har driftsatt några Android-appar som inte kommer från Cisco/BroadSoft, konfigurera dessa appar för att använda FCMv1-nycklarna innan du konfigurerar NPS för att använda NPS-proxyn.

  • Om XSP/ADP för närvarande stöder Connect- eller UC-One SaaS-appen, aktivera sedan FCMv1-nycklar efter att du har konfigurerat NPS-proxyn. Vi rekommenderar att du migrerar alla ytterligare appar till FCMv1-nycklar, aktiverar och testar, och sedan inaktiverar dem tills du är redo att slutföra installationsanvisningarna (migreringsflödet dokumenteras i den här artikeln).

Visuell sammanfattning av migrering till NPS-autentiseringsproxyn
Tabell 1. Sammanfattning av uppgifter att migrera till NPS-proxy

Sekvens

Uppgiftstitel

När/Varför krävs uppgiften?

1

Migrera NPS till HTTP/2 för UC-One SaaS (eller Connect) iOS-appar.

Om NPS stöder dessa appar och de ännu inte har konfigurerats för HTTP/2.

2

Migrera NPS till FCMv1 för Android-appar med UC-One SaaS (eller Connect).

Om NPS stöder dessa appar och de ännu inte har konfigurerats för FCMv1.

3

Aktivera FCMv1-läge och testa push-meddelanden.

Om NPS har stöd för UC-One Connect och/eller andra (icke-Cisco) Android-appar.

4

Återaktivera FCM-äldre läge.

Om NPS har stöd för UC-One SaaS. Om du lämnar FCMv1 aktiverat innan du konfigurerar NPS-proxyn kommer push-meddelanden till UC-One SaaS att misslyckas.

5

Installera proxypatkar för NPS-autentisering.

Om NPS är på XSP R22 eller XSP R23.

6

Konfigurera NPS för att använda NPS-autentiseringsproxyn:

  • Bifoga teknisk support från NPS

  • Begär CI OAuth-konto

  • Skapa CI-konto på NPS och konfigurera uppdateringens tokens timeout

  • Lägg till App-ID för Android

  • Lägg till iOS app-ID

  • Kontrollera/ange URL:er och tidsgräns för anslutning

  • Lägg till appar till listan AS allow

  • (På annat sätt) Aktivera FCMv1

  • Starta om XSP/ADP

  • Testa PN:er för iOS- och Android-appar

Alltid obligatoriskt.

7

Ta bort FCM-äldre lägesnycklar.

För appar som stöds av NPS på FCMv1.

Den här uppgiften är obligatorisk för push-aviseringar till UC-One SaaS- och Webex-appar på iOS-plattformar.

Innan du börjar

Om din XSP körs med R22 måste du tillämpa ap354313 innan du kan konfigurera NPS-programmet för att använda HTTP/2 för APNS.

1

Ställ in produktions-URL och anslutningsparametrar på XSP_CLI/Applications/NotificationPushServer/APNS/Production>

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

set connectionPoolSize 2

set connectionTimeout 3000

set connectionIdleTimeoutInSeconds 600

Obs! Ställ inte in timeout för anslutningen under 1 000.

2

Lägg till program-ID:et i kontexten för APNS-programmen och se till att utelämna autentiseringsnyckeln – ställ in den på tom.

För UC-One SaaS:XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.broadsoft.uc-one

För Webex-appen: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

3

Kontrollera autentiseringstangenterna med XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> get

4

Om autentiseringsnyckeln inte är tom för com.broadsoft.uc-onekan du rensa den med XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> clear the-authkey

5

Aktivera HTTP/2:

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

6

Endast för UC-One SaaS-appar: Logga in på återförsäljarportalen och gå till Konfiguration > BroadWorks > .

7

Scrolla ner till avsnittet Notification Push Server och välj din version (t.ex. Version 22), följ sedan instruktionerna i portalen.

  • Denna uppgift gäller för NPS på XSP. Ignorera det om ditt NPS är på ADP.

  • Du kan använda denna procedur för migrering till FCMv1-aviseringar för UC-One Connect- eller UC-One SaaS Android-appar.

  • Du måste använda FCMv1 om du vill använda NPS-proxyn för att autentisera push-meddelanden till UC-One eller Webex Android-appar.

  • Denna uppgift förbereder NPS för FCMv1 så att du kan aktivera den som en del av konfigurationen av NPS-verifieringsproxy. Aktivera inte FCMv1 förrän du är redo att konfigurera NPS-autentiseringsproxy, eller så kommer aviseringar för SaaS-klienter att misslyckas.

1

Hämta projekt-ID från Firebase-konsolen:

  1. Logga in på console.firebase.google.com.

  2. Välj app projekt för UC-One (Connect eller SaaS) och öppna dess projektinställningar.

  3. Öppna fliken Allmänt och spela in projekt-ID:t.

2

Skaffa ditt tjänstekontos privata nyckel från Firebase:

  1. Gå till fliken Tjänstekonton i projektinställningarna.

  2. Skapa antingen ett nytt tjänstekonto och få dess privata nyckel.

  3. Eller öppna ett befintligt tjänstekonto och generera en ny privat nyckel till det.

    Obs! Tjänstkontot måste ha behörigheten firebaseadmin-sdk.

  4. Hämta nyckeln till en säker plats.

3

Kopiera nyckeln till XSP-värd för ditt NPS.

4

Lägg till projekt-ID och tillhörande privat nyckel till kontexten för FCM-projekt:

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

5

Lägg till UC-One-programmet (Connect eller SaaS) och associerat projekt-ID i kontexten för FCM-program:

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

6

Kontrollera konfigurationen för FCM mot attributen och rekommenderade värden som visas här. Använd set -versionen av kommandot för att ändra värden om det behövs:

Kör XSP_CLI/Applications/NotificationPushServer/FCM> get

Parameter

Rekommenderat värde

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

  • Denna uppgift gäller för NPS på ADP. Ignorera det om din NPS är på XSP.

  • Du kan använda denna procedur för migrering till FCMv1-aviseringar för UC-One Connect- eller UC-One SaaS Android-appar.

  • Du måste använda FCMv1 om du vill använda NPS-proxyn för att autentisera push-meddelanden till UC-One eller Webex Android-appar.

  • Denna uppgift förbereder NPS för FCMv1 så att du kan aktivera den som en del av konfigurationen av NPS-verifieringsproxy. Aktivera inte FCMv1 förrän du är redo att konfigurera NPS-autentiseringsproxy, eller så kommer aviseringar för SaaS-klienter att misslyckas.

1

Hämta projekt-ID från Firebase-konsolen:

  1. Logga in på console.firebase.google.com.

  2. Välj app projekt för UC-One (Connect eller SaaS) och öppna dess projektinställningar.

  3. Öppna fliken Allmänt och spela in projekt-ID:t.

2

Skaffa ditt tjänstekontos privata nyckel från Firebase:

  1. Gå till fliken Tjänstekonton i projektinställningarna.

  2. Skapa antingen ett nytt tjänstekonto och få dess privata nyckel.

  3. Eller öppna ett befintligt tjänstekonto och generera en ny privat nyckel till det.

    Obs! Tjänstkontot måste ha behörigheten firebaseadmin-sdk.

  4. Hämta nyckeln (.json-filen) till en säker plats.

3

Importera .json-filen till ADP-servern /bw/install.

4

Logga in på ADP CLI och lägg till projekt- och API-nyckeln till FCM-projektsammanhanget:

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

5

Lägg till program- och projekt-ID till kontexten för FCM-program:

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

6

Verifiera din konfiguration:

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

Du behöver bara göra detta (som en del av migreringen) om:

  • Ditt NPS används för UC-One SaaS- eller BroadWorks Connect Android-appar.

  • Du har redan testat att samtalsaviseringar till andra appar fungerar med FCMv1 API.

Du inaktiverar tillfälligt FCMv1 eftersom FCMv1-nycklar för dessa appar endast får aktiveras under proxykonfigurationsprocessen för NPS-verifiering.

1

Logga in på XSP-värd för ditt delade NPS.

2

Navigera till FCM-kontexten och inaktivera FCM v1: XSP_CLI/Applications/NotificationPushServer/FCM> set V1enabled false för att återgå till att använda FCM-äldre API-nyckel.

1

Skapa en tjänsteförfrågan med din introduktionskontakt eller med TAC för att tillhandahålla ditt (Webex Common Identity) OAuth-klientkonto. Ge din servicebegäran NPS-konfiguration för konfiguration av autentiseringsproxy.

Vi ger dig ett OAuth-klient-ID, en klienthemlighet och en uppdateringstoken som är giltig i 60 dagar. Om denna token upphör innan du använder den med ditt NPS kan du förfrågningen upp ytterligare en gång.
2

Skapa klientkontot på 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

Kör kommandot för att kontrollera att de värden du angav matchar de som du fick. XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> get

3

Ange NPS-proxy-URL och ställ in uppdateringsintervallet för token (30 minuter rekommenderas):

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

För att förbättra DNS-upplösningshastigheten rekommenderar vi att du använder lämpligt FQDN baserat på din region istället för det nuvarande FQDN:et nps.uc-one.broadsoft.com.

Regionbaserade FQDN:er:

Östra USA:

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set url https://broadworks-idp-proxy-a.wbx2.com/nps/

Västamerika:

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set url https://broadworks-idp-proxy-r.wbx2.com/nps/

Europa:

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set url https://broadworks-idp-proxy-k.wbx2.com/nps/

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set VOIPTokenRefreshInterval 1800

Om push-meddelanden får timeout på grund av en fördröjning i DNS-matchningen, öka timeout-värdet i "/etc/resolv.conf" filen på BroadWorks-servern.

4

(För Android-aviseringar) Lägg till Android-program-ID:et till FCM-programsammanhanget i NPS.

För Webex-appen på Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add com.cisco.wx2.android

För UC-One-appen på Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add com.broadsoft.connect

5

(För Apple iOS-aviseringar) Lägg till program-ID i APNS-programsammanhanget och se till att utelämna autentiseringsnyckeln – ställ in den på tom.

För Webex-appen på iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

För UC-One-app på iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

6

Konfigurera följande NPS-URL:er:

XSP CLI-kontext

Parameter

Värde

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

Konfigurera följande NPS-anslutningsparametrar till de rekommenderade värden som visas:

XSP CLI-kontext

Parameter

Värde

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

Kontrollera om programservern är ett program-ID eftersom du kan behöva lägga till Webex-apparna i listan över tillåtna program:

  1. Kör AS_CLI/System/PushNotification> get och kontrollera värdet på enforceAllowedApplicationList. Om det är truemåste du slutföra denna deluppgift. Annars kan du hoppa över resten av deluppgiften.

  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

Starta om XSP:

bwrestart
2

Testa samtalsaviseringar på Android genom att ringa samtal från en BroadWorks-prenumerant till samtalsklienten på Android. Bekräfta att samtalsaviseringar visas på Android-enheten.

Obs! Om push-meddelanden inte börjar misslyckas för androidprogrammet UC-One kan det finnas en felkonfiguration. Om detta är din situation kan du återgå till den äldre FCM enligt följande:

  1. Inaktivera FCMv1: XSP_CLI/Applications/NotificationPushServer/FCM> set V1Enabled false

  2. Starta om XSP: bwrestart

  3. Kontrollera din konfiguration.

  4. Återaktivera FCMv1 och starta om XSP.

  5. Upprepa testet.

3

Testa samtalsaviseringar på iOS genom att ringa samtal från en BroadWorks-prenumerant till samtalsklienten på iOS. Bekräfta att samtalsaviseringar visas på iOS-enheten.

Obs! Om push-meddelanden inte börjar misslyckas i UC-One iOS-programmet kan det finnas en felaktig konfiguration. Om detta är din situation kan du återgå till det äldre binär gränssnittet med set HTTP2Enabled false