W tym artykule opisano, jak skonfigurować udostępniony serwer NPS do korzystania z serwera proxy uwierzytelniania serwera NPS, tak aby można go było również używać do wypychania powiadomień o połączeniach do aplikacji Webex. Jeśli serwer NPS nie obsługuje innych aplikacji, można postępować zgodnie z uproszczoną procedurą opisaną w Przewodniku po https://help.webex.com/z9gt5jrozwiązaniach Webex for BroadWorks.

Omówienie serwera proxy serwera NPS

Aby zapewnić zgodność z Webex dla BroadWorks, serwer NPS musi zostać załatany w celu obsługi funkcji serwera proxy NPS, Push Server for VoIP w UCaaS.

Ta funkcja implementuje nowy projekt na serwerze wypychania powiadomień, aby rozwiązać lukę w zabezpieczeniach polegającą na udostępnianiu kluczy prywatnych certyfikatu powiadomień wypychanych dostawcom usług dla klientów mobilnych. Zamiast udostępniać certyfikaty i klucze powiadomień wypychanych usługodawcy, serwer NPS używa nowego interfejsu API do uzyskiwania krótkotrwałego tokenu powiadomień wypychanych z zaplecza UCaaS i używa tego tokenu do uwierzytelniania za pomocą usług Apple APNs i Google FCM.

Ta funkcja zwiększa również możliwości serwera powiadomień push do wysyłania powiadomień do urządzeń z systemem Android za pośrednictwem nowego interfejsu API Google Firebase Cloud Messaging (FCM) HTTPv1.

XSP (lub Application Delivery Platform ADP), który obsługuje serwer NPS, musi spełniać następujące wymagania:

Minimalne wersje i ograniczenia dotyczące wspólnego pobytu

  • Serwer NPS musi być aktywowany na dedykowanym serwerze XSP/ADP, a serwer NPS musi być jedyną hostowaną aplikacją na serwerze. Ma to na celu wyeliminowanie zakłóceń w dostarczaniu powiadomień push.

  • We wdrożeniu powinna być tylko jedna aplikacja NPS. Jeśli używasz mobilnego UC-One Collaborate/Connect i lub UC-One SaaS i implementujesz Webex dla BroadWorks, musisz udostępnić ten pojedynczy SERWER NPS dla wszystkich aplikacji.

  • Serwer NPS musi być zainstalowany w wersji R22 lub nowszej XSP albo ADP.

    R22/R23 XSP jest kompatybilny ze stosem R21, jeśli XSP działa tylko na NPS, a AS to R21. Dodatek SP1. Zobacz Macierz zgodności BroadWorks, aby uzyskać więcej informacji.

  • Więcej informacji na temat serwera ADP można znaleźć na https://xchange.broadsoft.com/node/1051580stronie .

Współdzielony serwer NPS

Przeczytaj te uwagi przed skonfigurowaniem udostępnionego serwera NPS do korzystania z serwera proxy SERWERA PROXY:

  • Jeśli serwer NPS jest używany z innymi aplikacjami (nie tylko z aplikacją Webex): Najpierw skonfiguruj serwer proxy SERWERA PROXY SERWERA NPS, a następnie zmień serwer NPS z używania starszego interfejsu API FCM na korzystanie z interfejsu API FCM HTTP v1.

  • Po sprawdzeniu, czy powiadomienia działają poprawnie dla starszych aplikacji z serwerem proxy NPS, usuń klucz interfejsu API FCM dla aplikacji na Androida i klucz uwierzytelniania APN dla aplikacji na iOS.

APNs HTTP/2

  • Jeśli wdrożono aplikacje dla systemu iOS, które nie pochodzą z cisco/BroadSoft, skonfiguruj te aplikacje do korzystania z protokołu HTTP/2 APNS przed skonfigurowaniem serwera NPS do korzystania z serwera proxy NPS.

  • XSP/ADP, które już obsługują aplikację Collaborate lub SaaS BroadWorks, muszą zostać przeniesione do protokołu HTTP/2. Aby uzyskać szczegółowe informacje na temat konfigurowania protokołu HTTP/2, zobacz Obsługa protokołu HTTP/2 dla serwera Notification Push Server dla usługi APNS (migracja serwera NPS do obsługi tych aplikacji dla systemu iOS została podsumowana w tym artykule).

