- 主页
- /
- 文章
适用于 salesforce Service Cloud Voice 的 Webex 联络中心将思科强大的 CCAAS(联络中心即服务)与 Salesforce 的 CRM 集成在一起,允许企业在 Salesforce 界面内管理全渠道客户互动(语音、数字),使用Webex AI进行虚拟代理、转录和智能路由,将代理转变为具有统一数据的 “超级代理”,以改善客户体验。
概述
适用于 Salesforce 服务的 Webex 联络中心云语音
Webex 服务云语音联络中心是一种开箱即用的集成解决方案,它将 Webex 联络中心的强大功能 引入了 Salesforce 服务云语音全渠道代理控制台。
在继续安装之前,请参阅以下部分:
了解 Salesforce Service Cloud Voice 的先决条件和限制,并确保 您的 Salesforce 组织已做好启用和安装 Webex 联系中心服务云语音包的准备。
SCV 语音连接器版本 1 现已正式上市。 本指南包括设置程序、合作伙伴电话配置和单点登录 (SSO) 配置。
先决条件和限制
先决条件(子主题)
用户界面:服务云语音 仅在 Salesforce 闪电体验中可用。
服务云语音在以下版本中可用:
- 企业
- 无限
- 开发者
许可证
-
除了 Webex 联络中心的 Flex 3 标准或高级许可证 外,客户还需要为每个登录的代理购买新的 A-SF-VOICE 附加许可证。 有关更多信息,请参阅 Flex 3 订购指南。
- Salesforce 合作伙伴电话之声
在开启语音之前,你必须在组织中设置必备服务。
- 导航到公司信息 > 权限集许可证
- 检查服务云语音用户(合作伙伴电话)。
所有开发者版本现在都附带 5 个合作伙伴电话许可证可供 测试。

- 检查服务云语音用户(合作伙伴电话)。
- 或者,你可以前往 Salesforce 设置并在左侧边栏中搜索
“语音” 来验证这一点。

- 如果出现 “合作伙伴电话联系中心”,则表示您拥有 SCV 许可证 。
- 如果 “合作伙伴电话联系中心” 选项不可见,请按照以下步骤操作
“启用服务云语音”。
- 前往 Salesforce 设置并搜索并选择 “合作伙伴电话设置”,
然后将按钮切换到 “启用服务云语音”。

- 启用 Omni-Channel,让您的代理拨打和接听电话。
- 前往 Salesforce 设置并搜索并选择 “合作伙伴电话设置”,
然后将按钮切换到 “启用服务云语音”。
启用全渠道
如果您的组织中已经启用了全渠道,请跳过此步骤。
- 在 “设置” 中,在 “快速查找” 框中输入 “全渠道设置”,
然后选择 “全渠道设置”。


