- 主页
- /
- 文章
了解如何通过本配置指南更新 Cisco BroadWorks NPS 以使用 NPS代理。了解实现 无缝集成和增强网络性能的分步说明、注意事项和最佳实践。
NPS 验证代理概述
本文描述如何配置共享的 NPS 以使用 NPS 验证代理,以便还可用其将呼叫通知推送到 Webex 应用程序。如果您的 NPS 不支持其他应用程序,您可以按照 Webex for BroadWorks 解决方案指南中的简化步骤进行操作。
NPS 代理概述
为了与 Webex for BroadWorks 兼容,必须对 NPS 打补丁以支持 NPS 代理功能,即 UCaaS 中用于网络语音的推送服务器。
该功能在通知推送服务器中实现了新的设计,可解决与移动客户端的服务商共享推送通知证书私钥的安全漏洞。NPS 不使用与服务提供商共享推送通知证书和密钥的方式,而是使用新的 API 从 UCaaS 后端获取短期推送通知令牌,并使用此令牌对 Apple APNs 和 Google FCM 服务进行身份验证。
此功能还增强了通知推送通过新的 Google Firebase Cloud Messaging (FCM) HTTPv1 API 向 Android 设备推送通知的功能。
-
有关更多信息,请参阅 UCaaS 中用于 VoIP 的推送服务器功能说明。
-
该功能的 BroadWorks 补丁可在以下位置找到: https://software.cisco.com/download/home/286326302/type/286326345/release/RI.2022.04。
-
有关 ADP 服务器的更多信息,请访问 Cisco BroadWorks 应用交付平台。
NPS 验证代理前提条件
托管 NPS 的 XSP(或应用程序交付平台 ADP)必须满足以下要求:
最低版本和并存限制
-
NPS 必须在专用 XSP/ADP 上激活,且必须是服务器上唯一的托管应用程序。这是为了消除对推送通知传送的干扰。
-
部署中应该只有一个 NPS 应用程序。如果您使用的是移动 UC-One Collaborate/Connect 和/或 UC-One SaaS,并且实施了 Webex for BroadWorks,则必须对所有应用程序共享这个单一的 NPS。
-
NPS 必须在 R22 或更高版本的 XSP 或 ADP 上。
如果 XSP 只运行 NPS 且 AS 为 R21.SP1,则 R22/R23 XSP 与 R21 堆栈兼容。请参阅 BroadWorks 兼容性矩阵了解更多信息。
-
有关 ADP 服务器的更多信息,请访问 Cisco BroadWorks 应用交付平台。
共享的 NPS
在配置共享的 NPS 以使用 NPS 代理之前,请参阅以下说明:
-
如果您的 NPS 还与其他应用程序一起使用(不仅限于 Webex 应用程序):先配置 NPS 代理,然后将 NPS 从使用 FCM 旧 API 更改为使用 FCM HTTP v1 API。
-
在您确认使用 NPS 代理的旧版应用程序的通知功能正常工作后,请移除 Android 应用程序的 FCM API 密钥和 iOS 应用程序的 APNs 身份验证密钥。
APNs HTTP/2
-
如果您部署了任何非来自[此处应填写来源名称]的 iOS 应用 Cisco/BroadSoft, 配置这些应用程序以使用 HTTP/2 在配置 NPS 使用 NPS 代理之前,请先执行 APNS 协议。
-
需要将已经支持协作或 SaaS BroadWorks 应用程序的 XSP/ADP 迁移至 HTTP/2。有关配置 HTTP/2 的详细信息,请参阅 HTTP/2 对 APNS 通知推送服务器的支持(本文概述了 NPS 为支持这些 iOS 应用程序而进行的迁移)。
Android FCMv1
-
如果您部署了任何非来自[此处应填写来源名称]的 Android 应用 Cisco/BroadSoft, 在配置 NPS 使用 NPS 代理之前,请先配置这些应用程序以使用 FCMv1 密钥。
-
如果 XSP/ADP 目前支持 Connect 或 UC-One SaaS 应用,然后在配置 NPS 代理后启用 FCMv1 密钥。我们建议您将所有其他应用程序迁移到 FCMv1 密钥,启用并测试,然后禁用,直到您准备好完成设置说明(迁移流程已记录在本文中)。
NPS 代理迁移摘要

