更新Cisco BroadWorks NPS以使用NPS代理: 配置指南
了解如何通过此配置指南更新Cisco BroadWorks NPS以使用NPS代理。 了解实现无缝集成和增强网络性能的分步指导、注意事项和最佳实践。
本文描述如何配置共享的 NPS 以使用 NPS 验证代理,以便还可用其将呼叫通知推送到 Webex 应用程序。 如果 NPS 不支持其他应用程序,可以遵照《Webex for BroadWorks 解决方案指南》(https://help.webex.com/z9gt5j) 中的简易程序操作。
NPS 代理概述
为了与 Webex for BroadWorks 兼容,必须对 NPS 打补丁以支持 NPS 代理功能,即 UCaaS 中用于网络语音的推送服务器。
该功能在通知推送服务器中实现了新的设计,可解决与移动客户端的服务商共享推送通知证书私钥的安全漏洞。 NPS 不再与服务商共享推送通知证书和密钥,而是使用新 API 从 UCaaS 后端获取短时有效的推送通知令牌,并使用此令牌向 Apple APNs 和 Google FCM 服务验证。
此功能还增强了通知推送通过新的 Google Firebase Cloud Messaging (FCM) HTTPv1 API 向 Android 设备推送通知的功能。
有关详细信息,请参阅 Xchange 上“UCaaS 中用于 VoIP 的推送服务器功能说明”: https://xchange.broadsoft.com/node/1045458。
可在 Xchange 上下载适用于该功能的 BroadWorks 补丁: https://xchange.broadsoft.com/node/1046235。
有关 ADP 服务器的更多信息,请访问 https://xchange.broadsoft.com/node/1051580。
托管 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 服务器的更多信息,请访问 https://xchange.broadsoft.com/node/1051580。
共享的 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,请在配置 NPS 使用 NPS 代理之前,先配置这些应用程序使用 HTTP/2 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 密钥,启用、测试,然后禁用,直到准备好完成安装说明为止(本文中介绍了迁移流程)。
顺序 | 任务标题 | 何时/为什么需要执行这项任务? |
---|---|---|
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 成功支持的应用程序。 |
如果要在 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),然后按照门户中的说明操作。 |
此任务适用于 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 的配置。 使用 运行
|
此任务适用于 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 | 验证您的配置:
|
您只需要在以下情况下执行此操作(作为迁移的一部分):
您的 NPS 可用于 UC-One SaaS 或 BroadWorks Connect Android 应用程序。
您已经测试过,向其他应用程序发送呼叫推送通知的功能适用于 FCMv1 API。
您暂时禁用了 FCMv1,因为这些应用程序的 FCMv1 密钥只能在 NPS 验证代理配置过程中启用。
1 | 登录到托管您的共享 NPS 的 XSP。 |
2 | 导航至 FCM 上下文并禁用 FCM v1: |
请安装以下补丁以支持 NPS 验证代理功能:
R22 补丁
R23 补丁
1 | 使用已加入的联系人或 TAC 创建服务请求以预配置 (Webex Common Identity) OAuth 客户端帐户。 将您的服务请求标题设为 NPS Configuration for Auth Proxy Setup(用于身份验证代理设置的 NPS 配置)。 Cisco 会为您提供一个 OAuth 客户端 ID、客户端密码和一个有效期为 60 天的刷新令牌。 如果令牌在您与 NPS 一同使用前已到期,您可以提出另一个请求。
| |||||||||||||||||||
2 | 在 NPS 上创建客户端帐户:
要验证您输入的值与所提供的值是否匹配,请运行 | |||||||||||||||||||
3 | 输入 NPS 代理 URL,并设置令牌刷新间隔(建议 30 分钟):
| |||||||||||||||||||
4 | (对于 Android 通知)将 Android 应用程序标识添加到 NPS 上的 FCM 应用程序上下文中。 对于 Android 上的 Webex 应用程序: 对于 Android 上的 UC-One 应用程序: | |||||||||||||||||||
5 | (适用于 Apple iOS 通知)将应用程序 ID 添加到 APNS 应用程序上下文,确保省略 Auth 密钥 - 将其设置为空。 对于 iOS 上的 Webex 应用程序: 对于 iOS 上的 UC-One 应用程序: | |||||||||||||||||||
6 | 配置以下 NPS URL:
| |||||||||||||||||||
7 | 根据显示的推荐值配置以下 NPS 连接参数:
| |||||||||||||||||||
8 | 检查应用程序服务器是否筛选应用程序 ID,因为您可能需要将 Webex 应用程序添加到允许列表中: |
1 | 重启 XSP: bwrestart
|
2 | 通过从 BroadWorks 订购方呼叫 Android 上的呼叫客户端,测试 Android 上的呼叫通知。 验证 Android 设备上是否显示呼叫通知。 注: 如果 UC-One Android 应用程序推送通知启动失败,则可能是配置错误。 如果是这种情况,您可以按如下方式还原为使用旧式 FCM:
|
3 | 通过从 BroadWorks 订购方呼叫 iOS 上的呼叫客户端,测试 iOS 上的呼叫通知。 验证 iOS 设备上是否显示呼叫通知。 注: 如果 UC-One iOS 应用程序推送通知启动失败,则可能是配置错误。 如果是这种情况,您可以将二进制接口还原为传统的二进制接口 |