- 选择 “启用全渠道”。
- 单击保存。
限制
- 语音仅在闪电体验中可用。
- 服务云和销售云支持语音作为附加许可证。
- Salesforce Mobile 或 iPad Safari 不支持语音。
- 只有谷歌浏览器、微软 Edge (Chromium) 和 Mozilla Firefox 网络浏览器支持语音。 必须启用 Cookie 才能允许单点登录 (SSO)。
- 不支持标准导航。
- 电话受到严格监管,因此请咨询您的Salesforce代表,了解您所在地区的语音 可用性。
- Salesforce 服务云语音连接器不支持多方会议。
要求
Salesforce 包 1.2 及更高版本
对于 Salesforce Package 1.2 或更高版本,部署必须考虑到数字和语音集成以及 WebSocket 保活处理。
空闲代码
查找空闲代码
| 1 |
登录Management Portal. |
| 2 |
导航到 “联络中心” > “桌面 体验” > “空闲/摘要代码”。 |
| 3 |
确保显示空闲代码,否则单击筛选器下拉 按钮,然后选择页面顶部的空闲代码。 |
| 4 |
点击空闲代码打开详细信息视图。 在那里你可以找到空闲代码 ID。
可以复制 ID,然后用于在线状态映射 配置。 其中一个 ID 必须用作 Cisco 未就绪的默认原因。 |
速率限制
本部分仅适用于在抢先体验包(例如 0.2)上测试更多代理人的情况下,才适用于抢先体验包。 这不是 GA 软件包所必需的。
Webex 联络中心将标准 API 速率限制应用于联络中心组织集成。 有关详细信息,请参阅 API 速率限制。
需要提高速率限制。 要实现这一点:
- 使用 Webex 联络中心支持创建票证。
- 指定 Webex 联络中心组织和所需的标准集成 API 速率限制(计算方法见下文)。
- 提及需要提高 API 速率限制,因为您正在使用 Webex 联络中心获取服务云语音。
用于服务云语音的 Webex 联络中心,每个代理每分钟 15 个请求,用于联系中心组织集成。 要计算速率限制的良好起点, 可以使用以下公式:
每分钟速率限制 = 15 * Webex 联络中心组织中并行工作的代理的最大数量
整合
安装
在继续安装之前,请参阅 “先决条件和 限制” 部分,了解Salesforce S ervice Cloud的先决条件和限制。
为服务云语音安装和配置 Webex 联络中心
获得 “合作伙伴电话服务云语音” 许可证后,“设置” 菜单中会显示 “合作伙伴 电话设置” 页面。
更多信息可以在Salesforce官方参考资料(直接链接)中找到。
| 1 |
在 “设置” 中,
|
| 2 |
启用 “使用合作伙伴电话开启语音”。 合作伙伴电话联系中心页面显示在 “ 设置” 菜单中。
如果您计划在 Salesforce 沙箱中部署软件包,请将安装链接的
|
安装软件包
要安装软件包,请执行以下操作:
| 1 |
打开提供的软件包链接开始安装。 |
| 2 |
登录应该安装软件包的 Salesforce 组织。 |
| 3 |
在安装向导中,选择安全选项 “仅限管理员安装” (1),然后单击 “安装” (2)。 确定哪些用户获得了 Webex 服务云语音联络中心包附 带的对象和组件的特定权限。 此外,向 他们授予这些权限;Webex 服务云语音联络中心包附带 的权限集可帮助完成此过程。 软件包安装向导-出现欢迎屏幕: 无法通过 Salesforce AppExchange 直接访问安装包。 客户必须使用AppExchange列表的 “立即获取” 按钮,该按钮会打开 联系表单,请求安装链接和思科激活。 |
| 4 |
向至少一个用户授予以下权限集,这样您就可以创建联系 中心:
|
| 5 |
单击 “设置” | “用户” | “用户”。 |
| 6 |
搜索并选择用户。 |
| 7 |
向下滚动到 “权限集分配”。 |
| 8 |
点击 “编辑任务” |
| 9 |
对于联络中心管理员:分配联络中心管理员(合作伙伴 电话)权限集。
|
| 10 |
对于联络中心座席:分配联络中心座席(合作伙伴 电话)权限集和 Webex 联络中心 SCV 代理权限集。
不建议选择 “为所有用户安装 ” 选项,因为这会将包 组件和对象的所有权限(读取、创建、编辑和删除)授予使用自定义用户配置文件的任何用户。 |
| 11 |
为用户分配套餐许可证,让其使用 Connects for Service Cloud Voice。
|
| 12 |
或者,您可以单击 “设置” | “用户” | “用户”。。 |
| 13 |
搜索并选择用户。 |
| 14 |
向下滚动到 “托管包”。 |
| 15 |
单击 “分配许可证”。 |
| 16 |
从列表中选择 Webex 联系中心以获取服务云语音套餐。 |
| 17 |
单击添加。 |
| 18 |
创建在线状态以定义将哪些服务渠道分配给不同的状态。 代理可以根据他们有权获得的工作种类以不同的状态登录Omni-Channel。 |
| 19 |
在 “设置” 中,
|
| 20 |
单击新建。 为 “在线” 创建至少一个状态,为 “忙碌” 创建至少一个状态。
|
将在线状态分配给代理
| 1 |
在 “设置” 中,在 “快速查找” 框中输入 “权限集”,然后选择 “权限 集”。 |
| 2 |
单击打开 “合作伙伴电话权限集”。 |
| 3 |
单击 “服务状态访问权限”。 |
| 4 |
单击编辑。 |
| 5 |
在 “可用服务状态” 列表中,选择先前创建的在线 状态,然后单击 “添加” 将其与 权限集关联。 分配到此权限集的代理可以使用任何在线状态登录 Omni-Channel。 |
| 6 |
单击保存。 |
| 7 |
在同一页面中单击 “管理任务”。 然后单击右上角的 “ 添加分配”,选择所需的用户, 单击 “下一步”,为 分配的用户选择到期选项(可选),然后单击 “分配”。 Service Cloud Voice 使用外部域来操作 VoiceCall 记录。 必须将以 下 URL 添加到安装程序中的 “远程站点设置”(单击此处打开官方文档):
示例:如何查找实例 URL。 |
| 8 |
登录后查看浏览器地址栏中的网址。 实例 URL 是 “.my.salesforce.com” 或 “.salesforce.com” 或.” lightning.force.com” 之前的 部分。 例如,如果你的 URL 是 https://orgfarm-54a38e30ad-dev-ed.develop.my.salesforce-setup.com/,那么 “orgfarm-54a38e30ad-dev-ed.develop” 是你的实例 URL。 示例: Origin 组织网址:https://cisco.lightning.force.com 示例:要添加的网址:
|
| 9 |
代理需要在 Lightning 服务控制台应用程序中使用全渠道实用程序项目才能使用服务云语音。
单击 “让我们来 做这件事” 按钮可以找到Salesforce的官方参考资料,该按钮将在Salesforce帮助门户中打开 “使用合作伙伴电话配置 服务云语音的代理体验” 页面(直接链接)。 |
| 10 |
在 “设置” 中,在 “快速查找” 框中输入 “合作伙伴电话设置”, 然后选择 “合作伙伴电话设置”。 |
| 11 |
向下滚动至第 5 部分 “更多语音设置”。 |
| 12 |
要为在 Lightning Experience 中使用软电话时 禁用标题的 Visualforce 页面启用点击劫持保护,除了 Salesforce 实例 URL 之外 ,您还必须将加载软电话和自定义工具栏的域添加为可信域。 这些设置和可信域列表可以在设置 | 安全 | 会话设置下找到。 要检索正确的 Visualforce 域,请导航到 “设置” | “自定义代码” | “
Visualforce 页面”,然后单击 “预览” 按钮。
示例:我的域名--.vf.force.com cisco_wxcc_scv 要获取 Salesforce 实例域,请复制浏览器 URL 栏中显示的 URL, 并将其添加到 “嵌入式框架的可信域 ” 列表中,选择 Visualforce Pages 作为 iFrame 类型。 示例:mydomainname.lightning.force.com
如果您的组织中没有部署 My Domain,则您的 URL 格式会有所不同。 如果您部署了 My Domain,但您的组织中未启用增强型域名,则您的 URL 格式会有所不同。 如果未启用增强型域名,“在 Visualforce、体验生成器、Site.com 工作室和内容文件我的域名中稳定网址” 设置 也会影响此格式。 有关详细信息,请参阅 Salesforce 帮助中的我的域名网址格式。 闪电体验的点击劫持保护和可信域设置
|
| 13 |
为了在通话期间显示录音控件,代理需要
要对其进行分配,请将其添加到在 “在线状态” 步骤中创建的权限集中。
|
配置
创建 Webex 联络中心凭据自定义元数据记录
| 1 |
在 “设置” 中,在 “快速 查找” 框中输入 “自定义元数据类型”,然后选择 “自定义元数据类型”。 |
| 2 |
在列表中,找到 wxCC 连接自定义元数据 类型。 |
| 3 |
单击 wxCC 连接前面的 “管理记录”,然后单击 “新建”。 |
| 4 |
输入名称。 示例:webexccMetadata |
| 5 |
输入贵组织的标准 wxCC 身份验证 URL 和客户端密钥。 有关 Salesforce 电话设置,请按照在 Webex 控制中心中配置 Salesforce 连接器进行操作。 |
| 6 |
单击保存。 |
| 7 |
记住 联络中心配置中需要此名称的 wxCC 连接名称。
|
联络中心
联系中心定义文件指定了一组字段和值,用于在 Salesforce 中为特定 CTI 系统定义 联系中心。 Salesforce 使用联络中心 定义文件来支持与多个 CTI 系统供应商的集成。
更多信息可以在Salesforce的官方文档(直接链接)中找到。
导入联络中心
从测试版升级:本指南介绍了 Salesforce 服务云语音的 Webex 联络中心集成的正式发布版 (GA) 的全新安装。
如果您要从集成的测试版升级,请勿重复使用现有的合作伙伴联络中心记录。 相反:
- 导入 GA 版本中包含的合作伙伴联络中心 XML 文件。
- 使用导入的 XML 创建新的合作伙伴联系中心记录。
- 更新您的配置以使用新创建的合作伙伴联系中心。
GA 合作伙伴联络中心 XML 包含更新的配置值,包括正确的连接器 URL 和其他元数据。 重复使用基于 Beta XML 创建的合作伙伴联络中心记录可能会保留过时的配置值,并使集成无法正常运行。
| 1 |
在 “设置” 中,在 “ 快速查找” 框中输入 “合作伙伴电话联系中心”,然后选择 “合作伙伴电话联系 中心”。 将显示现有(如果有)联系中心列表。
|
| 2 |
点击页面右侧的创建联系中心。 |
| 3 |
选择 Webex 联络中心作为您的电话提供商。 然后单击下一步。
文件浏览器打开。
|
| 4 |
选择包含您的联络中心
定义的 |
| 5 |
单击打开。 文件已导入。
|
| 6 |
检查您的联络中心是否显示在联系中心列表视图中。
|
配置联络中心
| 1 |
在 “设置” 中,在 “ 快速查找” 框中输入 “合作伙伴电话联系中心”,然后选择 “合作伙伴电话联系 中心”。 | ||||||||||||||||||||||||||||||
| 2 |
单击之前导入的联系中心。 | ||||||||||||||||||||||||||||||
| 3 |
单击编辑。
| ||||||||||||||||||||||||||||||
| 4 |
在 “联络中心” 页面底部,单击 “联系中心用户” 部分下的 “ 添加” 按钮。 | ||||||||||||||||||||||||||||||
| 5 |
在有权访问打开的联系中心的用户旁边单击 +。 只有已设置 |
自定义
用于 Webex Contact Center 集成的外部客户端应用程序
为 Webex Contact Center Salesforce 连接器配置外部客户端应用程序
要充分利用服务云语音,可以调整联系人中心呼叫流程,以创建语音呼叫记录,并在呼叫通过 IVR 时执行 Salesforce 全渠道流程。
创建证书
确保已根据组织的安全策略创建了数字证书。
要生成数字证书,请参阅 https://developer.salesforce.com/docs/atlas.en-us.voice_pt_developer_guide.meta/voice_pt_developer_guide/voice_pt_generate_certificate.htm 中的 Salesforce 文档。
示例
openssl genrsa -des3 -passout pass:<password> -out server.pass.key 2048
openssl rsa -passin pass:<password> -in server.pass.key -out server.key
rm server.pass.key
openssl req -new -key server.key -out server.csr
Country Name (2 letter code) [AU]:CH
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []: my-api-user@my-example-org.com
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:<password>
An optional company name []:
openssl x509 -req -sha256 -days 365 -in server.csr -signkey server.key -out server.crt
server.crt => Certificate for the Salesforce External Client App
server.key => Private key for the Salesforce Connector in Webex Control Hub
SCV 集成用户的权限集
以下权限集授予对 Apex 类的访问权限,这些类由 Connects for SCV 用于与联络中心 IVR 流程和适用于 SCV 的 Webex 联系中心 集成 Salesforce 使用的 Apex 类别。
以下是示例配置,描述了联络中心/IVR 集成正常工作所需的最低权限 。
- 从 “设置” 中,导航到 “用户” | “权限集”。
- 单击 “新建” 按钮。
- 输入标签,例如:IVR 访问 SCV Apex 课程
- API 名称会自动填写
- 许可证:无
- 单击 “保存” 按钮。
- 新的权限集打开。
- 导航到 Apex 课堂访问权限。
- 单击 “编辑” 按钮并添加以下 Apex 类别:
- cisco_wxcc_scv. 服务路由
- 导航到 “系统权限”。
- 单击 “编辑” 按钮并启用以下权限:
- Apex REST 服务
- 已启用 API
最低访问权限-仅限 API 的集成配置文件
此配置文件用于与 Salesforce for SCV 的 Webex 联系中心集成,以创建 语音通话记录并通过 IVR 流程执行 Omni-Flow。
以下是示例配置,描述了联络中心/IVR 集成正常工作所需的最低权限 。
这是 “最低访问权限-仅限 API 集成” 配置文件的克隆。
- 从 “设置” 中,导航到 “用户” | “配置文件”。
- 在配置文件列表中,搜索配置文件最低访问权限-仅限 API 的集成。
- 点击配置文件名称打开 “最低访问权限-仅限 API 集成” 配置文件。
- 在 “最低访问权限-仅限 API 集成” 配置文件中,单击 “ 克隆” 按钮。
- 输入新的配置文件名称,例如:SCV 集成。
- 单击 “保存” 按钮。
- 新的配置文件打开。
- 确认您的最低访问权限 — 仅限 API 集成配置文件已从配置文件本身中 移除所有权限。
- 导航到 “系统权限”。
- 确保启用以下权限:
- 已启用 API
- 仅限 Api 的用户
SCV 集成用户
以下是示例配置,描述了联络中心/IVR 集成正常工作所需的最低权限 。 SCV 集成用户不需要 Salesforce Service Cloud Voice 许可证 或 Salesforce Webex 联络中心的 SCV 许可证。
- 从 “设置” 中,导航到 “用户” | “用户”。
- 单击 “新建用户” 按钮。
- 输入名字、姓氏和所有其他必填字段。
- 用户许可:Salesforce 集成
- 配置文件:选择在上一步中创建的配置文件(“SCV 集成配置文件”, 克隆最低访问权限-仅限 API 的集成配置文件)
- 单击 “保存” 按钮。
- 打开新的用户记录。
- 分配之前创建的权限集(“对 SCV Apex 类的 IVR 访问权限”)。
- 分配权限集许可证 Salesforce API 集成。
创建 Salesforce 外部客户端应用程序
目前,创建互联应用程序是一项由 “允许创建 联网应用程序” 首选项控制的功能,该首选项在新组织中默认处于禁用状态,可以在新的外部客户端应用程序设置菜单部分的设置页面中 启用。
- 在 “设置” 中,搜索 “外部客户端应用程序 | 设置”。
- 在 “已连接的应用程序” 下,将 “允许创建连接的应用程序” 复选框设置为 “开” 以 启用 “新建连接应用程序” 按钮。
- 单击 “新建连接应用程序” 按钮。
如果 “外部客户端应用程序” 菜单中未显示 “新建连接应用程序” 按钮,请转至 “ 应用程序” | “应用程序管理器” | “新建连接应用程序”。

