

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Connect Customer 中的流程块：中断代理
<a name="interrupt-agent"></a>

本主题定义了将联系人路由到特定代理的流程块，该流程将覆盖其正常路由配置。

## 说明
<a name="interrupt-agent-description"></a>
+ 使用此区块向特定代理提供联系信息，即使该代理当前处于最大并发度或处于自定义（不可路由）状态。这对于时间敏感或高优先级的联系人（例如拨打个人分机的电话）非常有用，这些联系人无论当前的可用性如何，都必须联系到特定的座席。
+ 执行区块后，路由引擎会将联系人提供给指定的代理。如果在座席已经在通话时向他们提供了第二个中断呼叫，则他们现有的呼叫将被置于保留状态，并且他们已连接到新的联系人。然后，代理可以在两个呼叫之间切换。
+ 此区块只能在**客户队列流**中使用。

## 支持的渠道
<a name="interrupt-agent-channels"></a>

下表列出了此数据块如何路由正在使用指定渠道的联系人。


| 频道 | 是否支持？ | 
| --- | --- | 
| 语音 | 是 | 
| Chat | 是 | 
| 任务 | 是 | 
| 电子邮件 | 是 | 

## 流类型
<a name="interrupt-agent-types"></a>

您可以在以下[流类型](create-contact-flow.md#contact-flow-types)中使用此数据块：
+ 客户队列流

**注意**  
如果在从 Customer 队列流以外的流类型调用的流程模块中使用此块，则该模块将使用**错误**分支。

## 如何配置此数据块
<a name="interrupt-agent-properties"></a>

有两种方法可以在此区块中指定目标代理。

### 手动设置
<a name="interrupt-agent-properties-manual"></a>

从区块属性面板的实例级用户列表中选择一个代理。

![使用手动选择的代理配置的中断代理块。](http://docs.aws.amazon.com/zh_cn/connect/latest/adminguide/images/interrupt-agent-properties-manually.png)


### 动态设置
<a name="interrupt-agent-properties-dynamic"></a>

将代理人的身份作为联系人属性传递。接受以下值：
+ 用户 ARN
+ 用户 ID
+ 用户名

![使用动态设置的代理属性配置的中断代理块。](http://docs.aws.amazon.com/zh_cn/connect/latest/adminguide/images/interrupt-agent-properties-dynamically.png)


## 屏蔽分支
<a name="interrupt-agent-branches"></a>

这个区块有以下分支：


| 分支 | 何时服用 | 
| --- | --- | 
| ** 成功** | 在成功向代理提供联系后立即拍摄。无论代理最终接受还是拒绝该联系，都会使用此分支。 | 
| **错误** | 情况包括：代理处于离线状态；代理已处于频道的最大并发度为 \+1；座席启用了桌面电话或移动转接并且已经在呼叫中；代理的现有联系人处于 “正在连接” 或 “来电” 状态；联系人属于应用程序内或网络呼叫类型；系统错误。 | 

**注意**  
接受 Succ **es** s 分支后，呼叫者仍留在队列流中，而代理则决定是接受还是拒绝该联系。呼叫者在等待时的体验取决于您如何配置队列流。

![显示成功和错误分支的配置中断代理块。](http://docs.aws.amazon.com/zh_cn/connect/latest/adminguide/images/interrupt-agent-flowblock.png)


## 配置提示
<a name="interrupt-agent-tips"></a>

此区块的一个常见用例是将呼叫路由到座席的个人或直接向内拨号 (DID) 分机，即使该代理已经在另一个呼叫中也是如此。

如果您已经在 Connect Customer 中实现了个人分机路由（例如，将来电者转接到特定座席队列，然后在超时后转发到语音信箱的流程），则可能需要按如下方式添加中断行为：
+ 在将联系人放入座席**队列时执行的客户队列流**中，将中**断代理**块添加为第一个块。
+ 将您的语音信箱转接逻辑配置为在将来电者转接到语音信箱之前**至少等待 30 秒**。由于中断呼叫在超时之前会响起 30 秒，因此在代理有机会接受之前，较短的语音信箱超时可能会开始将来电者路由到语音信箱。

您可以使用此区块向代理提供聊天、任务或电子邮件联系方式，即使该代理已达到该频道的最大并发度或处于自定义状态。

**提示**  
在聊天中使用此区块时，请勿将 Interru **pt 代理**块作为队列流中的第一个方块放置。取而代之的是，直接在它之前添加一个[Wait](wait.md)区块以等待 3 秒钟，并确保聊天联系人已完全进入队列，然后再将其提供给代理。

默认情况下，无论代理处于 “可用” 状态还是自定义状态，此区块都会向他们提供联系信息。如果您只想在代理处于 “可用” 状态时提供联系人，请使用此[检查人员配置](check-staffing.md)区块之前的区块来验证代理队列是否有人值守，并且仅在有人值守时才分支到 In **terrupt 代理**块。

如果代理启用了自动接受，则在使用**中断代理**块时会出现以下行为：


| 座席状态 | Auto-accept? | 
| --- | --- | 
| 可用状态，低于最大并发数 | 是 | 
| 可用状态，最大并发数 | 否 | 
| 自定义状态 | 否 | 

如果区块执行时代理处于离线状态，则该区块将使用**错误**分支，并使用标准队列行为路由联系人。这意味着，如果代理随后在联系人仍处于排队状态时恢复联机，则只有当代理将自己设置为 “可用” 状态时，才会向代理**提供**联系信息。

## 代理体验：双重通话
<a name="interrupt-agent-dual-calls"></a>

请注意，如果使用 In **terrupt 代理**块向已经在处理呼叫的代理提供第二个呼叫，则座席体验会有以下差异。

### 来电中断通话通知
<a name="interrupt-agent-dual-calls-notification"></a>

已在进行语音通话的座席会收到中断联系人的来电通知。通知显示时间为 **30 秒**（而标准呼叫为 20 秒），这使代理有时间进行总结或通知现有客户他们将被置于暂停状态。

中断呼叫的铃声是一种微妙的 “呼叫等待” 风格的音调，与标准铃声不同。此提示音将播放整整 30 秒钟或直到代理接听呼叫。音调仅向代理播放，最终客户听不见。

当代理已经在通话时，无论代理的**自动接受设置如何，都不会**自动接受中断呼叫。

在 Agent Workspace 中，客户档案等情境应用程序在接听中断呼叫时继续显示原始联系人的上下文。

### 接受中断联系人
<a name="interrupt-agent-dual-calls-accept"></a>

代理接受中断联系后，原始联系人将自动置于保留状态，客户档案等情境应用程序会更新以反映新的联系人。

两个呼叫仍分配给代理，但代理一次只能在一个呼叫中处于活动状态；另一个呼叫将保持保留状态，直到代理明确恢复呼叫。要恢复另一位联系人，座席必须先选择该呼叫，然后在其联系人卡片中选择 “**继续**”。

### 转接和多方会议
<a name="interrupt-agent-dual-calls-transfers"></a>

座席可以在中断联系人上使用 Quick Connects 来咨询其他座席、转移联系人或发起多方会议。如果代理当前正在处理两个呼叫，则代理只能为他们当前处于活动状态的呼叫选择 “快速连接”；如果由于代理正在处理两个呼叫而使来电者处于保留状态，则代理必须先恢复呼叫，然后才能转接该呼叫。

如果座席正在参加多方会议并接受第二个呼叫，则该会议不会作为一个整体置于暂停状态。其余的会议参与者可以在代理处理第二个呼叫时独立继续对话。当代理正在进行第二次通话时，会议所有者无法强制取消座席的静音。如果您的 Connect Customer 实例启用了[多方呼叫（增强 conferencing/contact 监控）](monitor-conversations.md)，则代理可以随时切换回会议，将第二个呼叫置于保留状态。

**注意**  
只有[多方通话](three-party-multi-party-comparison.md)功能才支持此功能。如果您使用的是传统的三方会议功能，则座席可以在会议期间接受第二个呼叫，但在完成第二个呼叫之前无法恢复会议。

### 主管监控和驳船
<a name="interrupt-agent-dual-calls-monitoring"></a>

主管监控基于个人联系人，而不是代理人。如果一个代理正在处理两个呼叫，则两个呼叫在**当前座席绩效**控制面板中显示为单独的行。“**联系人状态**” 列显示座席主动连接的呼叫与哪个呼叫处于暂停状态。主管选择所需呼叫旁边的监听图标开始监听。

监控完成后，主管可以像往常一样升级为驳船。

如果主管正在积极监视联系人并接到第二个呼叫，则他们必须先终止监控会话，然后才能接受第二个呼叫。

如果主管主动干扰联系人并接到第二个电话，他们可以接受。当第二个呼叫被接受时，被闯入的呼叫会自动置于保留状态。

## 限制和要求
<a name="interrupt-agent-limitations"></a>
+ **需要使用软电话。**只有使用 Connect Customer 软电话（座席工作区、独立 CCP 或通过 StreamsJS 或 ConnectSDK 进行自定义 CCP 集成）的客服才支持此功能。使用台式电话或移动设备转发功能的代理不支持该功能。如果座席启用了台式电话转接功能并且已经在呼叫中，则该屏蔽将使用**错误**分支。如果代理完全处于空闲状态，则仍可以照常将单个呼叫转接到桌面话机。
+ **最大并发度。**使用此功能，最多可以为代理提供超过其正常最大并发次数的 1 个联系人。这意味着一个代理最多可以处理 2 个并发语音呼叫。如果执行此区块时代理已经在处理 2 个呼叫，则该区块将使用**错误**分支。
+ **正在连接和预览拨号器状态。**如果座席的现有联系人处于 “连接” 状态或座席处于预览拨号器模式，则无法接听第二个呼叫。该方块采用**错误**分支。
+ **In-app、网络和视频通话。** In-app/web无法将通话、视频和屏幕共享联系人设置为中断联系人。如果客服人员正在处理应用内或网络呼叫联系人，即使是标准语音通话，也无法为他们提供第二个呼叫。该方块采用**错误**分支。
+ **浏览器支持。**谷歌浏览器（[支持的浏览器](connect-supported-browsers.md)）和微软 Edge Chromium 支持此功能。Mozilla Firefox 不支持它。
+ **Agent-first 回调。**当前正在处理代理优先回调的代理无法通过此区块获得第二个代理优先回调。可以为代理提供标准的入站语音呼叫。

## 常见问题
<a name="interrupt-agent-faq"></a>

**什么是中断代理方块，它是如何工作的？**  
即使代理已经在通话中或处于自定义状态，该区块也会提供与指定代理的联系人。它只能在客户队列流中使用。**成功**提供联系人后，Success 分支就会被接受，而不是在代理接受时使用。在代理接受联系之前，来电者会一直处于队列流中。

**呼叫者在等待代理接受时会听到什么？**  
来电者的体验取决于您如何配置客户队列流程。当向代理提供联系时，来电者仍处于队列流中（例如，听到通过[循环提示](loop-prompts.md)屏蔽配置的等待音乐）。

**如果代理不回复或拒绝联系会怎样？**  
联系人返回到客户队列流程。后续行为取决于您的流程配置，例如，联系人可能被转接到语音信箱或放回队列。

**在超时之前，中断呼叫会响起多长时间？**  
中断呼叫响起 30 秒。这是不可配置的。

**如何在 Flow 语言中使用这个方块？**  
在 Connec **t Customer Flow 语言中，中断代理**块表示为`RouteContactToAgent`操作。

**如果我的代理使用自定义联系人控制面板 (CCP)，我能否使用此功能？**  
可以。如果您使用自定义 CCP，请确保您使用的是最新版本的 StreamsJS，并查看是否需要对实现进行其他更改。  
例如：  
+ 如果你的自定义 CCP 使用 Connect Customer 嵌入式 iframe 中的软电话（`allowFramedSoftphone`也就是说，如果通过 Conn [ect Customer Streams JS](https://github.com/amazon-connect/amazon-connect-streams) 来启动 CCP），那么你可能不需要进行任何更改即可使用此功能。`true`但是，如果您的自定义 CCP 将 C [onnect Customer RTC JS](https://github.com/aws/connect-rtc-js) 集成到自己的框架中，则可能需要升级 RTC JS。
+ 在双呼叫场景中，每个呼叫可能具有不同的状态（例如，Connected vs ACW），因此代理不再具有单一的总体状态，因此代理不再具有单一的总体状态，则不支持此 `agent.getState()` API。如果您今天在自定义 CCP `agent.getState()` 中使用，我们建议您迁移`agent.getAvailabilityState()`到以获取代理的当前状态（例如 “可用” 或 “离线”），或者`contact.getState()`迁移到与频道无关的联系人状态（例如 “连接中” 和 “已连接”）。
有关更多详细信息，请参阅 [StreamsJS 发行](https://github.com/amazon-connect/amazon-connect-streams/releases)说明。

## 更多资源
<a name="interrupt-agent-resources"></a>
+ [Connect 客户如何使用路由配置文件](concepts-routing.md)
+ [检查人员配置](check-staffing.md)
+ [Wait](wait.md)
+ [转接到座席（测试版）](transfer-to-agent-block.md)