|
顺序 |
任务标题 |
何时/为什么需要执行这项任务? |
|---|---|---|
|
1 |
为了 UC-One SaaS(或 Connect)iOS 应用程序将 NPS 迁移到 HTTP/2。 |
如果 NPS 支持这些应用程序,且尚未针对 HTTP/2 对其进行配置。 |
|
2 |
为了 UC-One SaaS(或 Connect)Android 应用程序将 NPS 迁移到 FCMv1。 |
如果 NPS 支持这些应用程序,且尚未针对 FCMv1 对其进行配置。 |
|
3 |
启用 FCMv1 模式并测试推送通知。 |
如果 NPS 支持 UC-One Connect 和/或其他(非 Cisco)Android 应用程序。 |
|
4 |
重新启用 FCM 旧模式。 |
如果 NPS 支持 UC-One SaaS。如果启用 FCMv1,在配置 NPS 代理之前,将通知推送到 UC-One SaaS 开始失败。 |
|
5 |
安装 NPS 验证代理补丁。 |
如果 NPS 在 XSP R22 或 XSP R23 上。 |
|
6 |
配置 NPS 以使用 NPS 验证代理:
|
始终必须执行。 |
|
7 |
删除 FCM 旧模式密钥。 |
适用于 FCMv1 上 NPS 成功支持的应用程序。 |
将 BroadWorks Collaborate iOS 应用程序迁移到 HTTP/2
如果要在 iOS 平台上向 UC-One SaaS 和 Webex 应用程序推送通知,则必须执行此任务。
准备工作
如果 XSP 运行的是 R22,则必须先应用 ap354313,然后才能将 NPS 应用程序配置为对 APNS 使用 HTTP/2。
| 1 |
设置产品 URL 和连接参数,地址为
注: 不要将连接超时设置为低于 1000 的值。 |
| 2 |
将应用程序标识添加到 APNS 应用程序上下文中,确保省略验证密钥 - 将其设置为空。 对于 UC-One SaaS: 对于 Webex 应用程序: |
| 3 |
检查验证密钥 |
| 4 |
如果 |
| 5 |
启用 HTTP/2:
|
| 6 |
仅适用于 UC-One SaaS 应用程序:登录经销商门户并转到 |
| 7 |
向下滚动到“通知推送服务器”部分,然后选择您的版本(例如版本 22),然后按照门户网站提供的说明进行操作。 |
将 BroadWorks UC-One Connect / SaaS Android 应用程序迁移到 FCMv1
-
此任务适用于 XSP 上的 NPS。如果 NPS 在 ADP 上,请忽略。
-
您可以遵照此程序为 UC-One Connect 或 UC-One SaaS Android 应用程序迁移到 FCMv1 通知。
-
如果要使用 NPS 代理向 UC-One 或 Webex Android 应用程序验证推送通知,必须使用 FCMv1。
-
此任务旨在为 FCMv1 准备 NPS,以便您可以在配置 NPS 验证代理时启用它。在准备配置 NPS 验证代理之前,请勿启用 FCMv1,否则通知将无法发送至 SaaS 客户端。
| 1 |
从 Firebase 控制台获取项目标识: | ||||||||||||||||
| 2 |
从 Firebase 获取服务帐户的私钥: | ||||||||||||||||
| 3 |
将密钥复制到托管 NPS 的 XSP。 | ||||||||||||||||
| 4 |
将项目标识和关联的私钥添加到 FCM 项目上下文:
| ||||||||||||||||
| 5 |
将 UC-One(Connect 或 SaaS)应用程序和关联的项目标识添加到 FCM 应用程序上下文:
| ||||||||||||||||
| 6 |
根据此处所示的属性和建议值检查 FCM 的配置。如有必要,请使用 运行
|
将 BroadWorks UC-One Connect / SaaS Android 应用程序迁移到 FCMv1(ADP 上)
-
此任务适用于 ADP 上的 NPS。如果 NPS 在 XSP 上,请忽略。
-
您可以遵照此程序为 UC-One Connect 或 UC-One SaaS Android 应用程序迁移到 FCMv1 通知。
-
如果要使用 NPS 代理向 UC-One 或 Webex Android 应用程序验证推送通知,必须使用 FCMv1。
-
此任务旨在为 FCMv1 准备 NPS,以便您可以在配置 NPS 验证代理时启用它。在准备配置 NPS 验证代理之前,请勿启用 FCMv1,否则通知将无法发送至 SaaS 客户端。
| 1 |
从 Firebase 控制台获取项目标识: |
| 2 |
从 Firebase 获取服务帐户的私钥: |
| 3 |
将 .json 文件导入 ADP 服务器 |
| 4 |
登录到 ADP CLI,并将项目和 API 密钥添加到 FCM 项目上下文中:
|
| 5 |
将应用程序和项目标识添加到 FCM 应用程序上下文中:
|
| 6 |
验证您的配置: |
重新启用 FCM 旧模式
您只需要在以下情况下执行此操作(作为迁移的一部分):
-
您的 NPS 可用于 UC-One SaaS 或 BroadWorks Connect Android 应用程序。
-
您已经测试过,向其他应用程序发送呼叫推送通知的功能适用于 FCMv1 API。
您暂时禁用了 FCMv1,因为这些应用程序的 FCMv1 密钥只能在 NPS 验证代理配置过程中启用。
| 1 |
登录到托管您的共享 NPS 的 XSP。 |
| 2 |
导航至 FCM 上下文并禁用 FCM v1: |
安装 NPS 验证代理补丁
请安装以下补丁以支持 NPS 验证代理功能:
R22 补丁
R23 补丁
配置 NPS 以使用身份验证代理
| 1 |
使用已加入的联系人或 TAC 创建服务请求以预配置 (Webex Common Identity) OAuth 客户端帐户。将您的服务请求标题设为 NPS Configuration for Auth Proxy Setup(用于身份验证代理设置的 NPS 配置)。 我们会为您提供一个 OAuth 客户端 ID、一个客户端密钥和一个有效期为 60 天的刷新令牌。如果令牌在您与 NPS 一同使用前已到期,您可以提出另一个请求。
| |||||||||||||||||||
| 2 |
在 NPS 上创建客户端帐户:
运行该命令以验证您输入的值是否与提供给您的值相符。 | |||||||||||||||||||
| 3 |
输入 NPS 代理 URL,并设置令牌刷新间隔(建议 30 分钟): 基于区域的完全限定域名: 美国东部: 美国西部:
欧洲:
沙特阿拉伯:
澳大利亚:
如果推送通知因 DNS 解析延迟而超时,请增加超时值。 "/etc/resolv.conf" BroadWorks 服务器上的文件。 | |||||||||||||||||||
| 4 |
(对于 Android 通知)将 Android 应用程序标识添加到 NPS 上的 FCM 应用程序上下文中。 适用于安卓系统的Webex应用: 适用于安卓系统的UC-One应用程序: | |||||||||||||||||||
| 5 |
(适用于 Apple iOS 通知)将应用程序 ID 添加到 APNS 应用程序上下文,确保省略 Auth 密钥 - 将其设置为空。 适用于 iOS 版 Webex 应用: 对于 iOS 上的 UC-One 应用程序: | |||||||||||||||||||
| 6 |
配置以下 NPS URL:
| |||||||||||||||||||
| 7 |
根据显示的推荐值配置以下 NPS 连接参数:
| |||||||||||||||||||
| 8 |
检查应用程序服务器是否筛选应用程序 ID,因为您可能需要将 Webex 应用程序添加到允许列表中: |
重启 NPS 和测试推送通知
| 1 |
重启 XSP: bwrestart |
| 2 |
通过从 BroadWorks 订购方呼叫 Android 上的呼叫客户端,测试 Android 上的呼叫通知。验证 Android 设备上是否显示呼叫通知。 注: 如果 UC-One Android 应用程序推送通知启动失败,则可能是配置错误。如果是这种情况,您可以按如下方式还原为使用旧式 FCM:
|
| 3 |
通过从 BroadWorks 订购方呼叫 iOS 上的呼叫客户端,测试 iOS 上的呼叫通知。验证 iOS 设备上是否显示呼叫通知。 注: 如果 UC-One iOS 应用程序推送通知启动失败,则可能是配置错误。如果这是您的情况,您可以恢复为使用 旧版二进制界面 |