配置所使用的 Salesforce 互联应用程序。Cisco Webex Contact Center 另请参阅 文章:为 Webex 联络中心 Salesforce Connector 配置互联应用程序,网址为 https://help.webex.com/en-us/article/n26v7heb/Configure-Connected-App-for-Webex-Contact-Center-Salesforce-Connector。
| 1 |
对于新的联网应用程序,请输入以下详细信息:
|
| 2 |
单击 “保存”,然后单击 “继续”。 |
| 3 |
在 API(启用 OAuth 设置)部分中,单击 “ 管理消费者详细信息”。
|
| 4 |
单击 “复制” 并保存使用者密钥。 使用者密钥稍后用于在 Webex Contact Center Control Hub 上创建 Salesforce 连接器。
重要:通过定期轮换密钥来维护安全 确保您的客户端 ID 和客户机密令牌定期轮换。 参见 “轮转消费者密钥” 和 “消费者秘密” 为确保您的现有集成不会中断,请在所有联络中心流程和使用这些密钥的 IVR 脚本中更新新生成的客户 端 ID 和客户 机密。 |
| 5 |
单击 “返回” 管理联网应用程序。 |
| 6 |
点击 管理。
|
| 7 |
单击 “编辑策略”。 |
| 8 |
在 OAuth 政策部分中,选择 “管理员批准的用户已获得许可用户的 预授权”。
|
| 9 |
单击保存。 |
| 10 |
向下滚动到 “权限集” 部分,然后单击 “ 管理权限集” 按钮。 分配 之前创建的权限集(“对 SCV Apex 类的 IVR 访问权限”)。
|
创建 Salesforce 外部客户端应用程序
创建新的外部客户端应用
有两个选项可用于将您的 Salesforce 数据与第三方应用程序连接。 连接的应用程序和 外部客户端应用程序 都是 用于集成数据的框架。 外部客户端应用是下一代连接应用。
要配置 Cisco Webex Contact Center 使用的 Salesforce 外部客户端应用程序,请执行以下操作:
- 从设置 中,导航到 应用程序 |外部客户端应用程序 |外部客户端应用程序管理器。
- 单击“ 新建外部客户端应用程序”。
- 外部客户端应用程序 - 基本信息
- 外部客户端应用名称:WxCC - SCV
- API 姓名:WxCC_SCV
- 联系电子邮件:<您的电子邮件>
- 分发状态:选择本地

外部客户端应用程序 - API(启用 OAuth 设置)
- 选择:启用 OAuth
- 应用程序设置
- 回拨 URL:http://localhost:1717/OauthRedirect 作为示例回调 URL
- OAuth 作用域
- 选择 OAuth 范围:
- 通过 API 管理用户数据(API)
- 随时执行请求(refresh_token、offline_access)

流程启用
- 选择:启用 JWT 承载流
- 单击上传文件,然后上传
包含您的数字证书的 server.crt文件。

安全
取消选中“ Web 服务器流 需要密钥”选项。

- 单击创建 按钮。
- 更改为 Tab 策略 ,然后单击编辑 按钮。
- 策略 - OAuth 策略
- 插件策略
- 允许的用户:选择管理员批准的用户是预先授权的
- 确认更改
- 应用程序授权
- 刷新令牌策略:选择“立即过期刷新令牌”
- IP 放宽:选择强制执行 IP 限制