Android FCMv1

  • Jeśli wdrożono aplikacje dla systemu Android, które nie pochodzą z cisco/BroadSoft, skonfiguruj te aplikacje do używania kluczy FCMv1 przed skonfigurowaniem serwera NPS do korzystania z serwera proxy NPS.

  • Jeśli XSP/ADP obsługuje obecnie aplikację Connect lub UC-One SaaS, włącz klucze FCMv1 po skonfigurowaniu serwera proxy NPS. Zalecamy migrację wszystkich dodatkowych aplikacji do kluczy FCMv1, włączenie i przetestowanie, a następnie wyłączenie, dopóki nie będzie gotowe do wykonania instrukcji konfiguracji (przepływ migracji jest udokumentowany w tym artykule).

Wizualne podsumowanie migracji do serwera proxy uwierzytelniania serwera NPS
Tabela 1. Podsumowanie zadań związanych z migracją do serwera proxy serwera NPS

Kolejność

Tytuł zadania

Kiedy/dlaczego zadanie jest wymagane?

1

Przeprowadź migrację serwera NPS do protokołu HTTP/2 dla aplikacji UC-One SaaS (lub Connect) dla systemu iOS.

Jeśli serwer NPS obsługuje te aplikacje i nie są one jeszcze skonfigurowane dla protokołu HTTP/2.

2

Przeprowadź migrację serwera NPS do FCMv1 dla aplikacji UC-One SaaS (lub Connect) na Androida.

Jeśli serwer NPS obsługuje te aplikacje i nie są one jeszcze skonfigurowane dla FCMv1.

3

Włącz tryb FCMv1 i testuj powiadomienia push.

