

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

# 设置 Amazon Connect Cases 活动流
<a name="case-event-streams-enable"></a>

本主题介绍如何设置和使用案例事件流。有些入职步骤要求您致电 [Amazon Connect 案例 APIs](https://docs.aws.amazon.com/cases/latest/APIReference/Welcome.html)。

## 步骤 1：创建 Amazon Connect 实例并启用 Customer Profiles
<a name="step1-case-event-streams-enable"></a>

1. 确保在其中一个 Cases 可用的 AWS 区域 中有一个正在运行的 Amazon Connect 实例。请参阅[不同区域的案例可用性](regions.md#cases_region)。

1. 启用 Amazon Connect Customer Profiles。有关说明，请参阅[为您的 Amazon Connect 实例启用 Customer Profiles](enable-customer-profiles.md)。

   Amazon Connect Cases 需要 Customer Profiles，因为每个案例都必须与 Customer Profiles 服务中的客户资料相关联。

## 步骤 2：将 Cases 域添加到您的 Amazon Connect 实例中
<a name="step2-case-event-streams-enable"></a>

有关说明，请参阅[使用 Amazon Connect 控制台启用 Cases](enable-cases.md)。

如果您想使用 API 添加案例域，请参阅《*Amazon Connect 案例 [CreateDomain](https://docs.aws.amazon.com/cases/latest/APIReference/API_CreateDomain.html)API 参考》中的 API*。

## 步骤 3：创建案例模板
<a name="step3-case-event-streams-enable"></a>

[创建案例模板](case-templates.md)。在*步骤 6：测试案例事件流*中，您将使用该模板。

如果您想使用 API 创建案例模板，请参阅 *Amazon Connect 案例 API 参考中的 API*。[CreateTemplate](https://docs.aws.amazon.com/cases/latest/APIReference/API_CreateTemplate.html)

## 步骤 4：启用案例事件流并设置为将事件接收到 SQS 队列中
<a name="step4-case-event-streams-enable"></a>

运行以下命令，为您的 Cases 域启用案例事件流。运行此命令后，当创建或更新案例时，事件将发布到您账户中 EventBridge 服务的默认总线（该总线必须与您的案例域 AWS 区域 相同）。

```
aws connectcases put-case-event-configuration --domain-id dad5efb6-8485-4a55-8241-98a88EXAMPLE --event-bridge enabled=true
```

默认情况下，Amazon Connect Cases 发布的事件仅包含有关案例的元数据，例如 `templateId`、`caseId`、`caseArn`、`approximateChangeTime` 等。您可以运行以下命令来获取有关要包含在事件中的案例（在生成事件时）的更多信息。

**注意**  
如果您想在事件中包含自定义字段，请使用自定义字段 ID。有关如何查找自定义字段 ID 的说明，请参阅[查找自定义字段 ID](cases-block.md#get-case-properties-find-uuid)。

```
# You can include any other field defined in your cases domain in the fields section.
# To list the fields that are defined in your cases domain, call the Cases ListFields API.
# To include case fields that you create (custom fields) in the event, enter the custom field ID.
aws connectcases put-case-event-configuration --domain-id YOUR_CASES_DOMAIN_ID --event-bridge "{
    \"enabled\": true, 
    \"includedData\": {
       \"caseData\": {
          \"fields\": [
          {
          \"id\": \"status\"
          },
          {
          \"id\": \"title\"
          },
          {
          \"id\": \"customer_id\"
          },
         {
          \"id\": \"your custom field ID\"
          }
        ]
      },
      \"relatedItemData\": {
      \"includeContent\": true
      }
    }
  }"
```

接下来，创建一个 Amazon SQS 队列并将其设置为 EventBridge 总线上的 Amazon Connect 案例事件的目标，以便将所有案例事件传送到 SQS 队列以供日后处理。

```
# Create an SQS queue
aws sqs create-queue --queue-name case-events-queue --attributes "{\"Policy\": \"{ \\\"Version\\\": \\\"2012-10-17\\\", \\\"Statement\\\": [{ \\\"Sid\\\": \\\"case-event-subscription\\\", \\\"Effect\\\": \\\"Allow\\\", \\\"Principal\\\": { \\\"Service\\\": \\\"events.amazonaws.com\\\"}, \\\"Action\\\": \\\"SQS:SendMessage\\\", \\\"Resource\\\": \\\"*\\\"}]}\"}"

# Create an rule on the EventBridge default bus that represents the case events
aws events put-rule --name case-events-to-sqs-queue --event-pattern "{\"source\": [\"aws.cases\"]}" --state ENABLED

# Ask event bridge to publish case events to the SQS queue.
aws events put-targets --rule case-events-to-sqs-queue --target "[{
\"Id\": \"target-1\",
\"Arn\": \"arn:aws:sqs:The AWS Region of your Amazon Connect instance:your AWS account ID:case-events-queue\"
}]"
```

## 步骤 5：测试案例事件流
<a name="step5-case-event-streams-enable"></a>

使用 Amazon Connect 座席应用程序执行以下操作：

1. 接受聊天联系人。

1. 创建客户资料并将其与聊天联系人相关联。

1. 创建案例。
**注意**  
在您接受联系人并将该联系人与客户资料相关联之前，**案例**选项卡上的**创建案例**按钮处于非活动状态。

导航至 Amazon SQS 控制台，检查您的 SQS 队列中是否有针对新创建案例的案例事件（类型：`CASE.CREATED`）。同样，您可以修改上一步中创建的案例，并在 SQS 队列中获取相应的案例事件（类型：`CASE.UPDATED`）。您可以将联系人与问题相关联，并对问题发表评论，以同样获取针对这些操作的案例事件。

## 步骤 6：案例事件流的使用案例
<a name="step6-case-event-streams-enable"></a>

每当创建案例、更新案例、联系人与案例关联以及对案例添加评论时，案例事件流都会发布事件。您可以将这些事件用于：
+ 指标、分析和控制面板
+ 构建通知用户（例如，发送电子邮件）的应用程序
+ 根据特定类型的案例更新触发的自动操作

例如，您可以在 on 上使用 SQS 目标 EventBridge （如步骤 4 所示）将案例事件临时存储在 SQS 队列中，并使用 Lambda 函数处理 SQS 中的事件以构建自定义应用程序，例如在客户案例更新时向其发送电子邮件、自动解决与该案例相关的所有任务等。同样，你可以使用上的 Firehose 目标将案例事件存储 EventBridge 到 S3 存储桶中，然后使用 ETL，Athena AWS Glue 用于临时分析，Quick 用于仪表板。