- 插件策略
- 策略 - 应用策略
- 起始页 - 无
- 选择权限集 - 分配之前创建的权限集(“IVR 访问 SCV Apex 类”)

- 单击保存。
- 更改为 Tab 设置。
-
在 OAuth 设置部分,单击“使用者密钥 和 机密 ” 按钮;等待电子邮件并验证您的身份。 新的浏览器 Tab 将打开一个包含消费者详细信息的屏幕。

- 单击复制 并保存 使用者密钥。 使用者密钥稍后用于在 Webex Contact Center Control Hub 上创建 Salesforce 连接器。

-
用于创建语音通话记录的 Webex 联络中心配置和脚本
要获得 Salesforce 服务云语音的全部价值,必须修改 Webex 联系 中心中的呼叫流程,以便在呼叫到达联系中心后立即在服务云语音中创建语音呼叫记录。
在Salesforce中 ,可以执行可选的Omni-Flow,以进行路由决策和实现自动化。
有关所使用的 API 的详细信息,请参阅服务云语音 API 封装器。
先决条件
要使用服务云语音 API 封装器,必须配置用于 IVR 集成的 Salesforce 外部客户端应用程序。
在 Webex 控制中心配置 Salesforce 连接器
| 1 |
通过 https://admin.webex.com 登录您的客户组织,然后导航到 “服务” > “联络中心” > “ 租户设置” > “集成” > “连接器”。 |
| 2 |
在 Salesforce 卡上,单击 “设置” 或 “添加连接器”。
IMPORTANT: MAINTAIN SECURITY BY PERIODICALLY ROTATING SECRETS 确保定期轮换私钥和证书,以确保集成安全。 更新 Webex Hub 联络中心连接器中的私钥和 Salesforce 中外部客户端应用程序中的证书。 疑难解答提示 单击 “完成” 后,连接器无法保存:
|
Webex 联络中心主流程
| 流量变量 | 描述 |
|---|---|
| 语音通话记录 ID 的流量变量 | 用于识别呼叫的唯一 ID。 创建语音通话
记录所必需的。 格式:wxcc_ <Interaction Id> 示例: wxcc_fc4ec7d8-4c91-49aa-b764-081fbba344a8
|
| 呼叫开始时间的局部变量 |
用于创建语音通话记录和更新语音通话。
|
| 队列名称/ID 的局部变量 |
由 Execute Omni Flow 返回,用于呼叫路由。 仅在使用 Execute Omni Flow 时才需要此变量
|
| 代理名称/ID 的局部变量 |
由 Execute Omni Flow 返回,用于呼叫路由。 仅在使用 Execute Omni Flow 时才需要此变量
|
主流程概述

- 生成供应商电话密钥
- 设置通话开始时间
- HTTP 请求:创建语音通话记录
- 评估创建语音通话记录的 HTTP 响应
- 创建语音通话记录的错误处理
- HTTP 请求:执行 Omni Flow
- 评估 HTTP 响应以执行 Omni Flow
- Execute Omni Flow 的错误处理
- 继续使用呼叫路由
| 流 | 描述 |
|---|---|
| 生成供应商电话密钥 |
在服务云语音中处理的每个呼叫都会在Salesforce中创建语音通话记录, 并且需要一个名为供应商通话密钥的唯一ID。 对于在 Webex 联络中心创建的语音呼叫记录,供应商呼叫密钥必须在 wxCC 流程中定义,然后使用流量变量与呼叫一起 传递给代理。 vendorCallKey 值必须符合以下规则:
|
| 设置通话开始时间 |
通话开始时间的 UTC 时间戳。 此时间戳用于创建语音 呼叫记录,如果呼叫者在 路由到代理之前挂断,则此时间戳用于更新语音呼叫记录。
|
| HTTP 请求:创建语音通话记录 |
每次通话都需要执行此步骤。 创建语音呼叫记录后, 语音呼叫记录 ID 必须与供应商呼叫密钥 一起以变量形式传递给代理。 在服务云语音的联络中心 配置中配置使用的变量。 |
| HTTP 请求设置 |
|
HTTP 请求:创建语音通话记录
每次通话都需要执行此步骤。 创建语音呼叫记录后, 语音呼叫记录 ID 必须与供应商呼叫密钥 一起以变量形式传递给代理。 在服务云语音的联络中心 配置中配置使用的变量。
HTTP 请求设置
- 活动标签:CreateVoiceCall
- 使用经过身份验证的端点:已启用
- 连接器:在上一步中创建的 Salesforce 连接器
-
请求路径:
/services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall - 方法:POST
- 请求内容类型:应用程序/JSON
请求正文
创建语音通话记录时,您还可以使用呼叫数据更新语音通话 记录上的自定义字段。 以下是请求正文的两个示例,一个包含所有必填 字段但未更新自定义字段,另一个包含自定义字段。
无需更新语音通话 记录上的自定义字段:
{
"callCenterDevName": "<Contact Center API name>",
"certDevName": "<cert dev name>",
"vendorCallKey": "{{SCV_VendorCallKey}}",
"to": "{{NewPhoneContact.DNIS}}",
"from": "{{NewPhoneContact.ANI}}",
"initiationMethod": "Inbound",
"startTime": "{{SCV_CallStartTime}}",
"participants": [
{
"participantKey": "{{NewPhoneContact.ANI}}",
"type" : "END_USER"
}
]
}
更新语音通话 记录上的自定义字段的示例:
{
"callCenterDevName": "<Contact Center API name>",
"certDevName": "<cert dev name>",
"vendorCallKey": "{{SCV_VendorCallKey}}",
"to": "{{NewPhoneContact.DNIS}}",
"from": "{{NewPhoneContact.ANI}}",
"initiationMethod": "Inbound",
"startTime": "{{SCV_CallStartTime}}",
"participants": [
{
"participantKey": "{{NewPhoneContact.ANI}}",
"type" : "END_USER"
}
],
"callAttributes": "{\"custfield1__c\": \"<value1>\",\"custfield2__c\": \"<value2>\",\"custfield3__c\": \"<value3>\"}"
}
参数
| 物业名称 | 值 |
|---|---|
| 呼叫中心开发者名称 | 联络中心开发者姓名 |
| certDevName | 证书的 API 名称(在联络中心配置) |
| 供应商呼叫密钥 | 唯一通话 ID:{{SCV_VendorCallKey}} |
| 到 | 被叫号码/DNI:{{NewPhoneContact.DNIS}} |
| 从 | 电话号码/ANI:{{NewPhoneContact.ANI}} |
| 开始时间 | UTC 时间戳 {{SCV_CallStartTime}}(将在脚本中接受
呼叫后立即设置) |
| 呼叫属性 |
请勿使用 示例:
|
解析设置
- 内容类型:JSON
- 输出变量:SCV_VoiceCallRecordId
-
路径表达式:
$.data.voiceCallId
语音呼叫记录 ID,将传递给代理。
评估创建语音通话记录的 HTTP 响应
检查创建语音呼叫 http 请求的 HTTP 状态:
- 标签:状态码创建语音通话
- 变量:createVoicecall.httpStatusCode
如果状态码 == 200 => 成功,否则 => 请求失败,错误处理
创建语音通话记录的错误处理
仅限演示/调试,根据 http 状态码播放消息。
如果成功创建语音通话,请继续执行 Omni Flow。 否则,请继续 使用呼叫路由。
HTTP 请求:执行 Omni Flow(可选步骤)
如果需要:请使用 Execute Omni-Flow:
- 运行自动任务,例如搜索或创建记录,并将记录与 语音通话记录关联起来
- 搜索记录然后弹出屏幕
- 同步 Salesforce 和 Cisco 队列
- 让 Service Cloud Voice 做出路由决定
此请求始终将呼叫路由到的 “队列” 或 “代理” 返回。
执行此请求后,如果来电者在代理接听 之前挂断,请确保发送 “清除路由”。 请参阅 Webex 联络 中心活动流程。
HTTP 请求设置
- 活动标签:ExecuteOmniflow
- 使用经过身份验证的端点:已启用
- 连接器:在上一步中创建的 Salesforce 连接器
- 请求路径:
/services/apexrest/cisco_wxcc_scv/voice/v1/executeOmniFlow - 方法:POST
- 请求内容类型:应用程序/JSON
请求正文
除了必填字段外,您还可以将其他数据作为输入变量传递给 Omni-Flow。 以下是请求正文的两个示例。 首先没有额外的流量 参数,只有必填字段,第二个没有两个输入变量。
使用 Omni-Flow 参数的示例:
{
"callCenterDevName": "<Contact Center API name>",
"certDevName": "<cert dev name>",
"voiceCallId": "{{SCV_VoiceCallRecordId}}",
"dialedNumber": "{{NewPhoneContact.DNIS}}",
"flowDevName": "<flow api name>",
"fallbackQueue": "<fallback queue name>"
}
更新语音通话 记录上的自定义字段的示例:
{
"callCenterDevName": "<Contact Center API name>",
"certDevName": "<cert dev name>",
"voiceCallId": "{{SCV_VoiceCallRecordId}}",
"dialedNumber": "{{NewPhoneContact.DNIS}}",
"flowDevName": "<flow api name>",
"fallbackQueue": "<fallback queue name>",
"flowInputParameters":
{
"param1": "value1",
"param2": "value2"
}
}
参数
| 物业名称 | 值 |
|---|---|
| 呼叫中心开发者名称 | 联络中心开发者姓名 |
| certDevName | 证书的 API 名称(在联络中心配置) |
| VoiceCallid | 在上一步中创建的语音通话记录的 ID:
{{SCV_VoiceCallRecordId}}
|
| 拨打的号码 | 被叫号码/DNI:{{NewPhoneContact.DNIS}}
|
| 流量开发名称 | 要执行的 Omni-Flow 的开发者名称 |
| 备用队列 | 备用 Salesforce 队列的队列 ID 或队列 API 名称 |
| 流量输入参数 |
全渠道流程(键值对)的其他输入。 示例:
|
解析设置
队列
- 内容类型:JSON
- 输出变量:SCV_OmniFlowQueue
- 路径表达式:
$.data.queue
从 Execute Omni-Flow 返回的 “队列” 可用于路由。
座席- 内容类型:JSON
- 输出变量:SCV_OmniFlowAgent
- 路径表达式:
$.data.agent
从 Execute Omni-Flow 返回的 “代理” 可用于路由。
评估 HTTP 响应以执行 Omni Flow
检查 Execute Omni Flow http 请求的 HTTP 状态:
- 标签:状态码ExecuteOmniflow
- 变量:executeOmniflow.httpStatusCode
如果状态码 == 200 => 成功,否则 => 请求失败,则进行错误处理。
Execute Omni Flow 的错误处理
仅限演示/调试,根据 http 状态码播放消息。
如果成功执行 Omni Flow,SCV_OmniFlowAgent则 不设置变量SCV_OmniFlowQueue和。 呼叫流中的路由决策。
继续使用呼叫路由
继续通话流程,将呼叫路由到代理。 可选,使用SCV_OmniFlowQueue和 SCV_OmniFlowAgent来选择队列和代理。
Webex 联络中心活动流程
如果呼叫者在代理接听之前挂断了呼叫,我们必须更新服务 云语音并终止呼叫。
- 如果使用了 Execute Omni-Flow,请发送 “清除路由” 以删除待处理服务路由 (PSR)
- 发送更新语音呼叫,更新语音通话记录的开始和结束时间,并将 状态从 “新建” 更改为 “已完成”