Jeśli serwer NPS obsługuje UC-One Connect i/lub inne (inne (inne niż Cisco) aplikacje na Androida.

4

Ponownie włącz starszy tryb FCM.

Jeśli serwer NPS obsługuje UC-One SaaS. Jeśli pozostawisz włączony fcMv1, przed skonfigurowaniem serwera proxy NPS powiadomienia wypychane do UC-One SaaS zaczną kończyć się niepowodzeniem.

5

Zainstaluj poprawki serwera proxy uwierzytelniania serwera NPS.

Jeśli serwer NPS jest włączony na XSP R22 lub XSP R23.

6

Skonfiguruj serwer NPS do korzystania z serwera proxy uwierzytelniania serwera NPS:

  • Dołącz wsparcie techniczne z serwera NPS

  • Poproś o konto CI OAuth

  • Tworzenie konta ciągłej integracji na serwerze NPS i konfigurowanie limitu czasu tokenu odświeżania

  • Dodawanie identyfikatorów aplikacji na Androida

  • Dodawanie identyfikatorów aplikacji na iOS

  • Sprawdzanie/ustawianie adresów URL i limitów czasu połączenia

  • Dodawanie aplikacji do listy dozwolonych jako

  • (Ponownie-) Włącz FCMv1

  • Uruchom ponownie XSP / ADP

  • Testowanie pn dla aplikacji na iOS i Androida

Zawsze wymagane.

7

Usuń starsze trybu FCM.

W przypadku aplikacji, które są pomyślnie obsługiwane przez serwer NPS w fcMv1.

To zadanie jest obowiązkowe w przypadku powiadomień push do aplikacji UC-One SaaS i Webex na platformach iOS.

Przed rozpoczęciem

Jeśli na komputerze XSP jest uruchomiony program R22, przed skonfigurowaniem aplikacji NPS do korzystania z protokołu HTTP/2 dla usługi APNS należy zastosować ap354313.

1

Ustaw adres URL produkcji i parametry połączenia na stronie XSP_CLI/Applications/NotificationPushServer/APNS/Production>

ustaw adres URL https://api.push.apple.com/3/device

zestaw połączeniaRozmiar 2

ustaw limit czasu połączenia 3000

set connectionIdleTimeoutInSeconds 600

Uwaga: Nie ustawiaj limitu czasu połączenia poniżej 1000.

2

Dodaj identyfikatory aplikacji do kontekstu aplikacji APNS, pomijając klucz uwierzytelniania — ustaw go na pusty.

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

Dla aplikacji Webex: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> dodaj com.cisco.squared

3

Sprawdź klucze uwierzytelniania za pomocą XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> get

4

Jeśli klucz uwierzytelniania nie jest pusty dla com.broadsoft.uc-one, można go wyczyścić za pomocą XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> wyczyścić klucz autorski

5

Włącz HTTP/2:

XSP_CLI/Applications/NotificationPushServer/APNS/GeneralSettings> ustaw wartość true HTTP2Enable

6

Tylko dla aplikacji UC-One SaaS: Zaloguj się do portalu sprzedawcy i przejdź do Configuration > BroadWorks > .

7

Przewiń w dół do sekcji Serwer push powiadomień i wybierz swoją wersję (np. Zwolnienie 22), a następnie postępuj zgodnie z instrukcjami podanymi w portalu.

  • To zadanie dotyczy serwera NPS na serwerze XSP. Zignoruj go, jeśli serwer NPS jest włączony przy użyciu protokołu ADP.

  • Tej procedury można użyć do migracji do powiadomień FCMv1 dla aplikacji UC-One Connect lub UC-One SaaS na Androida.

  • Musisz użyć FCMv1, jeśli chcesz używać serwera proxy NPS do uwierzytelniania powiadomień push do UC-One lub aplikacji Webex na Androida.

  • To zadanie przygotowuje serwer NPS dla fcMv1, tak aby można go było włączyć w ramach konfiguracji serwera proxy uwierzytelniania serwera NPS. Nie włączaj FCMv1, dopóki nie będziesz gotowy do skonfigurowania serwera proxy uwierzytelniania NPS lub powiadomienia do klientów SaaS nie powiodą się.

1

Uzyskaj identyfikator projektu z konsoli Firebase:

  1. Zaloguj się do console.firebase.google.com.

  2. Wybierz projekt aplikacji UC-One (Connect lub SaaS), otwórz jego ustawienia projektu.

  3. Otwórz kartę Ogólne i zapisz identyfikator projektu.

2

Uzyskaj klucz prywatny konta usługi z Firebase:

  1. Przejdź do karty Konta usług w ustawieniach projektu.

  2. Utwórz nowe konto usługi i uzyskaj jego klucz prywatny.

  3. Lub otwórz istniejące konto usługi i wygeneruj dla niego nowy klucz prywatny.

    Uwaga: Konto usługi musi mieć uprawnienie firebaseadmin-sdk .

  4. Pobierz klucz do bezpiecznej lokalizacji.

3

Skopiuj klucz do XSP hostującego serwer NPS.

4

Dodaj identyfikator projektu i skojarzony klucz prywatny do kontekstu projektów FCM:

XSP_CLI/Applications/NotificationPushServer/FCM/Projects> dodaj ścieżkę id projektu/do/keyfile

5

Dodaj aplikację UC-One (Connect lub SaaS) i powiązany identyfikator projektu do kontekstu aplikacji FCM:

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

6

Sprawdź konfigurację FCM pod kątem atrybutów i zalecanych wartości pokazanych tutaj. Użyj ustawionej wersji polecenia, aby w razie potrzeby zmienić wartości:

Uruchom XSP_CLI/Applications/NotificationPushServer/FCM> pobierz

Parametr

Zalecana wartość

authURL

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

pushURL

https://fcm.googleapis.com/v1/projects/Identyfikator PROJEKTU/wiadomości:wyślij

zakres

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

tokenTimeToLiveInSeconds (Czas tokenTimeToLiveInSeconds)

3600

Łączność w rozmiarze

10

connectionTimeoutInMilliseconds

3000

ConnectionIdleTimeoutInSeconds

600

  • To zadanie dotyczy serwera NPS w ADP. Zignoruj go, jeśli serwer NPS jest włączony na XSP.

  • Tej procedury można użyć do migracji do powiadomień FCMv1 dla aplikacji UC-One Connect lub UC-One SaaS na Androida.

  • Musisz użyć FCMv1, jeśli chcesz używać serwera proxy NPS do uwierzytelniania powiadomień push do UC-One lub aplikacji Webex na Androida.

  • To zadanie przygotowuje serwer NPS dla fcMv1, tak aby można go było włączyć w ramach konfiguracji serwera proxy uwierzytelniania serwera NPS. Nie włączaj FCMv1, dopóki nie będziesz gotowy do skonfigurowania serwera proxy uwierzytelniania NPS lub powiadomienia do klientów SaaS nie powiodą się.

1

Uzyskaj identyfikator projektu z konsoli Firebase:

  1. Zaloguj się do console.firebase.google.com.

  2. Wybierz projekt aplikacji UC-One (Connect lub SaaS), otwórz jego ustawienia projektu.

  3. Otwórz kartę Ogólne i zapisz identyfikator projektu.

2

Uzyskaj klucz prywatny konta usługi z Firebase:

  1. Przejdź do karty Konta usług w ustawieniach projektu.

  2. Utwórz nowe konto usługi i uzyskaj jego klucz prywatny.

  3. Lub otwórz istniejące konto usługi i wygeneruj dla niego nowy klucz prywatny.

    Uwaga: Konto usługi musi mieć uprawnienie firebaseadmin-sdk .

  4. Pobierz klucz (plik .json) do bezpiecznej lokalizacji.

3

Importuj plik .json do serwera ADP /bw/install.

4

Zaloguj się do interfejsu wiersza polecenia ADP i dodaj klucz projektu i API do kontekstu projektów FCM:

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

5

Dodaj identyfikator aplikacji i projektu do kontekstu aplikacji FCM:

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

6

Sprawdź konfigurację:

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

Musisz to zrobić tylko (w ramach migracji), jeśli:

  • Twój NPS jest używany dla aplikacji UC-One SaaS lub BroadWorks Connect Android.

  • Przetestowano już, że powiadomienia wypychane o połączeniach do innych aplikacji działają z interfejsem API FCMv1.

Tymczasowo wyłączasz FCMv1, ponieważ klucze FCMv1 dla tych aplikacji muszą być włączone tylko podczas procesu konfiguracji serwera proxy uwierzytelniania serwera npS.

1

Zaloguj się do XSP hostującego twój udostępniony serwer NPS.

2

Przejdź do kontekstu FCM i wyłącz FCM v1: XSP_CLI/Applications/NotificationPushServer/FCM> ustaw V1enabled false , aby powrócić do korzystania ze starszego klucza interfejsu API FCM.

1

Utwórz zgłoszenie serwisowe z kontaktem onboardingowym lub TAC, aby udostępnić swoje konto klienta OAuth (Webex Common Identity). Nadaj nazwę konfiguracji serwera NPS żądania usługi dla Auth Proxy Setup.

Firma Cisco udostępnia identyfikator klienta OAuth, klucz tajny klienta i token odświeżania, który jest ważny przez 60 dni. Jeśli token wygaśnie przed użyciem go z serwerem NPS, możesz zgłosić kolejne żądanie.
2

Utwórz konto klienta na serwerze NPS:

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> ustaw klienta-Id-From-Step1

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> ustaw klientTajne nowe hasło: klient-Secret-From-Step1

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> ustaw nowe hasło RefreshToken: Odśwież-Token-From-Step1

Aby zweryfikować wprowadzone wartości zgodne z podanymi wartościami, uruchom XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> get

3

Wprowadź adres URL serwera proxy serwera NPS i ustaw interwał odświeżania tokenu (zalecane 30 minut):

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> ustaw adres URL https://nps.uc-one.broadsoft.com/nps/

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> ustaw VOIPTokenRefreshInterwał 1800

4

(W przypadku powiadomień na Androida) Dodaj identyfikatory aplikacji systemu Android do kontekstu aplikacji FCM na serwerze NPS.

Dla aplikacji Webex na Androida: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> dodaj com.cisco.wx2.android

Dla aplikacji UC-One na Androida: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> dodaj com.broadsoft.connect

5

(W przypadku powiadomień Apple iOS) Dodaj identyfikator aplikacji do kontekstu aplikacji APNS, pomijając klucz Auth – ustaw go na pusty.

Dla aplikacji Webex na iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> dodaj com.cisco.squared

Dla aplikacji UC-One na iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> dodaj com.cisco.squared

6

Skonfiguruj następujące adresy URL serwera NPS:

Kontekst interfejsu wiersza polecenia XSP

Parametr

Wartość

XSP_CLI/Aplikacje/NotificationPushServer/FCM>

authURL

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

pushURL

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

zakres

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

XSP_CLI/Applications/NotificationPushServer/APNS/Production>

url

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

7

Skonfiguruj następujące parametry połączenia serwera NPS zgodnie z wyświetlanymi zalecanymi wartościami:

Kontekst interfejsu wiersza polecenia XSP

Parametr

Wartość

XSP_CLI/Aplikacje/NotificationPushServer/FCM>

tokenTimeToLiveInSeconds (Czas tokenTimeToLiveInSeconds)

3600

Łączność w rozmiarze

10

connectionTimeoutInMilliseconds

3000

ConnectionIdleTimeoutInSeconds

600

XSP_CLI/Applications/NotificationPushServer/APNS/Production>

connectionTimeout

3000

Łączność w rozmiarze

2

ConnectionIdleTimeoutInSeconds

600

8

Sprawdź, czy serwer aplikacji sprawdza identyfikatory aplikacji, ponieważ może być konieczne dodanie aplikacji Webex do listy dozwolonych:

  1. Uruchom AS_CLI/System/PushNotification> pobierz i sprawdź wartość enforceAllowedApplicationList. Jeśli jest to prawda, musisz wykonać to zadanie podrzędne. W przeciwnym razie pomiń resztę zadania podrzędnego.

  2. AS_CLI/System/PushNotification/AllowedApplications> dodaj com.cisco.wx2.android „Webex Android”

  3. AS_CLI/System/PushNotification/AllowedApplications> dodaj com.cisco.squared „Webex iOS”

1

Uruchom ponownie XSP:

bwrestart
2

Przetestuj powiadomienia o połączeniach z Androidem, wykonując połączenia od subskrybenta BroadWorks do klienta wywołującego na Androidzie. Sprawdź, czy powiadomienie o połączeniu pojawia się na urządzeniu z Androidem.

Uwaga: Jeśli powiadomienia push zaczną kończyć się niepowodzeniem dla aplikacji UC-One na Androida, możliwe jest, że nastąpiła błędna konfiguracja. Jeśli tak jest w Twojej sytuacji, możesz powrócić do starszego FCM w następujący sposób:

  1. Wyłącz FCMv1: XSP_CLI/Applications/NotificationPushServer/FCM> zestaw V1Włączone false

  2. Uruchom ponownie XSP: bwrestart

  3. Sprawdź konfigurację.

  4. Ponownie włącz FCMv1 i uruchom ponownie XSP.

  5. Powtórz test.

3

Przetestuj powiadomienia o połączeniach z systemem iOS, wykonując połączenia od subskrybenta BroadWorks do klienta wywołującego w systemie iOS. Sprawdź, czy powiadomienie o połączeniu jest wyświetlane na urządzeniu z systemem iOS.

Uwaga: Jeśli powiadomienia push zaczną kończyć się niepowodzeniem dla aplikacji UC-One iOS, możliwe jest, że wystąpiła błędna konfiguracja. Jeśli jest to Twoja sytuacja, możesz powrócić do starszego interfejsu binarnego z zestawem HTTP2Enabled false