- phoneContactended-当实时通话断开连接且所有 参与者都被移除时,会触发此事件。
- HTTP 请求:清除路由
- HTTP 请求:更新语音通话
HTTP 请求:清除路由
- 标签:ClearRouting
- 使用经过身份验证的端点:已启用
- 连接器:在上一步中创建的 Salesforce 连接器
- 请求路径:
/services/apexrest/cisco_wxcc_scv/voice/v1/clearRouting - 方法:POST
请求内容类型:应用程序/JSON
请求正文
{
"callCenterDevName": "<Contact Center API name>",
"certDevName": "<cert dev name>",
"voiceCallId": "{{SCV_VoiceCallRecordId}}"
}
参数
| 属性名称 | 值 |
|---|---|
| 呼叫中心开发者名称 | 联络中心开发者姓名 |
| certDevName | 证书的 API 名称(在联络中心配置) |
| VoiceCallid | 在上一步中创建的语音通话记录的 ID: SCV_VoiceCallRecordId |
解析设置
无。
HTTP 请求:更新语音通话
- 标签:updateVoiceCall
- 使用经过身份验证的端点:已启用
- 连接器:在上一步中创建的 Salesforce 连接器
-
请求路径:
/services/apexrest/cisco_wxcc_scv/voice/v1/updateVoiceCall - 方法:POST
- 请求内容类型:应用程序/JSON
请求正文
{
"callCenterDevName": "<Contact Center API name>",
"certDevName": "<cert dev name>",
"voiceCallId": "{{SCV_VoiceCallRecordId}}",
"startTime": "{{SCV_CallStartTime}}",
"endTime": "{{now() | replace({'[UTC]': ''})}}",
"disconnectReason": { "value": "Abandoned in queue", "isError": true }
}
当您同时提供startTime和时 endTime,
Salesforce 会进行计算CallDurationInSeconds。 不要传
CallDurationInSeconds入callAttributes。
参数
| 属性名称 | 值 |
|---|---|
| 呼叫中心开发者名称 | 联络中心开发者姓名 |
| certDevName | 证书的 API 名称(在联络中心配置) |
| VoiceCallid | 在上一步中创建的语音通话记录的 ID: SCV_VoiceCallRecordId |
| 开始时间 | 通话开始的 UTC 时间戳 {{SCV_CallStartTime}}(用于
创建语音通话记录) |
| 结束时间 | 当前 UTC 时间戳 `{{now () |
| 断开连接原因 | 断开通话的原因。 isError
需要将该属性设置为,才能正确显示。true |
解析设置
无。
参考资料
语言翻译
(可选)启用翻译工作台
此设置仅在您使用翻译语言设置时适用。
| 1 |
转至 “设置” → “翻译工作台” → “翻译语言设置”。 |
| 2 |
单击 “启用” 选择翻译语言。
|
(可选)启用仅限平台的语言
此设置仅适用于 EN-US 以外的语言。
| 1 |
转到设置 → 公司设置 → 语言设置。 |
| 2 |
选择所需的语言。 |
| 3 |
选中以下复选框:
|
| 4 |
保存更改。
|
激活语言并选择用户(任务)
| 1 |
转至 “设置” → “翻译工作台” → “翻译语言设置”。 |
| 2 |
选择语言并选择要翻译该语言的用户。 |
| 3 |
保存更改。
|
多语言设置
翻译自定义标签
| 1 |
转到设置 → 自定义标签。 |
| 2 |
选择要打开的自定义标签的名称。
|
| 3 |
在相关的翻译列表中,单击 |
| 4 |
选择你要翻译成哪种语言。
|
| 5 |
在 “翻译文本” 字段中输入转换后的值。 当用户的 默认语言是 翻译语言时,此文本将覆盖标签的 “值” 字段中指定的值。 |
| 6 |
保存更改。 |
用户功能所需的 Salesforce 权限
Webex 联络中心 SCV 代理权限集包含 使用 Webex 联络中心小工具和为代理开发的集成所需的所有权限。
Apex 课堂访问权限(部分)
- cisco_wxcc_scv.ciscoscvwxcc
- cisco_wxcc_scv.serviceResponse
- cisco_wxcc_scv. 服务路由
- cisco_wxcc_scv.telephony集成处理器
自定义元数据类型访问权限(部分)
- cisco_wxcc_scv.wxcc 连接
Visualforce 页面访问权限(部分)
- cisco_wxcc_scv.ciscoscvloginwxcc
- cisco_wxcc_scv.ciscoscvmainwxcc
- cisco_wxcc_scv.ciscoscvoauth重定向
- cisco_wxcc_scv.ciscoscvswloader
服务云语音 API 封装器
先决条件
要使用服务云语音 API 封装器,必须配置用于 IVR 集成的 Salesforce 外部客户端应用程序。
使用服务云语音 API 封装器
适用于Salesforce的服务云语音(SCV)使用电话集成 REST API 来创建 和更新语音通话、执行全渠道流程以及删除与语音通话相关的待定服务路由记录。 此服务需要 JWT 授权并使用 PATCH HTTP 方法,思科 IP 交互式语音应答 (IVR) 目前不支持该方法。
为了简化(不仅限于) IVR 系统中使用适用于 SCV 的电话集成 REST API,推出了一组新的 API,它们封装了现有 S alesforce API,可直接从安装了 Webex 服务云联系 中心语音包的Salesforce 组织访问。
服务云语音API封装器无需对JWT令牌进行身份验证, 对Salesforce API所需的数据进行了额外检查,并改进了响应对象。
找回 Access_Token
向 https://<your-domain-name>.my.salesforce.com/services/oauth2/token 执行 P OST 请求
在正文中发送以下参数:
{
"grant_type": "client_credentials",
"client_id": "<consumer key of the connected app>",
"client_secret": "<consumer secret of the connected app>"
}
If the request is successful, the following JSON response will be returned:
{
"access_token": "<your-access-token>",
"instance_url": "<your-org-base-url>",
"id": "https://login.salesforce.com/id/<id>/<id>",
"token_type": "Bearer",
"issued_at": "<timestamp>",
"signature": "<unique-signature-code>"
}
执行请求
实例 URL 必须包含 my.salesforce.com。
正确的实例 URL 示例:https://abc-123.my.salesforce.com
使用任何其他域名作为实例 URL(即 https://abc-123.lightning.force.com)会导致 401 未授权状态并INVALID_SESSION_ID返回错误代码 。
创建语音通话(部分)
创建包含 VoiceCall 记录的参与者(即呼叫者和接收者) 的 VoiceCall 记录。 当你创建 VoiceCall 记录时,会在 Salesforce 中 创建对话。 仅在实时环境中使用此 API,这意味着您应该仅在启动调用时调用 此 API。 通过在请求负载中包含 parentVoiceCallid 参数,该API还可用于为转接和电话会议创建语音通话 记录。
端点 URI
< instance_url >/services/apexrest/ /voice/v1/ cisco_wxcc_scv CreateVoiceCall
HTTP 方法
POST
标题
授权:持有人 < > access_token
内容类型:应用程序/json
参数
{
"callCenterDevName": "contactCenterDevName123",
"certDevName": "certDevName123",
"vendorCallKey": "5324881f-1e84-4367-8930-f69a74b30ca6",
"to": "8002345678",
"from": "4081456688",
"initiationMethod": "Inbound",
"startTime": "2019-07-02T17:32:28Z",
"participants": [
{
"participantKey": "4081456688",
"type" : "END_USER"
}
],
"callAttributes": "{\"devscv24__AAA_Test__c\":\"field value\",\"Other_Field__c\":\"other value\"}",
"parentVoiceCallId": "fsdfzuhsdfsa-43556fgef3-56g44gv4ew",
"callOrigin": "Preview",
"queue": "queue123"
}
callAttributes仅用于 VoiceCall
对象上的自定义字段。
标准 VoiceCall 字段(例如Description和
CallDurationInSeconds)不能通过更新。
callAttributes 进行填充
CallDurationInSeconds,提供 startTime,
endTime这样 Salesforce 就可以计算出值。
响应(成功)
{
"data": {
"voiceCallId": "00X000012345abc"
},
"errors": null,
"success": true
}
响应(有错误)
{
"data": null,
"errors": ["Error message 1", "Error message 2"],
"success": false
}
更新语音通话
通话结束后更新语音通话。 使用此 API 更新在 VoiceCall 创建阶段不可用的与通话相关的 参数。 Update VoiceC all API 是一种异步操作。 您无法查询 API 调用的状态。
即使在通话结束之后,此端点也可用于创建 VoiceCall。 此 行为在您想要在 Salesforce 中记录已放弃 或未接来电的记录时,或者对于尚未创建 VoiceCall 的任何其他场景很有用。
端点 URI
< instance_url >/services/apexrest/ /voice/v1/updat cisco_wxcc_scv eVoiceCall
HTTP 方法
POST
标题
授权:持有人 < > access_token
内容类型:应用程序/json
参数
{
"callCenterDevName": "contactCenterDevName123",
"certDevName": "certDevName123",
"voiceCallId": "00X000012345abc",
"startTime": "2020-08-26T21:21:14Z",
"endTime": "2019-08-26T21:21:34Z",
"isActiveCall": true,
"fromNumber": "1234",
"callOrigin": "Preview",
"enqueueTime": "2019-08-26T21:21:34Z",
"acceptTime": "2019-08-26T21:21:24Z",
"numberOfHolds": 20,
"queue": "queue123",
"agent": "agent123",
"agentInteractionDuration": 12,
"longestHoldDuration": 10,
"totalHoldDuration": 21,
"recordingLocation": "Bern",
"totalRecordingDuration": 55,
"callAttributes": "{\"devscv24__AAA_Test__c\":\"field value\",\"Other_Field__c\":\"other value\"}",
"disconnectReason": {
"value": "TELECOM_PROBLEM",
"isError": true
}
}
有关此请求接受的参数的详细描述,可以在Salesforce 官方文档的 “参数” 部分下找到。
响应(成功)
{
"data": {
"status": "pending"
},
"errors": null,
"success": true
}
Update VoiceC all API 是一种异步操作。 您无法查询 API 调用的状态。
响应(有错误)
{
"data": null,
"errors": ["Error message 1", "Error message 2"],
"success": false
}
执行 omni-Flow
执行全渠道流程来路由呼叫。 它将呼叫ID(Salesforce VoiceCallid或电话供应商ContactID)作为参数传递给该流程,并将代理 或队列路由指令返回给联系流。 默认情况下,Service Cloud Voice 使用为与拨打的号码匹配的电话频道指定的 全渠道流(或备用队列)。 如果被叫号码与现有电话渠道不匹配,您可以 选择将新的被叫号码、全渠道流量和备用队列设置为此 API 调用的输入 参数。
服务云语音使用以下优先顺序来路由呼叫:
- 使用与被叫号码 匹配的电话频道的全渠道流量和备用队列设置。 流程优先。 如果流程失败,则使用 备用队列。
- 使用 Execut e Omniflow API 调用中指定的 flowDevName 和 fallbackQueue 参数
端点 URI
< instance_url >/services/apexrest/ /voice/v1/Execut cisco_wxcc_scv eOmniflow
HTTP 方法
POST
标题
授权:持有人 < > access_token
内容类型:应用程序/json
参数
{
"callCenterDevName": "contactCenterDevName123",
"certDevName": "certDevName123",
"voiceCallId": "00X000012345abc",
"dialedNumber": "+18445791189",
"flowDevName": "Route_VoiceCall",
"fallbackQueue": "00G111222333444",
"flowInputParameters":
{
"Input1": "one",
"Input2": "two"
}
}
- VoiceCallid 参数是 Salesforce VoiceCallid 或电话供应商的联系人 ID。
- 有关此请求接受的参数的详细描述,可以在Salesforce 官方文档的 “参数” 部分下找到。
响应(成功)
{
"data": {
"queue": "queue info",
"agent": "agent info"
},
"errors": null,
"success": true
}
AGENT_INFO并QUEUE_INFO对应于 CallCenterRoutingMap 中的 externalID 字段
响应(有错误)
{
"data": null,
"errors": ["Error message 1", "Error message 2"],
"success": false
}
清除路由
删除语音通话的 PendingServiceRouting (PSR) 记录。 在大多数情况下,不需要调 用此 API;当呼叫 不再路由时,PSR 记录会自动删除。 但是,在某些情况下,例如在使用合作伙伴电话系统 时出现未接或放弃的呼叫,您必须明确调用此 API 才能清除 PSR 记录。
端点 URI
< instance_url >/services/apexrest/ /voice/v1/ cisco_wxcc_scv ClearRouting
HTTP 方法
POST
标题
授权:持有人 < > access_token
内容类型:应用程序/json
参数
{
"callCenterDevName": "contactCenterDevName123",
"certDevName": "certDevName123",
"voiceCallId": "00X000012345abc"
}
- VoiceCallid 参数是 Salesforce VoiceCallid 或电话供应商的联系人 ID。
- 有关此请求接受的参数的详细描述,可以在Salesforce 官方文档的 “参数” 部分下找到。
响应(成功)
{
"data": {
"status": "Success"
},
"errors": null,
"success": true
}
响应(有错误)
{
"data": null,
"errors": ["Error message 1", "Error message 2"],
"success": false
}
电话号码翻译
Service Cloud Voice 和 Webex 联络中心之间的各种交互取决于电话 号码的翻译。 由于国际差异和客户的特定应用程序,需要一个 可自定义的工具来将电话号码从格式 A 转移到格式 B。
Webex Contact Center for Service Cloud 语音解决方案会自动删除除数字、主题标签(#)、星号(*)、逗号(,)和前导加号(+)之外的所有字符。 还会删除第一次出现的(0)。 这将在应用您的电话 号码转换之前完成。
本指南介绍如何配置电话号码转换。
字段
电话号码翻译存储在 “名称-值” 字段中。 这允许您为每个功能配置 无限数量的规则。
配置存储为 JSON 字符串。
请注意,需要对反斜杠进行转义,例如\ d+ 变成 \\ d+。
{"Remove all characters but digits":"[1,17]->[^\\d]+","To internal number":"[7,17]->(\\d{7})(\\d{4})->$2"}
从技术上讲,不使用 “名称” 字段。 它可以在那里添加一个人类可读的字符串 ,以便快速确定该规则的用途。 好名字例如:移除所有 前导零、添加前导加号等。
创建翻译规则
规则以正则表达式的形式提供。 更准确地说:正则表达式的JavaScript 实现。
一个不错的开始方法是阅读 MDN 网络文档中的 RegExp 文档。
但是,创建复杂的正则表达式通常很麻烦。 因此,我们添加了 额外的语法,使配置尽可能简单。
下图显示了电话号码转换规则的一般语法:
谓词
谓词用于指定间隔,定义要 匹配的数字的长度。
上面的谓词指定所有长度介于 7 到 11 个字符 (包括边缘 + 空格)之间的数字都匹配。
谓词始终与数字的原始长度相匹配。 这有助于通过降低内部/外部号码规则冲突的风险来简化 配置。
图案
模式指定要匹配的数字的格式。
上面的模式指出,该数字必须仅由数字组成并选择数字。
选择器
选择器定义数字的最终格式。 如果需要添加最初不存在 的字符/数字,则可以在这里添加。
选择器是建立数字的最后一步。 根据模式输出, 选择器生成新数字。
示例 1
以下示例说明如何将从联络中心收到的以 0319175200 格式 的号码转移到瑞士 E164 格式 +41 31 917 52 00。
此示例使用两个转换规则(1. 和 2。)
本示例中的第一条规则实际上并未更改数字。 对于长度介于 1 到 17 个字符之间的数字,除数字之外的任何其他内容都将被删除。 由于不存在 非数字,因此没有任何变化。
第二条规则适用于长度正好为 10 个字符的数字(最初)。 0319175200 匹配,因此该规则适用。 该模式指定该 数字必须以一组数字 (\ d {1}) 开头,然后是一组两位数 (\ d {2}),然后是一组三位数 (\ d {3}),依此类推。
然后,选择器访问模式组以定义新的数字字符串。 这意味着 $2 引用了第一个 (\ d {2}),因此包含 31 个。
示例 2
以下示例显示如何将从联络中心收到的格式为 +14693150217 的 号码转移到美国 E164 格式 +1 469 315 0217。
此示例使用两个转换规则(1. 和 2。)
- 这个数字的长度正好是 12 个字符,因此 适用 “为美国数字添加空格” 的规则。
- (\ +1) 表示该数字必须以 +1 开头。 如果数字长度为 12 个字符,但 不以 +1 开头,则该规则将被取消,没有任何变化。
- (\ d {3}) 说 +1 后面必须是 3 位数。
- (\ d {3}) 表示最后 3 位数字后面必须再有 3 位数字。
- (\ d {4}) 表示最后 3 位数字后面必须是 4 位数。
如果其中任何一项不匹配,则不会更改该数字。
因此,所有规则都适用于 “+14693150217”。 因此,该数字更改为 “$1 $2 $3 $4”:
- $1 表示群组 (\ +1),发送到服务云语音的号码看起来像 +1。
- $2 是指两个中的第一个 (\ d {3}),发送给 Service Cloud Voice 的号码 看起来像 +1 469。
- 3 美元是指两者中的第二个 (\ d {3}),发送给 Service Cloud Voice 的号码 看起来像 +1 469 315。
- 4 美元是指最后一组 (\ d {4}),发送给 Service Cloud Voice 的号码看起来 像 +1 469 315 0217。
规则 “$1 $2 $3 $4” 的替换部分中的空格直接使用。 因此,如果你 使用 “$1-$2-$3-$4”,这个数字将被转换为:+1-469-315-0217
而且你还可以删除群组:[12, 12]-> (\ +1) (\ d {3}) (\ d {3}) (\ d {4})->$2 $3 $4 将转换为:469 315 0217。 [12, 12]-> (\ +1) (\ d {3}) (\ d {3}) (\ d {4})-> 3 美元 4 美元将折算为:315 0217。
也可以将国际美国号码转换为本地号码,例如:[12, 12]-> (\ +1) (\ d {3}) (\ d {3}) (\ d {3}) (\ d {4})-> (2) $3-4。
然后,传入的数字 “+14693150217” 将被转换为:(469) 315-0217。
示例 3
以下示例说明如何将从联络中心收到的以 +491515555531 格式的号码转移到德国 E164 格式 +49 151 5555 531。
此示例使用两个转换规则(1. 和 2。)
- 这个数字的长度正好是 13 个字符,因此 适用 “在德国数字中添加空格” 的规则。
- (\ +49) 表示该数字必须以 +49 开头。 如果数字长度为 13 个字符, 但不以 +49 开头,则该规则将被取消,没有任何变化。
- (\ d {3}) 表示,+49 后面必须是 3 位数字。
- (\ d {4}) 表示最后 3 位数字后面必须是 4 位数。
- (\ d {3}) 表示最后 4 位数字后面必须是 3 位数。
如果其中任何一项不匹配,则不会更改该数字。
因此,所有规则都适用于 “+491515555531”。 因此,该数字更改为 “$1 $2 $3 $4”:
- $1 表示群组 (\ +49),发送到服务云语音的号码看起来像 +49。
- $2 是指两个中的第一个 (\ d {3}),发送给 Service Cloud Voice 的号码 看起来像 +49 151。
- 3 美元是指两者中的第二个(\ d {4}),发送给 Service Cloud Voice 的号码 看起来像 +49 151 5555。
- 4 美元是指最后一组 (\ d {3}),发送给 Service Cloud Voice 的号码看起来 像 +49 151 5555 531。
这同样适用于规则一。 你可以使用替换零件 1 美元 2 美元 3 美元 4 美元从号码中选择 要使用的部件。
更多翻译正则表达式示例
| 说明 | 翻译正则表达式 |
|---|---|
| 移除除数字之外的所有字符 | [1,17]-> [^\ d] + |
| 移除除数字以外的所有字符 & + | [1,17]-> [^+\ d] + |
| 说明 | 翻译正则表达式 |
|---|---|
| 移除 +1 | [12,12]-> (. {1}) (\ d {1}) (\ d {10})->$3 |
| 移除 +1 | [10,12]-> (^\ +1+) (\ d+)->$2 |
| 删除 +49 | [10,15]-> (^\ +49+) (\ d+)->$2 |
| 删除 +49 | [10,15]-> (. {1}) (\ d {2}) (\ d {9})->$3 |
| 移除 +41 | [10,13]-> (^\ +41+) (\ d+)->$2 |
| 移除 +41 | [10,13]-> (. {1}) (\ d {2}) (\ d {9})->$3 |
| 删除 +XX | [10,14]-> (^\ ++) (\ d {2}) (\ d+)->$3 |
| 说明 | 翻译正则表达式 |
|---|---|
| 删除 + 并将其替换为零 US E164 | [10,12]-> (. {1}) (\ d {1}) (\ d {10})-> 001 $3 |
| 删除 +1 并将其替换为零 US E164 | [10,12]-> (^\ +1+) (\ d+)-> 001$2 |
| 删除 + 并将其替换为零 DE E164 | [12,15]-> (. {1}) (\ d {2}) (\ d {10})-> 0049 美元 |
| 删除 +49 并将其替换为零 DE E164 | [10,12]-> (^\ +49+) (\ d+)-> 0049$2 |
| 删除 + 并将其替换为零 CH E164 | [10,13]-> (. {1}) (\ d {2}) (\ d {9})-> 0041 美元 |
| 删除 +41 并将其替换为零 CH E164 | [10,12]-> (^\ +41+) (\ d+)-> 0041$2 |
| 说明 | 翻译正则表达式 |
|---|---|
| 带空格的美国号码 | [12,17]-> (\ d {1}) (\ d {3}) (\ d {3}) (\ d {4})->+1 $2 $3 $4 |
| 带空格的美国号码 | [12,17]-> (\ +1) (\ d {3}) (\ d {3}) (\ d {4})->$1 $2 $3 $4 |
| 带空格的 DE 号码 | [12,17]-> (\ d {2}) (\ d {3}) (\ d {4}) (\ d {3})->+49 $2 $3 $4 |
| 带空格的 DE 号码 | [12,17]-> (\ +49) (\ d {3}) (\ d {4}) (\ d {3})->$1 $2 $3 $4 |
| 带空格的 CH 数字 | [12,17]-> (\ d {2}) (\ d {2}) (\ d {3}) (\ d {2}) (\ d {2})->+41 $2 $3 $4 |
| 带空格的 CH 数字 | [12,17]-> (\ +41) (\ d {2}) (\ d {3}) (\ d {2}) (\ d {2})->$1 $2 $3 $4 |
VoiceCall 页面配置
配置 VoiceCall 录制页面
VoiceCall 录制页面默认是预先配置的,采用 3 列布局和以下组件:
- 行动和建议
- 通话记录
- 呼叫详细信息
- 录制文件
根据业务需求,可以自由删除组件或将组件添加到页面中。 也可以使用不同的页面布局,但是某些组件,例如通话录音 播放器和对话正文,只能放在模板的中等和大区域上。
显示总结原因组件
通话期间和总结期间必须显示 “总结原因” 部分。
将 Cisco 总结原因组件添加到 VoiceCall 录制页面:
- 将 Cisco Wrap-Up Reas on Lightning Web 组件从 “闪电组件” 列表的 “ 自定义” 区域拖到 VoiceCall 录制页面。
- 单击保存。
- 单击 激活。
- 单击 “指定为组织默认值”。
- 单击保存。
- 再次单击 “保存”,然后单击 “ 返回” 箭头返回页面。
Cisco Wrapup Re ason 组件将在通话期间 和总结期间自动显示:
如果添加到该页面,则会为每个呼叫显示 Cisco Wrap-Up Reason 组件,即使在 Cisco 联络中心未配置摘要 也是如此。
显示通话录音播放器
如果为相应的语音通话保存了录音链接,则将显示通话录音播放器。
按照以下步骤将通话录音播放器组件添加到 VoiceCall 录制页面:
- 将呼叫录音播放器 Lightning Web 组件拖到 VoiceCall 录制页面
- 单击保存。
- 单击 激活。
- 单击 “指定为组织默认值”。
- 单击保存。
- 再次单击 “保存”,然后单击 “返回” 箭头返回页面。
Webex 管理员
流程配置
屏幕提示
Webex 联络中心流程中提供了 “屏幕弹出” 节点。 它可用于在 Service Cloud Voice 内部或单独的窗口中 触发屏幕弹出窗口。
有关此函数的更多信息可以在 流程设计器文档中找到 。
在单独的窗口中弹出屏幕
要在单独的窗口中打开屏幕弹出窗口,必须在 “屏幕弹出” 节点中提供绝对网址。 查询参数将作为搜索参数附加到网址中。
支持以下模式:
- 新的浏览器选项卡-始终打开新的浏览器选项卡。
- 现有浏览器选项卡-在第一个弹出现有浏览器选项卡屏幕时,将打开一个新的 浏览器选项卡。 该选项卡将成为后续弹出现有 浏览器选项卡屏幕的专用选项卡,该网址将在该特定浏览器 选项卡中刷新。
- 桌面内部-处理方式与 “新建浏览器” 选项卡相同。
当前打开的页面可以防止重定向。 在这种情况下,现有浏览器标签页弹出 窗口将在新的浏览器选项卡中打开。











