

**终止支持通知：** AWS 将于 2026 年 10 月 30 日终止对亚马逊 Pinpoint 的支持。2026 年 10 月 30 日之后，您将不再能够访问 Amazon Pinpoint 控制台或 Amazon Pinpoint 资源（端点、分段、活动、旅程和分析）。有关更多信息，请参阅 [Amazon Pinpoint 终止支持](https://docs.aws.amazon.com/console/pinpoint/migration-guide)。**注意：** APIs 与短信相关、语音、移动推送、OTP 和电话号码验证不受此更改的影响，并受 AWS 最终用户消息的支持。

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

# Amazon Pinpoint 旅程
<a name="journeys"></a>

在 Amazon Pinpoint 中，*旅程* 是自定义的多步互动体验。在创建旅程时，首先选择一个客户细分，该客户细分定义哪些客户将参与旅程。然后，添加客户在旅程中执行的活动。活动可能包括发送邮件或根据客户属性或行为将客户划分到不同的组。

具有几种不同类型的旅程活动，每种活动具有自己的特定用途。例如，您可以将**发送电子邮件**活动添加到旅程中。在客户到达此类型的活动时，他们将收到一封电子邮件。另一种类型的旅程活动是**多变量拆分**活动。在客户到达这种类型的活动时，根据他们的客户细分成员资格或他们与以前的旅程活动的交互将其划分到多个路径。您可以在[旅程概述](journeys-tour.md)中了解有关旅程活动的更多信息。

本节包含有关 Amazon Pinpoint 中旅程的概念性信息。它还包含有关创建、管理、测试和发布旅程的信息。

**Topics**
+ [旅程概述](journeys-tour.md)
+ [创建旅程](journeys-create.md)
+ [设置旅程进入活动](journeys-entry-activity.md)
+ [在旅程中添加活动](journeys-add-activities.md)
+ [审查和测试旅程](journeys-review-test.md)
+ [发布旅程](journeys-publish.md)
+ [暂停、恢复或停止旅程](journeys-pause-stop.md)
+ [查看旅程指标](journeys-metrics.md)
+ [有关旅程的提示和最佳实践](journeys-best-practices.md)
+ [旅程故障排除](journeys-troubleshooting.md)

# 旅程概述
<a name="journeys-tour"></a>

旅程包含一些您可能不熟悉的新概念和术语。本主题将详细探讨这些概念。

## 旅程术语
<a name="journeys-tour-terminology"></a>

**旅程工作区**  
您可以在其中添加活动以创建旅程的旅程页面区域。

**活动**  
旅程中的步骤。在参与者到达不同类型的活动时，可能会发生不同的情况。在 Amazon Pinpoint 中，您可以创建以下类型的活动：    
**发送电子邮件**  
当旅程参与者到达**发送电子邮件**活动时，Amazon Pinpoint 将立即向他们发送一封电子邮件。当您创建**发送电子邮件**活动时，需要指定一个[电子邮件模板](message-templates-creating-email.md)以用于电子邮件。电子邮件模板可以包含消息变量，从而帮助您创建更个性化的体验。  
**发送推送通知**  
当旅程参与者到达**发送推送通知**活动时，Amazon Pinpoint 会立即向用户的设备发送推送通知。当您创建**发送推送通知**活动时，请选择要使用的[推送通知模板](message-templates-creating-push.md)。推送通知模板可以包含消息变量，以帮助您创建更个性化的体验。  
**发送短信**  
当旅程参与者到达**发送短信**活动时，Amazon Pinpoint 会立即向他们发送一条短信通知。当您创建**发送短信通知**活动时，请选择要使用的[短信模板](message-templates-creating-sms.md)。短信模板可以包含消息变量，以帮助您创建更个性化的体验。  
**通过自定义渠道发送**  
通过您的自定义渠道之一发送消息。例如，您可以使用自定义渠道通过 WhatsApp 或 Facebook Messenger 等第三方服务发送消息。Amazon Pinpoint 会立即使用 AWS Lambda 函数或 Webhook 通过该服务向用户设备发送通知。有关创建自定义渠道的更多信息，请参阅 [Amazon Pinpoint 中的自定义渠道](channels-custom.md)。  
**Wait**  
在参与者到达**等待**活动时，他们将在该活动中停留到特定日期或特定时间。  
**是/否拆分** ()  
根据您定义的条件，将参与者转到两个路径之一。例如，您可以将所有阅读电子邮件的参与者转到一个路径，而将所有其他人转到另一个路径。  
**多变量拆分**  
根据您定义的条件，将参与者转到最多 4 个路径之一。不符合任何条件的参与者将转到*其他路径*。  
**保留** ()  
结束指定百分比的参与者的旅程。  
**随机拆分** ()  
将参与者随机转到最多 5 个路径之一。

**路径**：  
将一个活动联接到另一个活动的连接器。拆分活动可能会有多个路径。

**参与者**  
执行旅程中的活动的人员。

## 旅程界面的组成部分
<a name="journey-tour-interface"></a>

本节包含有关旅程界面组件的信息。在创建或编辑旅程时，将会看到旅程工作区。下图显示了旅程工作区示例。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-workspace.png)


下表包含在旅程工作区中显示的几个按钮的描述。


****  

| 外观 | 按钮名称 | 描述 | 
| --- | --- | --- | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-info-button.png) | **信息** | 打开帮助面板，其中显示有关各个旅程活动的其他信息。 | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-delete-action-button.png) | **删除活动** | 删除突出显示的活动。 | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-undo-button.png) | **撤消** | 恢复最近的操作。 | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-redo-button.png) | **重做** | 恢复以前使用**撤消**按钮撤消的操作。 | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-center-button.png) | **居中** | 移至旅程顶部，并使**旅程进入**活动居于旅程工作区中心。 | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-zoom-out-button.png) | **变焦拉远**。 | 减小旅程工作区中的对象的大小。 | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-zoom-in-button.png) | **变焦推近**。 | 增加旅程工作区中的对象的大小。 | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-add-activity.png) | **添加活动** | 该按钮显示在您可以在旅程中插入另一个步骤的每个位置。在选择该按钮时，将会看到一个菜单，您可以在其中选择活动类型。 | 
| ![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-feedback-button.png) | **收集反馈**： | 此方法可快速提供有关您使用旅程的体验的反馈。我们会审核通过此按钮收到的所有反馈。在存有疑问时，我们可能会与您联系以获取更多信息。 | 

# 创建旅程
<a name="journeys-create"></a>

您可以使用 Amazon Pinpoint 控制台，通过图形编辑器创建强大的旅程。构建旅程的第一步是创建和配置旅程。您可以将旅程配置为立即开始或在特定日期和时间开始。您也可以将其配置为在特定日期和时间结束。

**配置旅程**

1. 在**所有项目**页面上，选择您要在其中创建旅程的 Amazon Pinpoint 项目。
**注意**  
在 Amazon Pinpoint 中，客户细分和端点对于每个项目是唯一的。您选择的项目应包含要参与该旅程的客户细分和端点。

1. 在导航窗格中，选择**旅程**。

1. 选择**创建旅程**。将显示旅程工作区。

1. 在**操作**菜单上，选择**设置**。将显示**旅程设置**对话框。下图中显示了该对话框的示例。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-settings.png)

1. 在**旅程设置**对话框中，执行以下操作：

   1. 对于**旅程标题**，请输入描述旅程的名称。

   1. （可选）对于**旅程时间表**，请输入**开始日期和时间**以及**结束日期和时间**。如果未输入开始日期，客户将在您启动旅程 5 分钟后进入旅程。如果未输入结束日期，旅程将连续运行最多 3600 天（约 120 个月）。

   1. （可选）对于**时区**，请选择**开始日期和时间**和**结束日期和时间**应基于的时区。默认情况下，Amazon Pinpoint 根据您的位置自动从该列表中选择一个时区。只有在您设置了开始日期或结束日期时，才需要完成该步骤。

   1. 对于**何时发送**，请选择以下任一选项：
      + **使用与旅程开始和结束相同的时区** - 发送消息时使用旅程的**时区**、**开始日期和时间**以及**结束日期和时间**。
**提示**  
仅在工作时间向收件人发送消息，请参阅《AWS 终端用户消息发送 SMS 服务用户指南》**中的[在适当时间发送](https://docs.aws.amazon.com//sms-voice/latest/userguide/best-practices.html#best-practices-sms-appropriate-times)。如果收件人在远离旅程所属**时区**的多个时区，他们可能会在工作时间之外收到消息。
      + **收件人的本地时区** - 自动将发送时间调整为端点 `Demographic.Timezone` 属性中的时区值。
**重要**  
 旅程中不包括没有 `Demographic.Timezone` 属性的端点。对于没有 `Demographic.Timezone` 属性的端点使用**时区估计**来估计端点时区并将其包含在旅程中。
事件触发的旅程不支持**收件人的本地时区**。对于事件触发的旅程，像*安静时间* 之类的时区相关功能仍支持时区估计。

   1.  在**时区估计**下选择：
**注意**  
时区估计用于估计收件人的本地时区，以用于旅程安排和安静时间。

      1. **不进行时区估计（默认）**- 不执行时区估计，Amazon Pinpoint 使用 `Demographic.Timezone` 属性中的值。

      1. **使用电话号码(例如区号)进行估计** – 使用端点电话号码和国家/地区的地理信息来估计时区。`Endpoint.Address` 属性必须是电话号码，`Endpoint.Location.Country` 属性必须有值。有关 `Endpoint.Address` 和 `Endpoint.Location.Country` 属性的更多信息，请参阅《Amazon Pinpoint API 参考》中的[端点](https://docs.aws.amazon.com/pinpoint/latest/apireference/apps-application-id-endpoints-endpoint-id.html)**。

      1. **使用区域(例如邮政编码)进行估计** - 使用端点国家/地区和邮政编码来估计时区。`Endpoint.Location.PostalCode` 和 `Endpoint.Location.Country` 属性都必须具有值。有关 `Endpoint.Location.PostalCode` 属性的更多信息，请参阅《Amazon Pinpoint API 参考》中的[端点](https://docs.aws.amazon.com/pinpoint/latest/apireference/apps-application-id-endpoints-endpoint-id.html)**。
**注意**  
只有美国、英国、澳大利亚、新西兰、加拿大、法国、意大利、西班牙、德国以及 AWS 区域 提供 Amazon Pinpoint 的国家支持邮政编码估算。 AWS GovCloud （美国西部）不支持时区估计。

      1. **使用电话号码和区域进行估计** - **使用电话号码（例如区号）进行估计**与**使用区域（例如邮政编码）进行估计**相结合来估计收件人的时区。

         有关时区处理规则的更多信息，请参阅[时区估计](journeys-best-practices.md#time-zone-estimation)。
**重要**  
**时区估计**仅在没有 `Demographic.Timezone` 属性值的端点上执行。如果**时区估计**无法估计时区，或者估计的时区不是 `Endpoint.Location.Country` 的一部分，则端点将不会添加到旅程中。有关更多信息，请参阅[时区估计](journeys-best-practices.md#time-zone-estimation)。

1. 在**旅程限制(高级)**下，设置消息处理选项。例如，这可能是更改每秒旅程消息的数量或更改每个端点的进入数。只有在限制允许的情况下，端点才会重新进入旅程。
   + **每个端点的每日最大消息数** – 选择**覆盖默认设置**以覆盖包含该旅程的项目的最大每日消息数设置。如果您在该部分指定一个值，Amazon Pinpoint 将限制发送到每个单独端点的消息数。  
![\[“每个端点的每日最大消息数”值的文本框以及如何覆盖它。\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-max-daily-endpoint.png)
   + **每个端点可以从此旅程中接收的最大消息数** - 选择**覆盖默认设置**以覆盖端点可以从此旅程中接收的最大消息数。默认设置为 0，这意味着旅程中的端点可以接收的消息数量没有限制。启用此功能后，其他限制（例如**每个端点的最大每日消息数**）仍然适用。  
![\[“每个端点可以接收的最大消息数”值的文本框以及如何覆盖它。\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-max-messages-per-endpoint.png)
   + **每秒的旅程消息最大数量** – 选择**覆盖默认设置**以覆盖包含该旅程的项目的每秒最大消息数设置。如果您在该部分指定一个值，Amazon Pinpoint 将限制旅程每秒可以发送的消息数。您指定的值应小于或等于您的账户的最大发送速率。您可以在 Amazon Pinpoint 控制台的电子邮件设置页面上找到您的账户的最大发送速率。  
![\[“每秒的旅程消息最大数量”值的文本框以及如何覆盖它。\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-max-journey-second.png)
   + **每个端点的最大进入次数** – 选择此设置以覆盖包含该旅程的项目的最大进入数设置。如果您在该部分指定一个值，Amazon Pinpoint 将限制参与者可以进入旅程的次数。例如，如果您指定大于 1 的值，则参与者可以进入旅程，完成旅程中的几个活动，到达**结束**活动，然后重新启动旅程。如果参与者有资格进入旅程，但他们进入旅程已达到最大次数，则会禁止他们再次进入旅程。例如，如果您的端点最大进入次数限制为 **2**，而参与者已经进入并退出旅程两次，则他们将不能再次进入该旅程。

     如果您选择的值大于默认值 **1**，则可以选择**端点重新进入间隔**，设置端点等待多久才能重新进入旅程。例如，如果您想隔开发送给用户的消息，则可以设置重新进入间隔，从而防止用户太频密地收到消息。  
![\[“每个端点的最大进入次数”值的文本框、“端点重新进入间隔”以及如何覆盖它。\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-max-entries-endpoint.png)
   + **一个时间范围内所有旅程的最大消息数**

     使用此设置指定在指定**时间范围**内可以向单个端点发送消息的最大次数。例如，如果您想在 7 天的**时间范围**内向每个端点发送最多 3 条消息。默认设置为 0，这意味着旅程中的端点可以接收的消息数量没有限制。
   + **时间范围**

     如果未设置为 0，则是应用于**一个时间范围内所有旅程的最大消息数**的天数。默认设置为 0，这意味着旅程中的端点可以接收的天数没有限制。  
![\[“一段时间内所有旅程的最大消息数量”值的文本框。\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-max-message-time-frame.png)

1. 选择**确认**。

## （可选）配置旅程时间表设置
<a name="journeys-create-schedule"></a>

当您创建一个旅程时，可以为该旅程指定发送时间表。有两个您可以配置的时间表设置。第一个设置是*不发送时间*，指的是 Amazon Pinpoint 不向旅程参与者发送消息的时间范围。第二个设置是*发送时间*，指的是 Amazon Pinpoint 向旅程参与者发送消息的时间范围。与*不发送时间* 相比，*发送时间* 设置允许更精细地自定义时间和渠道。这些设置使用每个端点的时区设置。为了使用旅程时间表设置，旅程中的每个端点都必须包含 `Demographic.Timezone` 属性。

**重要**  
为了使用**使用收件人的本地时区**设置，旅程中的每个端点都必须包含 `Demographic.Timezone` 属性。如果您选择此选项并且参与者的端点记录未指定时区，则参与者不会包含在旅程中。

您可以通过选择旅程工作区顶部的**计划**按钮来配置旅程的时间表设置。然后，在**计划设置**窗口上，为*不发送时间* 指定**开始时间**和**结束时间**。您还可以选择启用以下设置：
+ **在安静时间后恢复发送** – 启用此功能后，Amazon Pinpoint 会保留本应在*不发送时间* 发送的所有消息，然后在*不发送时间* 结束时发送它们。如果您不启用此选项，则本应发送的消息会被丢弃而不发送。
+ **配置发送时间以定义一周中的每一天** - 启用此选项可为一周中的不同日子配置不同的发送时间。例如，如果您的*不发送时间* 安排在早上 8:00 至晚上 8:00（20:00）之间，则可以将星期日的发送时间设置为早上 8:00 开始至下午 6:00（18:00）结束，而将所有其他日子的发送时间设置为早上 8:00 开始至晚上 8:00（20:00）结束。您最多可以为每天添加四个时间范围。

  您还可以为一年中的特定日子指定例外。例如，如果您想确保元旦不发送任何消息，则可以创建一个例外，该例外从 12 月 31 日晚上 8:00 开始，到 1 月 2 日上午 8:00 结束。您最多可以添加 20 个例外。
**注意**  
您为一周中的日子或例外指定的时间必须遵守您为旅程指定的安静时间。换句话说，如果您将旅程安静时间设置为晚上 8:00 至早上 8:00，则无法将周一的安静时间设置为晚上 8:30 至早上 7:30。
+ **将此计划应用于所有渠道** – 启用此功能可自动将每个渠道的发送时间设置为等于您为*不发送时间* 设置指定的**开始时间**和**结束时间**。如果您不启用此功能，则可以为不同的渠道定义不同的发送时间。例如，您可以将电子邮件渠道配置为在早上 6:00 至晚上 10:00（22:00）之间发送邮件，而将短信渠道配置为在早上 8:00 至晚上 8:00（20:00）之间发送消息。

**下一步**：[设置旅程进入活动](journeys-entry-activity.md)

# 设置旅程进入活动
<a name="journeys-entry-activity"></a>

当您创建和配置旅程后，必须配置*旅程进入* 活动。此活动决定如何将参与者添加到旅程中。可通过两种方式将参与者添加到旅程中：
+ **事件发生时** - 您可以配置旅程，以便在发生特定事件时，将参与者动态插入旅程。例如，当参与者完成注册工作流时，您可以使用此选项将他们添加到旅程中。有关更多信息，请参阅 [在参与者执行活动时添加参与者](#journeys-entry-activity-event-triggered)。
**重要**  
事件触发的旅程中不支持联络中心活动。
+ **基于客户细分成员资格** - 您可以将现有客户细分的成员直接插入旅程中。可以将旅程配置为定期重新评估客户细分，以确定是否有新的客户细分成员需要添加。有关更多信息，请参阅 [从客户细分中添加参与者](#journeys-entry-activity-segment-based)。

**注意**  
*参与者* 是指用户及其端点或各个端点，具体取决于数据。如果旅程进入客户细分由用户级别数据 (user\$1id) 组成，则*参与者* 就是用户以及与用户关联的并且一起完成旅程的所有端点。如果旅程进入客户细分由端点级别数据（无 user\$1id）组成，则*参与者* 就是各个端点。

## 在参与者执行活动时添加参与者
<a name="journeys-entry-activity-event-triggered"></a>

这种事件触发的旅程类型会根据所选事件添加参与者。您可以选择一个事件，例如音乐下载，然后选择事件属性来进一步定义旅程事件。这可能是从特定艺术家那里下载音乐。当用户执行事件所描述的任何活动时，他们就会成为旅程的参与者。

 **在参与者执行活动时添加参与者** 

1. 如果尚未选择**在参与者执行活动时添加参与者**，则选择它。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-entry-activity-event.png)

1. 对于**事件**，请从事件列表中选择一个事件，或键入一个新事件进行添加。例如，当用户从您的音乐服务中下载特定艺术家时，您可能希望触发旅程。我们称之为这个事件*artist.download*。一个旅程只能包含一个事件。

   可以使用以下任一方式提交事件：
   +  PutEvents API。请参阅《Amazon Pinpoint API 参考》中的[事件](https://docs.aws.amazon.com/pinpoint/latest/apireference/apps-application-id-events.html)
   + AWS 适用于 Android 的移动 SDK：版本 2.7.2 或更高版本
   + AWS 适用于 iOS 的移动 SDK：版本 2.6.30 或更高版本
**注意**  
如果您使用的是任何一款 AWS 手机， SDKs 则只能参加一系列活动。有关受支持事件的列表，请参阅《Amazon Pinpoint 开发人员指南》中的[应用程序事件](https://docs.aws.amazon.com/pinpoint/latest/developerguide/event-streams-data-app.html)。

1. （可选）事件属性是用于完善事件的特定信息。它包含一个属性名称和一个值。我们将*artist.download*通过添加*artistName*属性来缩小范围。对于**属性**，请从列表中选择属性。因为你想根据特定的艺术家来添加参与者，所以你可以选择*artistName*作为**属性**，然后为**值**选择一个特定的艺术家，例如，*Bruce Springsteen*。现在，您的旅程活动会添加该*artist.download*活动中的所有参与者，并且*artistName*是*Bruce Springsteen*。

   如果您想进一步完善旅程，请为要添加的每个属性选择**添加新属性**，以此来添加其他属性和值。如果一个属性有多个可能的值，则必须分别添加每个属性和值对。对于*artist.download*事件，您现在可以添加其他*artistName*属性*Alicia Keys*。选择 “**添加新属性”**，再次选择*artistName*作为属性，然后选择 “*Alicia Keys***值**”。当您多次使用具有不同值的同样属性时，Amazon Pinpoint 会在值之间使用“or”来处理旅程属性。现在，您的旅程活动会添加该*artist.download*活动中的所有参与者，并且*artistName*是*Bruce Springsteen*或*Alicia Keys*。

   除了只有一个值的属性之外，您还可以添加具有多个值的属性组合。

1. （可选）选择事件**指标**。此事件通常使用一系列数字，例如持续时间或费用。进入活动后，选择**运算符**：
   +  **等于** 
   +  **大于** 
   +  **小于** 
   +  **大于或等于** 
   +  **小于或等于** 

   输入运算符的**值**。仅支持数值。根据指标、运算符和值添加参与者。对于该*artist.download*活动，您可以添加一个*songLength*指标，即当参与者下载任何歌曲时，如果参与者下载了大于*Bruce Springsteen*或*Alicia Keys*等于的歌曲，*songLength*则可以添加他们*500 seconds*。
**注意**  
您不能使用具有多个值的相同指标。

1. （可选）选择要用于旅程的动态客户细分。每个旅程进入只能有一个之前定义的客户细分。此外，对于任何要进入旅程的端点，该端点必须是所选客户细分的一部分。如果您想为该旅程生成一个新的客户细分，可以通过 Amazon Pinpoint 控制台来生成。有关客户细分的更多信息，请参阅[生成客户细分](https://docs.aws.amazon.com/pinpoint/latest/userguide/segments-building.html)。
**注意**  
不支持导入的客户细分和基于导入的客户细分的动态客户细分。下拉列表显示了客户细分的类型。下拉列表中显示的某个客户细分可能表示它是动态的，如果它基于导入的客户细分，则会出现错误。

1. （可选）对于**描述**，输入描述活动的文本。在保存活动时，该文本将显示为其标签。

1. 选择**保存**。

## 从客户细分中添加参与者
<a name="journeys-entry-activity-segment-based"></a>

对于此类旅程，您可以选择要参与旅程的客户细分。您可以选择配置旅程进入活动，通过定期搜索新的客户细分成员来添加新的旅程参与者。

 **从客户细分中添加参与者** 

1. 选择**从客户细分中添加参与者**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-entry-activity.png)

1. 对于**客户细分**，选择要添加到旅程中的客户细分。
**提示**  
您只能在**旅程进入**活动中包含一个客户细分。如果需要添加更多客户细分，您可以创建新的客户细分以包含要添加到旅程中的所有客户细分。以后，您可以在旅程中使用多变量拆分活动，以根据客户细分成员资格将旅程参与者划分为单独的组中。

1. （可选）对于**指定添加新客户细分成员的频率**，选择应评估和刷新客户细分成员资格的频率。您可以选择**从不**，或者选择按计划检查。例如，如果您选择**每 12 小时一次**，则 Amazon Pinpoint 每 12 小时检查一次新的客户细分成员。如果在检查中发现了新的客户细分成员，他们将被添加到旅程中。也要重新评估现有端点。如果**每个间隔的最大进入数**大于 1，则现有端点也会重新进入旅程。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-entry-activity-add.png)

   您也可以选择**客户细分更新时刷新**。如果您启用此功能，则当客户细分更新时，新的端点将添加到旅程中。要使此功能按预期运行，您还必须选择刷新间隔。

   下表描述了在各种情况下如何处理客户细分成员资格的更改。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/journeys-entry-activity.html)

1. （可选）对于**描述**，输入描述活动的文本。在保存活动时，该文本将显示为其标签。

1. 选择**保存**。当您完成设置旅程进入活动时，可以开始[将其他活动添加到旅程中](journeys-add-activities.md)。

**下一步**：[在旅程中添加活动](journeys-add-activities.md)

# 在旅程中添加活动
<a name="journeys-add-activities"></a>

活动是任何旅程的最重要部分。活动表示适用于旅程参与者的步骤。您可以使用活动跨各种渠道将消息发送到旅程参与者，将其拆分为较小的组，或者只是等待一段时间。您可以在旅程中添加几种不同类型的活动。本节提供了有关将活动添加到旅程中的基本信息。有关设置每种活动类型的详细信息，请参阅[设置旅程活动](#journeys-add-activities-procedures)。

**注意**  
审查并发布旅程后，将在旅程流中添加一个退出旅程元素。

## 设置旅程活动
<a name="journeys-add-activities-procedures"></a>

每种类型的旅程活动都具有您必须配置的单独组件。以下几节提供了有关设置每种类型的活动的其他信息。

**Topics**
+ [设置电子邮件活动](#journeys-add-activities-procedures-email)
+ [设置推送通知活动](#journeys-add-activities-procedures-push)
+ [设置短信活动](#journeys-add-activities-procedures-sms)
+ [设置联络中心活动](#journeys-add-activities-procedures-contact-center)
+ [设置自定义消息渠道活动](#journeys-add-activities-procedures-custom)
+ [设置等待活动](#journeys-add-activities-procedures-wait)
+ [设置 yes/no 分组活动](#journeys-add-activities-procedures-yes-no-split)
+ [设置多变量拆分活动](#journeys-add-activities-procedures-multivariate-split)
+ [设置保留活动](#journeys-add-activities-procedures-holdout)
+ [设置随机拆分活动](#journeys-add-activities-procedures-random-split)

### 设置电子邮件活动
<a name="journeys-add-activities-procedures-email"></a>

当旅程参与者到达**发送电子邮件**活动时，Amazon Pinpoint 将立即向他们发送一封电子邮件。您必须先创建电子邮件模板，然后才能配置电子邮件活动。有关创建电子邮件模板的更多信息，请参阅[创建电子邮件模板](message-templates-creating-email.md)。

**设置电子邮件活动**  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-email-activity.png)

1. 选择**添加活动**。

1. 对于**添加一个活动**，选择**发送电子邮件**。

1. 在**选择要用于此活动的电子邮件模板**下，选择**选择电子邮件模板**，然后为您希望参与者接收的邮件选择电子邮件模板。然后，在**模板版本行为**下，指定您是否希望 Amazon Pinpoint 自动更新邮件，以包括发送邮件前您对模板所做的任何可能的更改。要了解有关这些选项的更多信息，请参阅 [管理消息模板的版本](message-templates-versioning.md)。
**提示**  
即使您的 Amazon Pinpoint 账户不包含您的电子邮件地址的端点记录，您也可以向自己发送邮件预览。要发送预览，请选择 **Send a test message (发送测试消息)**。

1. 对于**发件人电子邮件地址**，选择要用于发送邮件的电子邮件地址。该列表包含您在当前 AWS 区域中的 Amazon Pinpoint 账户的所有已验证的电子邮件地址。有关验证其他电子邮件地址或域的信息，请参阅[验证电子邮件身份](channels-email-manage-verify.md)。
**提示**  
要显示消息的友好发件人姓名，请选择项目的默认电子邮件地址。*友好发件人姓名* 是收到消息时在参与者的电子邮件客户端中显示的姓名。要更改项目的默认电子邮件地址或该地址的友好发件人姓名，请更新项目的电子邮件渠道设置。为此，请在左侧导航窗格中选择**设置**，然后选择**电子邮件**。接下来，输入所需的设置。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。

### 设置推送通知活动
<a name="journeys-add-activities-procedures-push"></a>

当旅程参与者到达**发送推送通知**活动时，Amazon Pinpoint 会立即向他们发送一个推送通知。您必须先创建推送通知模板，然后才能配置推送通知活动。有关创建推送通知模板的更多信息，请参阅[创建推送通知模板](message-templates-creating-push.md)。

**注意**  
要向旅程参与者发送推送通知，您的应用程序必须与 S AWS DK 集成。有关更多信息，请参阅《Amazon Pinpoint 开发人员指南》中的**[处理推送通知](https://docs.aws.amazon.com/pinpoint/latest/developerguide/integrate-push.html)。

**设置推送通知活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，选择**发送推送通知**。

1. 在**为此活动选择一个推送通知模板**下，选择**选择推送通知模板**，然后为您希望参与者接收的消息选择推送通知模板。然后，在**模板版本行为**下，指定您是希望 Amazon Pinpoint 使用当前指定为活动的模板版本，还是使用创建旅程时处于活动状态的模板版本。要了解有关这些选项的更多信息，请参阅 [管理消息模板的版本](message-templates-versioning.md)。
**提示**  
即使您的 Amazon Pinpoint 账户不包含您指定的端点 ID 或设备令牌，您也可以向自己发送消息预览。要发送预览，请选择 **Send a test message (发送测试消息)**。

1. （可选）对于**生存时间**，请指定您是希望 Amazon Pinpoint 使用默认的生存时间 (TTL) 值，还是对每个推送通知服务使用自定义值。默认情况下，Amazon Pinpoint 使用每个相应推送通知服务的最大 TTL 值。还可以为所有推送通知服务指定自定义 TTL 值。如果消息传送失败，推送通知服务将尝试在您在此设置中指定的时间内传送邮件。有关具体存活时间值的信息，请参阅《Amazon Pinpoint API 参考》中的**[消息](https://docs.aws.amazon.com/pinpoint/latest/apireference/apps-application-id-messages.html)。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-create-step-3-add-activities-procedures-push.png)

### 设置短信活动
<a name="journeys-add-activities-procedures-sms"></a>

当旅程参与者到达**发送短信**活动时，Amazon Pinpoint 会立即向他们发送短信。您必须先创建短信模板，然后才能配置短信活动。有关创建短信模板的更多信息，请参阅[创建 SMS 模板](message-templates-creating-sms.md)。

**设置短信活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，选择**发送短信**。

1. 在**为此活动选择一个短信模板**下，选择**选择短信模板**，然后为您希望参与者接收的消息选择短信模板。然后，在**模板版本行为**下，指定您是希望 Amazon Pinpoint 使用当前指定为活动的模板版本，还是使用创建旅程时处于活动状态的模板版本。要了解有关这些选项的更多信息，请参阅 [管理消息模板的版本](message-templates-versioning.md)。

1. 如果您想先测试此活动，请选择**发送测试消息**。测试消息不计入您的每日发送限制中，但您需要为每条消息付费。发送测试消息时，系统会提示您选择发起号码（可选）和目的地号码（必选）。
**注意**  
如果您的账户位于短信沙盒中，则您只能向已验证的目的地号码之一发送文本消息。如果目的地号码未出现在列表中，请选择**管理号码**以添加该新号码。有关验证目的地号码的更多信息，请参阅《AWS 终端用户消息发送 SMS 服务用户指南》**中的[短信沙盒](https://docs.aws.amazon.com//sms-voice/latest/userguide/sandbox.html#sandbox-sms)。

1. 对于 **Message type**，请选择下列选项之一：
   + **Promotional**（促销）– 不重要的消息，例如营销消息。
   + **事务性** – 支持客户事务的重要消息，例如多重身份验证的一次性密码。

1. （可选）如有必要，展开**其他设置**部分，以配置与短信相关的可选设置。**其他设置**部分包含两个选项卡：
   + 在**短信设置**选项卡上，您可以配置以下设置：
     + **发起电话号码** - 发出消息的电话号码。此列表包含您的 Amazon Pinpoint 账户中存在的所有专用电话号码。
     + **发件人 ID** – 用于标识短信发件人的字母数字 ID。只有当收件人所在的国家支持发件人时，发件人 ID 才会显示在收 IDs 件人的设备上。如果您在旅程活动中指定了一个发件人 ID，它将覆盖您的账户的默认值。要详细了解哪些国家/地区支持发件人 IDs，请参阅《*AWS 最终用户消息 SMS 用户指南》中的 “支持的国家和地区（短信*[渠道）](https://docs.aws.amazon.com//sms-voice/latest/userguide/phone-numbers-sms-by-country.html)”。
**注意**  
您只需要设置其中一个值。如果您同时指定这两个值，Amazon Pinpoint 会尝试使用专用的发起电话号码发送消息。
   + 在**监管设置**选项卡上，您可以配置专门适用于向印度收件人发送消息的设置。如果您向印度的收件人发送消息，则必须指定发件人 ID 以及下面两个值：
     + **实体 ID** – 与您的公司或品牌关联的 ID，由 TRAI 在发件人 ID 注册过程中提供。
     + **模板 ID** – 与您的消息模板关联的 ID。此值也由 TRAI 在发件人 ID 注册过程中提供。
**注意**  
如果您不是向印度的收件人发送消息，或者您使用国际长途运营商路线向印度发送消息，则无需指定**实体 ID** 和**模板 ID** 值。  
有关向印度发送短信的监管要求的更多信息，请参阅《AWS 终端用户消息发送 SMS 服务用户指南》**中的[印度发件人 ID 注册流程](https://docs.aws.amazon.com//sms-voice/latest/userguide/registrations-sms-senderid-india.html)。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-create-step-3-add-activities-procedures-sms.png)

### 设置联络中心活动
<a name="journeys-add-activities-procedures-contact-center"></a>

当旅程参与者到达**通过联络中心发送**活动时，Amazon Pinpoint 会将他们置于 Amazon Connect 对外营销宣传（在 Amazon Pinpoint 中称为 *Amazon Connect 活动*）中。您可以将此活动类型配置为拨打旅程参与者的电话号码，然后或将他们接通座席，或者播放语音消息。

联络中心活动的行为与其他类型的旅程活动相比有所不同。当旅程参与者到达**通过联络中心发送**活动时，在参与者的电话号码即将进入 Amazon Connect 队列以待拨号之前，会立刻重新评估联络中心活动与前面的消息活动之间涉及**多变量拆分**或**是/否拆分**活动的所有先前活动。如果在联络中心活动之前没有消息活动，则还会重新评估旅程进入标准。

这个重新评估流程的目的是确保旅程参与者在电话排队之时仍有资格接听电话。此行为非常有用，因为从参与者到达联络中心活动到座席可以给他们打电话这段时间内，参与者的属性可能会发生变化。这是默认行为，无法关闭。

旅程重新评估利用一个 10 秒计时器来存储待拨号的参与者的评估结果。每隔 10 秒会重新评估一次参与者并存储结果，直到下一次重新评估。这意味着，假如从更新到拨号不到 10 秒，则不会对最新版本的参与者进行评估。

例如，假设有一个旅程，它包含一个将特定客户细分的成员添加到旅程中的进入步骤，另外还包含一个检查旅程参与者是否完成了特定类型事务的**是/否拆分**活动。在这种情况下， yes/no 拆分的 “是” 分支（对于完成交易的参与者）会发送后续电子邮件，而 “否” 分支（针对未完成交易的参与者）则指向联络中心活动。到达联络中心活动的参与者会一直待在那里，直到呼叫成功排队等待 Amazon Connect。当代理可用时，旅程会根据旅程输入步骤和 yes/no 拆分活动中的标准重新评估参与者的属性。

**重要**  
事件触发的旅程中不支持联络中心活动。

#### 先决条件
<a name="journeys-add-activities-procedures-contact-center-prereqs"></a>

要将联络中心活动添加到旅程中，您必须先执行以下操作：
+ 创建 Amazon Connect 账户和实例
+ 使用亚马逊 AppIntegrations 为您的 Amazon Connect 实例启用大批量出站活动。
+ 使您的 Amazon Connect 实例能够进行出站呼叫。
+ 创建专用的出站通信队列，以处理由于活动而将被路由到座席的任何联系人。必须将队列分配给座席的路由配置文件。
+ 创建并发布包含**检查通话进度**块的联系流程。此块使您可以基于是否有人接听电话或是否检测到语音邮件等来进行分支。
+ 确保您计划使用的 Amazon Connect 队列在队列中定义了出站号码。
+ 在 IAM 中，创建允许 Amazon Connect 通过 Amazon Pinpoint 发送消息的策略和角色。
**注意**  
 [为支持 IAM 服务角色**ConnectCampaignExecutionRoleArn**而指定的**资源 ID** 角色和。[service-linked-roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role)有关更多信息，请参阅 *AWS Identity and Access Management 用户指南* 中的 [IAM 标识符](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html)。
**重要**  
删除或错误配置已发布旅程的 IAM 角色和资源访问策略可能会导致 Amazon Pinpoint 停止出站拨号，直到使用原始角色集、访问策略和权限恢复 IAM 配置为止。

您可以在 AWS 联络中心博客上的[使用 Amazon Connect 出站活动进行预测性和渐进式呼叫](https://aws.amazon.com/blogs/contact-center/make-predictive-and-progressive-calls-using-amazon-connect-high-volume-outbound-communications/)的步骤 1-5 中找到完成这些任务的过程。

#### 设置联络中心活动
<a name="journeys-add-activities-procedures-contact-center-setting-up"></a>

 您可以将自己的旅程与现有的 Amazon Connect 出站活动关联起来，也可以点击生成 Amazon Connect 出站活动。

在 Amazon Pinpoint 中使用联络中心活动时，请注意以下事项：
+ 在一个旅程中只能使用三个联络中心活动。
+ 每个旅程只能使用一个 Amazon Connect 活动。如果一个旅程包含多个联络中心活动，而您为一个活动更改了 Amazon Connect 活动，则更改将反映在同一旅程中的所有其他联络中心活动中。
+ 可以在多个旅程中使用一个 Amazon Connect 活动。如果在您发布旅程时 Amazon Connect 活动已在使用中，则 Amazon Pinpoint 会显示一条警告。
+ 您的客户的电话号码必须作为语音端点存在于 Amazon Pinpoint 中。
+ 端点电话号码必须采用 E.164 格式。有关更多信息，请参阅国际电信联盟网站上的 [E.164：国际公共电信编号计划](https://www.itu.int/rec/T-REC-E.164/en)。

##### 使用现有的 Amazon Connect 活动
<a name="journeys-add-activities-procedures-contact-center-option-1"></a>

1. 选择**添加活动**。

1. 对于**添加一个活动**，请选择**通过联络中心发送**。

1. 选择要使用的 **Amazon Connect 实例**。

1. 从下拉列表中选择 **Amazon Connect 出站活动**。

1. （可选）您可以选择**生成 Amazon Connect 出站活动**，这将引导您到 Amazon Connect。

1. 对于 **IAM 角色**，请完成下列步骤之一：

   1. 如果您想让 Amazon Pinpoint 创建一个允许它向 Amazon Connect 传递电话号码的角色，请选择**自动创建角色**。然后，对于 IAM 角色，为您创建的新角色输入唯一名称。

   1. 如果您已经创建了允许 Amazon Pinpoint 向 Amazon Connect 传递电话号码的 IAM 角色，请选择**选择现有角色**。然后，对于 IAM 角色，请选择包含相应权限的角色。

1. （可选）在**描述**中，描述活动的目的。但您保存活动时，该文本显示为活动标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-create-step-3-add-activities-procedures-contact-center-option-1.png)

### 设置自定义消息渠道活动
<a name="journeys-add-activities-procedures-custom"></a>

当旅程参与者到达**通过自定义渠道发送**活动时，Amazon Pinpoint 将有关参与者的信息发送到一个 AWS Lambda 函数或 Webhook。您可以使用自定义渠道通过任何具有 API 的服务（包括非AWS 服务）向客户发送消息。

要配置自定义渠道活动，您必须先决定是使用 Lambda 函数还是 Webhook URL 来发送消息。有关创建自定义消息渠道的更多信息，请参阅《Amazon Pinpoint开发人员指南》中的[在 Amazon Pinpoint 中创建自定义渠道](https://docs.aws.amazon.com/pinpoint/latest/developerguide/channels-custom.html)。**

**设置调用 Lambda 函数的自定义消息渠道活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，请选择**通过自定义渠道发送**。

1. 对于**选择要用于发送消息的方法**，选择**执行 Lambda 函数**。

1. 对于 **Lambda 函数**，请选择要执行的函数。

1. （可选）**自定义数据**用于将端点传送到自定义渠道时，自定义数据也包含在有效负载中。此字段最多可以包含 5000 个字母数字字符。

1. 在 **Specify the endpoint types that will receive this message (指定将接收此消息的终端节点类型)** 中，选择自定义通道应用到的终端节点类型。默认情况下，仅选择 **Custom (自定义)** 终端节点类型。要添加其他终端节点类型，请选择 **Choose endpoint types (选择终端节点类型)**。

   1. Lambda 函数可用于评估要在客户细分中包含的端点。有关更多信息，请参阅使用 Lamb [AWS da 自定义区段](https://docs.aws.amazon.com/pinpoint/latest/developerguide/segments-dynamic.html)。

   1. **自定义数据**用于将端点传送到自定义渠道时，自定义数据也包含在有效负载中。
**注意**  
到达此活动的其他终端节点类型通过它发送，但只有您指定的终端节点类型才会发送到 Lambda 函数或 Webhook。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-create-step-3-add-activities-procedures-custom-lambda.png)

**设置使用 Webhook URL 的自定义消息渠道活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，请选择**通过自定义渠道发送**。

1. 对于**选择要用于发送消息的方法**，选择**指定 Webhook URL**。

1. 对于 **Webhook URL**，输入要执行的 Webhook 的地址。有关配置 Webhook 的更多信息，请参阅《Amazon Pinpoint 开发人员指南》中的[在 Amazon Pinpoint 中创建自定义渠道](https://docs.aws.amazon.com/pinpoint/latest/developerguide/channels-custom.html)。**

1. （可选）自定义数据用于将端点传送到自定义渠道时，自定义数据也包含在有效负载中。此字段最多可以包含 5000 个字母数字字符。

1. 在 **Specify the endpoint types that will receive this message (指定将接收此消息的终端节点类型)** 中，选择自定义通道应用到的终端节点类型。默认情况下，仅选择 **Custom (自定义)** 终端节点类型。要添加其他终端节点类型，请选择 **Choose endpoint types (选择终端节点类型)**。
**注意**  
到达此活动的其他终端节点类型通过它发送，但只有您指定的终端节点类型才会发送到 Lambda 函数或 Webhook。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-create-step-3-add-activities-procedures-custom-webhook.png)

### 设置等待活动
<a name="journeys-add-activities-procedures-wait"></a>

当旅程参与者到达**等待**活动时，他们将在该活动中停留一段时间，或者停留到特定日期和时间。这种类型的活动提供了一种非常有用的方法以计划发送对时间敏感的通信，或者为客户留出时间，以便与您以前在旅程中发送的消息进行交互。

**设置等待活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，请选择**等待**。

1. 请选择以下选项之一：
   + **一段时间** – 如果您希望旅程参与者在该活动上停留一定时间，请选择该选项。然后，输入您希望旅程参与者在执行下一个活动之前在该活动中等待的时间。您可以指定较短的值（如 1 小时），也可以指定较长的值（如 365 天）。
   + **直到指定日期** – 如果您希望旅程参与者在该活动上停留到特定日期和时间，请选择该选项。然后，输入旅程参与者应移到下一个活动的日期和时间。您可以选择旅程结束日期之前的任何日期和时间。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-wait-activity.png)

### 设置 yes/no 分组活动
<a name="journeys-add-activities-procedures-yes-no-split"></a>

当旅程参与者到达**是/否拆分**活动时，将根据他们的属性或行为，将他们转到两个路径之一。您可以使用这种类型的拆分活动，根据分段中的旅程参与者成员资格将其转到不同的路径。您还可以根据参与者与其他历程活动的交互，将其转到不同的路径。例如，您可以根据历程参与者是否打开以前在历程中发送的电子邮件以划分参与者。

**注意**  
要创建拆分活动，以根据推送通知事件（例如，“打开”或“已接收”事件）将参与者发送到不同的路径，您的移动应用程序必须指定用户 ID 和终端节点 ID 值。有关更多信息，请参阅《Amazon Pinpoint 开发人员指南》中的[将 Amazon Pinpoint 与您的应用程序集成](https://docs.aws.amazon.com/pinpoint/latest/developerguide/integrate.html)**。  
如果旅程客户细分在用户级别，数据中包含 user\$1id 且用于评估条件拆分的标准是端点属性，则 Amazon Pinpoint 会在用户不同端点的属性值之间使用逻辑 OR 来处理旅程属性。例如，如果单个用户有多个终端节点，并且其中任何一个端点都满足了标准，则与该用户关联的所有端点将被分组并评估为 “是”，然后进入 Yes/No 拆分活动的 “是” 分支。

**设置 yes/no 分组活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，选择**是/否拆分**。

1. 对于**选择条件类型**，选择以下选项之一：
   + **客户细分** – 选择该选项以将所选客户细分的所有成员转到“是”路径。然后，对于 **Segments (分段)**，选择一个分段。
   + **事件** – 选择该选项以根据用户与该旅程中的上一步的交互将其转到“是”路径。然后，完成以下步骤：

     1. 对于**事件**，选择要拆分的消息活动：

     1. 对于**选择活动**，选择拆分将应用到的消息活动。根据您选择的消息活动的渠道类型，您可以选择以下拆分选项：
        + 对于**电子邮件**，您可以选择以下事件。
          + **发送** – Amazon Pinpoint 接受邮件并将尝试传送它。
          + **已送达** – 邮件成功送达收件人。
          + **已拒绝** – Amazon Pinpoint 拒绝了邮件，因为它包含病毒或恶意软件。
          + **硬退回** - 由于永久性问题，电子邮件未送达收件人。例如，收件人的电子邮件地址可能已不存在。当一封邮件产生硬退回时，Amazon Pinpoint 不会尝试重新传送它。
          + **软退回** - 由于临时性问题，电子邮件未送达收件人。例如，收件人的收件箱可能已满，或者他们的电子邮件提供商可能遇到了临时问题。发生软退回时，Amazon Pinpoint 会尝试在一段时间内重新传送邮件。如果仍无法送达，则该邮件变为硬退回邮件。
          + **投诉** - 收件人收到了电子邮件，但使用了其电子邮件客户端中的“举报垃圾邮件”或类似按钮将邮件举报为不受欢迎的邮件。
**注意**  
Amazon Pinpoint 依靠来自电子邮件提供商的投诉报告来生成投诉事件。有些电子邮件提供商会定期向我们提供这些报告，有些提供商则不经常提供。
          + **已打开** – 收件人收到并且打开了邮件。
**注意**  
为使 Amazon Pinpoint 能够捕获**电子邮件打开**事件，收件人的电子邮件客户端必须下载邮件中包含的图像。许多常见的电子邮件客户端，例如 Microsoft Outlook，默认情况下不下载电子邮件图像。
          + **点击** – 收件人收到电子邮件并点击了邮件正文中包含的链接。
          + **取消订阅** – 收件人收到电子邮件并使用“取消订阅”链接选择拒收未来的邮件。
        + 对于**短信**，您可以选择以下事件。
          + **发送** – Amazon Pinpoint 尝试发送消息。
          + **已送达** – Amazon Pinpoint 收到了消息送达确认。
          + **失败** – 将消息传送到端点地址时出错。
          + **选择退出** – 与端点地址关联的用户已选择不再接收来自您的消息。
        + 对于**推送**，您可以选择以下事件。
          + **发送** – Amazon Pinpoint 尝试发送消息。
          + **已打开通知** – Amazon Pinpoint 收到用户已打开消息的确认。
          + **已在前台接收** – Amazon Pinpoint 收到用户设备收到消息并在前台显示的确认。
          + **已在后台接收** – Amazon Pinpoint 收到用户设备收到消息并在后台显示的确认。
        + 对于**联络中心**，您可以选择以下活动。
          + **已连接** – Amazon Pinpoint 收到电话已接通座席的确认。
          + **SIT 音调** – Amazon Pinpoint 收到电话送回忙音的响应。
          + **传真** – Amazon Pinpoint 收到电话送回传真音的响应。
          + **语音邮件蜂鸣音** – Amazon Pinpoint 收到电话送回带蜂鸣音的语音邮件的响应。
          + **语音邮件无蜂鸣音** – Amazon Pinpoint 收到电话送回无蜂鸣音的语音邮件的响应。
          + **未接听** – Amazon Pinpoint 收到电话未被接听且在没有语音邮件情况下响起的响应。
        + **自定义渠道** - 对于自定义渠道活动，您可以定义要拆分的响应属性和值。确保以可读方式将此属性和值传回 Amazon Pinpoint 旅程。有关如何构造此响应的更多信息，请参阅《Amazon Pinpoint 开发人员指南》中的[在 Amazon Pinpoint 中创建自定义渠道](https://docs.aws.amazon.com/pinpoint/latest/developerguide/channels-custom.html)。

     1. 
**注意**  
（可选）对于自定义渠道活动，您可以根据**函数调用或 Webhook 响应进行**拆分。要对此进行配置，您可以定义：  
**属性** – 要评估的属性名称。
**值** - 用于确定以哪种方式拆分的值。

1. 对于**条件评估**，选择 Amazon Pinpoint 应何时评估条件。可从以下选项中进行选择：
   + **立即评估** – 如果选择该选项，则当旅程参与者到达活动时，Amazon Pinpoint 会立即检查是否满足您指定的事件条件。
   + **在以下时间后评估** – 如果选择该选项，则 Amazon Pinpoint 等待指定的一段时间。在指定的时间段过后，Amazon Pinpoint 将检查是否满足您指定的事件条件。
   + **在以下时间评估** – 如果选择该选项，则 Amazon Pinpoint 等到特定的日期和时间才评估。到了该日期和时间，Amazon Pinpoint 将检查是否满足您指定的事件条件。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-yes-no-split-activity.png)

### 设置多变量拆分活动
<a name="journeys-add-activities-procedures-multivariate-split"></a>

当旅程参与者到达**多变量拆分**活动时，将根据他们的属性或行为，将他们转到多个路径之一。这种类型的分割类似于 yes/no 拆分。使用多变量拆分活动的优点是，它可以评估多个条件。此外，每个多变量拆分活动包含“其他”路径。不符合您在“其他”路径中指定的任何条件的旅程参与者将自动转到该路径。

您可以使用这种类型的拆分，根据分段中的旅程参与者成员资格将其转到不同的路径。您还可以根据参与者与其他历程活动的交互，将其转到不同的路径。例如，您可以根据历程参与者是否打开以前在历程中发送的电子邮件以划分参与者。

**注意**  
如果旅程参与者满足条件拆分中的多个条件，则会按字母顺序将其转到满足的第一个条件。例如，如果参与者满足分支 A 和分支 D 中的条件，则会将其转到与分支 A 对应的路径。  
要创建拆分活动，以根据推送通知事件（例如，“打开”或“已接收”事件）将参与者发送到不同的路径，您的移动应用程序必须指定用户 ID 和终端节点 ID 值。有关更多信息，请参阅《Amazon Pinpoint 开发人员指南》中的[将 Amazon Pinpoint 与您的应用程序集成](https://docs.aws.amazon.com/pinpoint/latest/developerguide/integrate.html)**。  
如果旅程客户细分在用户级别，数据中包含 user\$1id 且用于评估条件拆分的标准是端点属性，则 Amazon Pinpoint 会在用户不同端点的属性值之间使用逻辑 OR 来处理旅程属性。例如，如果单个用户有多个终端节点，并且其中任何一个端点都满足了标准，则与该用户关联的所有端点将被分组并评估为 “是”，然后进入 Yes/No 拆分活动的 “是” 分支。

**设置多变量拆分活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，选择**多变量拆分**。

1. 确定要创建多少个不同的路径（分支）。选择**添加另一个分支**以创建其他路径。

1. 在每个分支上，对于**选择条件类型**，选择以下选项之一：
   + **客户细分** – 选择该选项以将所选客户细分的所有成员转到该路径。然后，对于 **Segments (分段)**，选择一个分段。
   + **事件** – 选择该选项以根据用户与该旅程中的上一步的交互将其转到该路径。然后，完成以下步骤：

     1. 对于**事件**，选择您要拆分的消息活动。

     1. 对于**选择活动**，选择拆分将应用到的消息活动。根据您选择的消息活动的渠道类型，您可以选择以下拆分选项：
        + 对于**电子邮件**，您可以选择以下事件。
          + **发送** – Amazon Pinpoint 接受邮件并将尝试传送它。
          + **已送达** – 邮件成功送达收件人。
          + **已拒绝** – Amazon Pinpoint 拒绝了邮件，因为它包含病毒或恶意软件。
          + **硬退回** - 由于永久性问题，电子邮件未送达收件人。例如，收件人的电子邮件地址可能已不存在。当一封邮件产生硬退回时，Amazon Pinpoint 不会尝试重新传送它。
          + **软退回** - 由于临时性问题，电子邮件未送达收件人。例如，收件人的收件箱可能已满，或者他们的电子邮件提供商可能遇到了临时问题。发生软退回时，Amazon Pinpoint 会尝试在一段时间内重新传送邮件。如果仍无法送达，则该邮件变为硬退回邮件。
          + **投诉** - 收件人收到了电子邮件，但使用了其电子邮件客户端中的“举报垃圾邮件”或类似按钮将邮件举报为不受欢迎的邮件。
**注意**  
Amazon Pinpoint 依靠来自电子邮件提供商的投诉报告来生成投诉事件。有些电子邮件提供商会定期向我们提供这些报告，有些提供商则不经常提供。
          + **已打开** – 收件人收到并且打开了邮件。
**注意**  
为使 Amazon Pinpoint 能够捕获**电子邮件打开**事件，收件人的电子邮件客户端必须下载邮件中包含的图像。许多常见的电子邮件客户端，例如 Microsoft Outlook，默认情况下不下载电子邮件图像。
          + **点击** – 收件人收到电子邮件并点击了邮件正文中包含的链接。
          + **取消订阅** – 收件人收到电子邮件并使用“取消订阅”链接选择拒收未来的邮件。
        + 对于**短信**，您可以选择以下事件。
          + **发送** – Amazon Pinpoint 尝试发送消息。
          + **已送达** – Amazon Pinpoint 收到了消息送达确认。
          + **失败** – 将消息传送到端点地址时出错。
          + **选择退出** – 与端点地址关联的用户已选择不再接收来自您的消息。
        + 对于**推送**，您可以选择以下事件。
          + **发送** – Amazon Pinpoint 尝试发送消息。
          + **已打开通知** – Amazon Pinpoint 收到用户已打开消息的确认。
          + **已在前台接收** – Amazon Pinpoint 收到用户设备收到消息并在前台显示的确认。
          + **已在后台接收** – Amazon Pinpoint 收到用户设备收到消息并在后台显示的确认。
        + 对于**联络中心**，您可以选择以下活动。
          + **已连接** – Amazon Pinpoint 收到电话已接通座席的确认。
          + **SIT 音调** – Amazon Pinpoint 收到电话送回忙音的响应。
          + **传真** – Amazon Pinpoint 收到电话送回传真音的响应。
          + **语音邮件蜂鸣音** – Amazon Pinpoint 收到电话送回带蜂鸣音的语音邮件的响应。
          + **语音邮件无蜂鸣音** – Amazon Pinpoint 收到电话送回无蜂鸣音的语音邮件的响应。
          + **未接听** – Amazon Pinpoint 收到电话未被接听且在没有语音邮件情况下响起的响应。
        + **自定义渠道** - 对于自定义渠道活动，您可以定义要拆分的响应属性和值。确保以可读方式将此属性和值传回 Amazon Pinpoint 旅程。有关如何构造此响应的更多信息，请参阅《Amazon Pinpoint 开发人员指南》中的[在 Amazon Pinpoint 中创建自定义渠道](https://docs.aws.amazon.com/pinpoint/latest/developerguide/channels-custom.html)。

     1. 对于**选择旅程消息活动和事件**，选择调用函数或 Webhook 响应。
        + **属性** – 要评估的属性名称。
        + **值** - 用于确定路径要穿过哪个分支的值。

   对活动中的每个路径重复此步骤。

1. 对于**条件评估**，选择 Amazon Pinpoint 应何时评估条件。可从以下选项中进行选择：
   + **立即评估** – 如果选择该选项，则当旅程参与者到达活动时，Amazon Pinpoint 会立即检查是否满足您指定的事件条件。
   + **在以下时间后评估** – 如果选择该选项，则 Amazon Pinpoint 等待指定的一段时间。在指定的时间段过后，Amazon Pinpoint 将检查是否满足您指定的事件条件。
   + **在以下时间评估** – 如果选择该选项，则 Amazon Pinpoint 等到特定的日期和时间才评估。到了该日期和时间，Amazon Pinpoint 将检查是否满足您指定的事件条件。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-multivariate-split-activity.png)

### 设置保留活动
<a name="journeys-add-activities-procedures-holdout"></a>

当旅程参与者到达**保留**活动时，将结束随机选择的参与者的旅程。您可以指定保留的旅程参与者总数所占的百分比。通过创建不接收您的消息的控制组，保留活动可帮助您衡量旅程的影响。在旅程完成运行时，您可以将参与旅程的用户的行为与对照组中用户的行为进行比较。

**注意**  
Amazon Pinpoint 使用基于概率的算法来确定保留哪些旅程参与者。保留的旅程参与者百分比与您指定的百分比非常接近，但可能并不完全相等。

**设置保留活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，选择**保留**。

1. 对于**保留百分比**，输入应禁止执行旅程中的下一个活动的旅程参与者的百分比。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-holdout-activity.png)

### 设置随机拆分活动
<a name="journeys-add-activities-procedures-random-split"></a>

当旅程参与者到达**随机拆分**活动时，他们将随机转到最多五个路径之一。您可以为此类活动创建两到五个单独的路径。如果要衡量不同消息变体的效果，这种类型的活动是非常有用的。

**注意**  
Amazon Pinpoint 使用基于概率的算法来确定哪些旅程参与者转到随机拆分活动中的每个路径。转到每个路径的旅程参与者百分比与您指定的百分比非常接近，但可能并不完全相等。

**设置随机拆分活动**

1. 选择**添加活动**。

1. 对于**添加一个活动**，选择**随机拆分**。

1. 确定要创建多少个不同的路径（分支）。选择**添加另一个分支**以分别创建其他路径。

1. 在每个分支旁边的文本字段中，输入应转到该分支的旅程参与者的百分比。您指定的值必须是正数，并且不能包含小数。您在所有分支中输入的值之和必须恰好等于 100%。

1. （可选）对于**描述**，输入描述活动目的的文本。在保存活动时，该文本将显示为其标签。

1. 完成后，选择**保存**。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-random-split-activity.png)

**下一步**：[审查和测试旅程](journeys-review-test.md)

# 审查和测试旅程
<a name="journeys-review-test"></a>

在发布旅程之前，您必须对其进行审查，以确保正确配置了它包含的所有活动。另外，在发布之前，最好先在旅程副本中注册测试用户，以确认旅程行为方式符合预期的要求。本节包含与审查和测试旅程相关的信息和过程。

## 审查旅程
<a name="journeys-review"></a>

审查功能提供有关旅程中的配置错误的信息，并且还提供了一些建议。

**审查旅程**

1. 在旅程工作区的右上角，选择**审查**。**审查您的旅程**窗格出现在旅程工作区中。下图显示打开了**审查您的旅程**窗格的旅程工作区。  
![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-review-pane.png)

1. 查看在**审查您的旅程**窗格第一页上显示的错误消息。在解决该页面上显示的所有问题后，您才能发布旅程。如果您的旅程没有任何问题，则会看到一条消息，指出您的旅程不包含任何错误。如果准备继续，请选择**下一步**。
**提示**  
选择一个错误以直接转到它适用的活动。

1. **审查您的旅程**窗格的第二页包含与您的旅程相关的建议和最佳实践。您可以继续审查，而不解决该页面上显示的问题。如果准备继续，请选择**标记为已审查**。

1. 在**审查您的旅程**窗格的第三页上，您可以发布旅程。如果您准备好让客户进入旅程，请选择**发布**。不过，如果您想要先测试旅程，则关闭**审查您的旅程**窗格，然后完成[测试旅程](#journeys-test)中的步骤。

## 测试旅程
<a name="journeys-test"></a>

在创建旅程时，最重要的步骤之一是对其进行测试，以确保其行为符合预期的要求。旅程包含测试特征，可简化将一组测试参与者转到旅程的过程。通过使用它包含的特征，您可以减少或消除参与者在等待或多变量拆分活动上所花的时间，以便您可以全面快速地测试每个旅程。

**测试旅程**

1. 创建一个新客户细分，其中仅包含您希望参与测试旅程的测试参与者。或者，如果您已具有测试参与者客户细分，请执行下一步。

   有关创建客户细分的更多信息，请参阅[构建客户细分](segments-building.md)。
**提示**  
建议您通过导入电子表格来创建测试客户细分。有关更多信息，请参阅 [导入客户细分](segments-importing.md)。  
只有动态分段才支持使用基于事件的入场条件测试旅程。

1. 在**操作**菜单上，选择**测试**。

1. 对于**测试客户细分**，选择包含测试参与者的客户细分。

1. 选择如何处理旅程中的延迟。您可以选择以下选项之一：
   + **跳过所有等待和延迟** – 选择该选项以使测试参与者从一个活动进行到另一个活动，而无任何中间延迟。
   + **自定义等待时间** – 选择该选项以使测试参与者在每个包括延迟的活动中等待预定义的时间。如果您的旅程包含等待活动，或者基于客户互动的 yes/no 拆分或多变量拆分活动，则此选项会很有用。

1. 选择**发送测试**。Amazon Pinpoint 创建一个新旅程，并将 `Test-` 添加到旅程名称的开头。测试参与者被添加到该旅程中。

1. 在完成测试后，请选择**停止旅程**以永久结束测试旅程。
**提示**  
在测试过程中，如果发现您需要更改原始旅程（即测试旅程所基于的旅程），请返回到**旅程**页面。在旅程列表中，选择原始旅程，然后进行更改。您对测试旅程所做的更改不会自动应用于测试所基于的旅程。

### 测试旅程的最佳实践
<a name="journeys-test-best-practices"></a>
+ 在用于测试旅程的客户细分中包括一些测试参与者。
+ 包括电子邮件地址没有位于您自己的域中的测试参与者。
+ 使用各种电子邮件客户端和操作系统测试从旅程中发送的邮件。
+ 如果您的旅程包括 yes/no 基于电子邮件互动的拆分活动或多变量拆分活动，请测试这些互动。例如，如果拆分活动检查是否打开了一封电子邮件，则某些测试参与者应打开该电子邮件。然后，检查**旅程指标**窗格，以确保转到每个路径的用户数正确无误。
+ 如果电子邮件模板包括引用端点属性的消息变量，请确保测试参与者具有这些相同的属性。例如，如果电子邮件模板引用 `User.UserAttributes.FirstName` 的属性，则测试客户细分中的端点也应具有该属性。

**下一步**：[发布旅程](journeys-publish.md)

# 发布旅程
<a name="journeys-publish"></a>

在[测试了旅程](journeys-review-test.md#journeys-test)并准备好让客户进入旅程后，您就可以发布旅程了。发布过程要求您再次完成检查过程。

**发布旅程**

1. 在旅程工作区的右上角，选择**审查**。**审查您的旅程**窗格出现在旅程工作区中。

1. 查看在**审查您的旅程**窗格第一页上显示的错误消息。在解决该页面上显示的所有问题后，您才能发布旅程。如果您的旅程没有任何问题，则会看到一条消息，指出您的旅程不包含任何错误。如果准备继续，请选择**下一步**。

1. **审查您的旅程**窗格的第二页包含与您的旅程相关的建议和最佳实践。您可以继续审查，而不解决该页面上显示的问题。如果准备继续，请选择**标记为已审查**。

1. 在**审查您的旅程**窗格的第三页上，选择**发布**。
**注意**  
即使您将旅程配置为立即开始，也会有五分钟延迟，之后参与者才能实际进入旅程。在此期间，Amazon Pinpoint 计算所有客户细分成员，并准备开始捕获分析数据。该延迟还为您提供了最后停止旅程（如有必要）的机会。

1. 审查和发布旅程会在旅程流程中添加一个退出旅程元素，用来指示旅程已成功审查并发布。

**下一步**：[暂停、恢复或停止旅程](journeys-pause-stop.md)

# 暂停、恢复或停止旅程
<a name="journeys-pause-stop"></a>

## 暂停旅程
<a name="journeys-pause"></a>

旅程发布后，您可以暂停该旅程。在暂停旅程期间，不会发送消息，也不会生成分析数据。您可以在假日期间暂停旅程，或者当您需要重新评估旅程本身是否有变化时，也可以暂停旅程。在暂停之前进入旅程的所有端点都将在完成旅程后暂停。在暂停期间，任何等待进入旅程的端点都不会进入旅程。如果旅程处于**等待**活动中，**等待**活动上的计时器将暂停。旅程恢复后，**等待**活动将从暂停之处继续。无法编辑暂停的旅程。

**暂停旅程**

1. 登录 AWS 管理控制台 并打开 Amazon Pinpoint 控制台，网址为：[https://console.aws.amazon.com/pinpoint/](https://console.aws.amazon.com/pinpoint/)。

1. 对于**所有项目**，请选择一个现有项目。

1. 在导航窗格中，选择**旅程**。

1. 选择当前发布的旅程。

1. 在发布的旅程工作区的右上角，选择**操作**。

1. 选择**暂停**。

1. 当系统提示您确认暂停旅程时，选择**暂停**。

   暂停的旅程会无限期暂停，直到您恢复它。

## 恢复旅程
<a name="journeys-resume"></a>

暂停的旅程只能在五分钟后恢复。当您恢复暂停的旅程时，参与者会从暂停之处恢复执行旅程。如果有任何旅程处于**等待**活动中，则该**等待**活动从旅程暂停之处倒计时恢复。

**恢复旅程**

1. 登录 AWS 管理控制台 并打开 Amazon Pinpoint 控制台，网址为：[https://console.aws.amazon.com/pinpoint/](https://console.aws.amazon.com/pinpoint/)。

1. 对于**所有项目**，请选择一个现有项目。

1. 在导航窗格中，选择**旅程**。

1. 选择当前暂停的旅程。

1. 在暂停的旅程工作区的右上角，选择**操作**。

1. 选择**恢复**。

1. 当系统提示您确认恢复旅程时，选择**恢复**。

   旅程恢复。

## 停止旅程
<a name="journeys-stop"></a>

永久停止一个旅程会结束该旅程及其相关的所有活动。当前正在进行的任何活动将结束。但是，您仍然可以查看分析数据。

**提示**  
如果您不确定是否要停止旅程，可以考虑改为暂停。由于被停止的旅程会永久停止，所以必须重新创建旅程才能再次使用它。

**停止旅程**

1. 登录 AWS 管理控制台 并打开 Amazon Pinpoint 控制台，网址为：[https://console.aws.amazon.com/pinpoint/](https://console.aws.amazon.com/pinpoint/)。

1. 对于**所有项目**，请选择一个现有项目。

1. 在导航窗格中，选择**旅程**。

1. 选择当前发布的旅程。

1. 在旅程工作区的右上角，选择**操作**。

1. 选择**停止**。

1. 当系统提示您确认停止旅程时，选择**停止旅程**。

   旅程永久停止。

**下一步**：[查看旅程指标](journeys-metrics.md)

# 查看旅程指标
<a name="journeys-metrics"></a>

当您发布旅程后，旅程工作区中将显示**旅程指标**窗格，并且 Amazon Pinpoint 开始捕获与旅程相关的指标。

**Topics**
+ [旅程级别执行指标](#journeys-metrics-execution)
+ [活动级别执行指标](#journeys-metrics-execution-activity)
+ [旅程级别互动指标](#journeys-metrics-engagement)
+ [活动级别互动指标](#journeys-metrics-engagement-activity)

## 旅程级别执行指标
<a name="journeys-metrics-execution"></a>

旅程级别执行指标包括有关进入（或禁止进入）旅程的端点的信息。要查看互动指标，请在**旅程指标**窗格中选择**互动指标**。

这些指标分为几个部分，将在以下几节中详细讨论。

### 进入指标
<a name="journeys-metrics-execution-entry"></a>

旅程执行指标列表中的第一个部分显示有多少个参与者进入了旅程。在下图中显示了该部分的示例。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-execution-entries.png)


本部分包含以下信息：
+ **目前正在旅程中** – 正在积极完成旅程中的活动的参与者数。
+ **已完成旅程** – 已到达旅程中的结束活动的参与者数。
+ **终身旅程进入次数** – 自旅程开始日期以来进入旅程的参与者数。该部分还包含一个图表，显示完成了旅程的参与者百分比（以蓝色显示）和仍位于旅程中的参与者百分比（以橙色显示）。

### 旅程刷新指标
<a name="journeys-metrics-refresh"></a>

本部分显示旅程的刷新指标。它包括有关刷新的客户细分数量、客户细分刷新次数以及客户细分是否设置为更新时刷新等信息。在下图中显示了该部分的示例。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-refresh.png)


本部分包含以下信息：
+ **旅程进入总次数** – 旅程进入的总数。
+ **下一个进入组 - *估计*** – 下次更新时将添加的端点数量。如果未设置客户细分刷新间隔，则不会添加任何端点。该值显示为**不适用**。
+ **客户细分更新时不刷新**/ **更新时刷新** – 指示在为旅程进入活动添加端点时是否选择了**客户细分更新时刷新**。
+ **进入客户细分将被刷新的次数** – 旅程过程中客户细分将被刷新的最大次数。
+ **自开始以来进入客户细分已被刷新的次数** – 自从旅程开始以来客户细分被刷新的当前次数。
+ **由于重新评估而移除** – 当参与者到达**发送联络中心**活动时，由于重新评估过程而从旅程中被移除的端点数量。有关更多信息，请参阅 [设置联络中心活动](journeys-add-activities.md#journeys-add-activities-procedures-contact-center)。

### 未发送的消息数指标
<a name="journeys-metrics-execution-unsent"></a>

旅程执行指标列表中的下一个部分包含有关未将消息发送到旅程参与者的原因的信息。在下图中显示了该部分的示例。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-execution-unsent.png)


本部分包含以下信息：
+ **每个端点的最大进入次数**/**超过每个端点的最大进入次数** – 显示每个端点的最大进入次数，以及由于超过单个端点可以参与旅程的最大次数而被禁止参与旅程的参与者数。
+ **每个端点的每日最大消息数**/**超过每个端点的每日最大消息数** – 显示每个端点的每日最大消息数，以及由于一旦发送则将超过单个参与者在 24 小时内可以接收的最大消息数而未发送的消息数量。
+ **安静时间**/**未在安静时间期间发送** - 显示当前为旅程设置的安静时间，以及由于以下原因而未发送的消息数量。
  + 尽管**安静时间后继续发送**未开启，但由于遇到安静时间窗口而导致发送被阻止。
  + 尽管**时区估计**开启，但由于端点没有时区而导致发送被阻止（缺少 `Demographic.Timezone` 属性和时区估计失败的结果）。

## 活动级别执行指标
<a name="journeys-metrics-execution-activity"></a>

活动级别执行指标包括有关进入（或禁止进入）活动的端点的信息。选择单个活动以查看其执行指标。要查看互动指标，请在**旅程指标**窗格中选择**互动指标**。

**重要**  
在每个活动模式的右上角会记录在旅程中遍历每个活动的端点数量。

这些指标分为几个部分，将在以下几节中详细讨论。

### 发送的消息数指标
<a name="journeys-metrics-execution-activity-sent"></a>

活动执行指标列表的第一部分显示进入活动的端点数量。在下图中显示了该部分的示例。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-execution-activity-sent.png)


本部分包含以下信息：
+ **发送的消息** – 已发送的消息数量。
+ **未发送的消息** – 未发送的消息数量。

### 未发送的消息数指标
<a name="journeys-metrics-execution-activity-unsent"></a>

旅程中的每个活动都包括一个执行指标列表，这些指标指示有关因系统问题、Amazon Pinpoint 账户配置或最终用户首选项（如选择退出）而无法传送的消息数量的信息。在下图中显示了该部分的示例。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-execution-activity-unsent.png)


本部分包含以下信息：
+ **未在安静时间期间发送** – 由于会在收件人时区的安静时间内传送而未发送的消息数。
+ **超过端点消息限制** – 由于一旦发送就会超过单个参与者可以在 24 小时内接收的最大消息数而未发送的消息数。
+ **受到限制** – 由于一旦发送就会超过您的 Amazon Pinpoint 账户的发送限额而未发送的消息数。
+ **暂时失败** – 由于暂时失败而未发送的消息数。
+ **服务失败** – 由于 Amazon Pinpoint 服务出问题而未发送的消息数。
+ **永久失败** – 由于永久失败而未发送的消息数。
+ **不受支持的渠道** – 由于端点与活动类型不匹配而未通过活动发送的端点数。
+ **未知失败** – 由于未知原因而未发送的消息数。
+ **自定义送达失败** – 由于 Lambda 函数或 Webhook 失败而未发送的消息数。
**注意**  
此指标仅显示在**通过自定义渠道发送**活动上。
+ **拨号故障** - 由于出现问题导致无法拨打号码进而无法通过**通过联络中心发送**活动传送的消息数量。如果存在权限问题导致无法拨打电话，或者超过了 Amazon Connect 服务限额，或者出现临时服务问题，都会发生此类故障。
+ **由于重新评估而移除** - 当参与者到达**通过联络中心发送**活动时，由于重新评估过程而从旅程中移除的端点数量。有关更多信息，请参阅 [设置联络中心活动](journeys-add-activities.md#journeys-add-activities-procedures-contact-center)。
**注意**  
**拨号故障**和**由于重新评估而移除**指标仅在**通过联络中心发送**活动上显示。
+ **安静时间**/**未在安静时间期间发送** - 显示当前为旅程设置的安静时间，以及由于以下原因而未发送的消息数量。
  + 尽管**安静时间后继续发送**未开启，但由于遇到安静时间窗口而导致发送被阻止。
  + 尽管**时区估计**开启，但由于端点没有时区而导致发送被阻止（缺少 `Demographic.Timezone` 属性和时区估计失败的结果）。

## 旅程级别互动指标
<a name="journeys-metrics-engagement"></a>

旅程级别互动指标包含有关旅程中的参与者与从旅程中发送的消息进行交互的方式的信息。

这些指标分为几个部分，将在以下几节中详细讨论。

**重要**  
一些互动指标基于我们从收件人的电子邮件提供商或移动电话运营商或从推送通知服务（例如 Apple 推送通知服务或 Firebase Cloud Messaging）接收的信息。在我们从这些来源收到该数据后，在处理传入指标时，最多可能会出现两小时延迟。

### 消息活动数
<a name="journeys-metrics-engagement-number"></a>

每个旅程的互动指标提供该旅程中的消息活动数量。

如果旅程中有多种活动类型，则互动指标按类型细分，如下图所示。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-engagement-number.png)


## 活动级别互动指标
<a name="journeys-metrics-engagement-activity"></a>

活动级别互动指标包含有关旅程中的参与者与从旅程中发送的消息进行交互的方式的信息。

这些指标分为几个部分，将在以下几节中详细讨论。

### 电子邮件活动
<a name="journeys-metrics-engagement-activity-email"></a>

电子邮件活动提供以下互动指标。

#### 响应指标
<a name="journeys-metrics-engagement-activity-email-response"></a>

这些指标提供有关参与者如何与从电子邮件活动中发送的消息进行交互的信息。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-engagement-response.png)


本部分包含以下信息：
+ **发送的消息总数** – 从此活动发送的电子邮件数，无论邮件是否已成功传送到收件人的收件箱。
+ **送达总数** – 已传送到收件人的电子邮件提供商的邮件数。
+ **打开总数** – 收件人打开的邮件的数量。
**注意**  
要使 Amazon Pinpoint 计算电子邮件打开事件，收件人必须加载邮件中的图像。默认情况下，一些电子邮件客户端（例如，某些版本的 Microsoft Outlook）禁止加载图像。  
如果在同一小时内打开一封邮件一次或多次，则计为打开一次。在不同小时发生的多次打开将被计为单独的打开。例如，如果在上午 8:30 和上午 8:45 打开同一封邮件，将算作一次打开，但是如果在上午 8:30 和上午 9:05 打开同一封邮件，则会计为两次打开，因为打开发生在不同小时内。因此，邮件打开次数可能会（但非常少见）超过发送或传送次数。
+ **点击总数** – 收件人点击邮件中链接的次数。
**注意**  
如果邮件收件人点击一个邮件中的多个链接或多次点击同一个链接，并且这些点击发生在同一小时内，则计为一次点击。在不同时间发生的多次点击将被计为单独的点击。例如，在上午 8:30 和上午 8:45 分别点击了一个链接，将算作一次点击，但是如果在上午 8:30 和上午 9:05 分别点击了该链接，则会计为两次点击，因为点击发生在不同小时内。因此，点击次数可能会超过打开或传送次数。

#### 消息参与指标
<a name="journeys-metrics-engagement-activity-message"></a>

互动指标列表中的最后一个部分提供了其他电子邮件回复指标。在下图中显示了该部分的示例。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-engagement-message.png)


本部分包含以下信息：
+ **被软退回的电子邮件** – 导致软退回的邮件数。软退回发生在因暂时性问题（例如，接收人的收件箱已满）而无法送达邮件时。
**注意**  
Amazon Pinpoint 尝试在一段时间内重新传送被软退回的邮件。如果重新传送尝试成功送达了邮件，则该邮件被计入**送达总数**指标，并从**被软退回的电子邮件**指标中删除。
+ **被硬退回的电子邮件** – 导致硬退回的邮件数。硬退回发生在因永久性问题（例如，在目标电子邮件地址不再存在）而无法传送邮件时。
**注意**  
在一段时间后仍无法送达的软退回邮件将转为硬退回邮件。因此，您可能会看到软退回邮件数减少，而硬退回邮件数增加。
+ **已取消订阅的电子邮件** – 提示收件人取消订阅的邮件数。
**注意**  
要使 Amazon Pinpoint 计算取消订阅事件，电子邮件中的取消订阅链接必须包含特殊的链接标签（称为 `unsubscribeLinkTag` 的标签，如以下示例中所示：`<a ses:tags="unsubscribeLinkTag:click;" href="http://www.example.com/unsubscribe">`）。仅包含该标签的链接计为取消订阅数。
+ **受到投诉的电子邮件** – 被收件人报告为未经请求的邮件的邮件数。
**注意**  
该指标基于我们从收件人的电子邮件提供商收到的投诉报告数据。一些电子邮件提供商立即向我们发送投诉数据，而其他电子邮件提供商每周或每月发送一次摘要。
+ **已拒收的电子邮件** – 由于被拒绝而未发送的邮件数。如果 Amazon Pinpoint 确定邮件中包含恶意软件，则该邮件将被拒绝。Amazon Pinpoint 不会尝试发送被拒绝的邮件。

### 短信活动
<a name="journeys-metrics-engagement-activity-sms"></a>

短信活动提供以下互动指标。

#### 送达指标
<a name="journeys-metrics-engagement-activity-sms-delivery"></a>

这些指标提供有关参与者如何与从短信活动中发送的消息进行交互的信息。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-engagement-activity-sms-delivery.png)


本部分包含以下信息：
+ **发送的消息总数** – 从此活动发送的短信数，无论短信是否成功送达收件人的设备。
+ **送达总数** – 从提供商传送到收件人设备的短信数。
+ **失败总数** – 未能送达收件人的短信数。
+ **短信活动支出总额** – 通过此活动发送短信所花费的估计金额。

### 推送通知活动
<a name="journeys-metrics-engagement-activity-push"></a>

推送通知活动提供以下互动指标。

#### 响应指标
<a name="journeys-metrics-engagement-activity-push-response"></a>

这些指标提供有关参与者如何与从推送通知活动中发送的消息进行交互的信息。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-engagement-activity-push-response.png)


本部分包含以下信息：
+ **发送的消息总数** – 从此活动发送的推送通知数，无论消息是否成功送达收件人的设备。
+ **送达总数** – 从推送通知服务传送到收件人设备的推送通知数。此指标仅反映应用程序在收件人设备的前台或后台运行时进行的传送。由于移动操作系统在优先处理后台通知方面存在差异，因此不能保证推送通知的传送。
+ **打开总数** – 收件人打开的推送通知的数量。

#### 生存时间指标
<a name="journeys-metrics-engagement-activity-push-ttl"></a>

推送通知互动指标还提供推送通知活动的生存时间 (TTL) 值。TTL 是指 Amazon Pinpoint 可以传送消息的时间（以秒为单位）。在此时间过后，Amazon Pinpoint 会丢弃该消息，并且不会尝试重新传送该消息。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-engagement-activity-push-ttl.png)


使用默认 TTL 值时，此指标显示“-”。对于自定义 TTL 值，此指标将显示您选择的确切数量和时间单位。

### 自定义渠道活动
<a name="journeys-metrics-engagement-activity-custom"></a>

自定义渠道活动提供以下互动指标。

#### 调用成功指标
<a name="journeys-metrics-engagement-activity-custom-success"></a>

这些指标提供有关参与者如何与从自定义渠道活动中发送的消息进行交互的信息。

![\[\]](http://docs.aws.amazon.com/zh_cn/pinpoint/latest/userguide/images/journeys-metrics-engagement-activity-custom-success.png)


本部分包含以下信息：
+ **调用函数或 Webhook 成功** – 由于此活动而成功调用 Lambda 函数或 Webhook 的次数。
**注意**  
这并不表示消息已传送到目标，它只表示已调用 Lambda 函数或 Webhook。
+ **调用 Webhook 或函数失败** – 由于此活动而未成功调用 Lambda 函数或 Webhook 的次数。

### 联络中心活动
<a name="journeys-contact-center-outbound-campaigns"></a>

您可以使用联络中心活动指标来分析参与者与您的通话的互动。

#### 联络中心指标
<a name="jounrneys-contact-center-outbound-campaigns-success"></a>

有以下通话指标：
+ **成功拨号总数** - 成功拨打的电话总数。
+ **已连接** - 接通座席的电话数。如果启用了应答机检测，则应答机接收的呼叫将不包括在**已连接**指标中。否则，如果应答机检测被禁用，它们将被包括在内。有关答录机检测的更多信息，请参阅 *Amazon Connect 出站广告系列 API 参考[AnswerMachine DetectionConfig](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-outbound-campaigns_AnswerMachineDetectionConfig.html)*中的。
+ **SIT 音调** - 接到忙音的电话数。
+ **传真** - 接到传真音的电话数。
+ **语音邮件蜂鸣音** - 收到带蜂鸣音的语音邮件的电话数。
+ **语音邮件无蜂鸣音** - 收到无蜂鸣音的语音邮件的电话数。
+ **未接听** - 收到回复但电话在未收到语音邮件的情况下继续响的电话数量。
+ **连接错误** - 收到回复但电话无法收到语音邮件的电话数。
+ **连接速率** - 成功接通座席的电话与所有成功拨号相比的比率。
+ **拨号失败总数** - 由于系统问题、电信问题或权限错误而失败的呼叫数。
+ **拨号过期总数** - 由于拨号器出现错误或没有可用的座席而过期的呼叫数。

### 活动指标
<a name="journeys-metrics-activity"></a>

除了查看渠道特定活动类型（电子邮件、短信、推送和自定义渠道）的指标外，您还可以查看其他活动类型的指标，其中包括以下类型：**等待**活动、**是/否拆分**活动、**多变量拆分**活动和**随机拆分**活动。

#### 等待活动指标
<a name="journeys-metrics-activity-wait"></a>

等待活动的旅程指标包括以下信息：
+ **等待已完成** – 完成了活动的旅程参与者数。
+ **等待日期已过** – 由于等待日期是以前的日期，到达该活动并立即移到下一个活动的旅程参与者数。
+ **目前正在等待** – 当前在该活动中等待的参与者数。

#### 是/否拆分活动指标
<a name="journeys-metrics-activity-yes-no-split"></a>

 yes/no 拆分活动的旅程指标包括以下信息：
+ **参与者总数** – 已通过了活动的旅程参与者数。
+ ***路径* 的详细信息** – 被转向活动的每个路径的旅程参与者数。

#### 多变量拆分活动指标
<a name="journeys-metrics-activity-multivariate-split"></a>

多变量拆分活动的旅程指标包括以下信息：
+ **参与者总数** – 已通过了活动的旅程参与者数。
+ ***路径* 的详细信息** – 被转向活动的每个路径的旅程参与者数。

#### 保留活动指标
<a name="journeys-metrics-activity-holdout"></a>

保留活动的旅程指标包括以下信息：
+ **已进入总数** – 已通过了活动的旅程参与者数。
+ **保留的参与者数** – 由于被活动保留而退出旅程的参与者数。

#### 随机拆分活动指标
<a name="journeys-metrics-activity-random-split"></a>

随机拆分活动的旅程指标包括以下信息：
+ **参与者总数** – 已通过了活动的旅程参与者数。
+ ***路径* 的详细信息** – 被转向活动的每个路径的旅程参与者数。

# 有关旅程的提示和最佳实践
<a name="journeys-best-practices"></a>

虽然旅程很灵活且完全可自定义，但有一些基本策略和实践可以帮助您规划、设计和管理任何旅程。要成功设计和管理旅程，请考虑以下提示和最佳实践。

**Topics**
+ [范围和设置](#journeys-best-practices-settings)
+ [客户细分](#journeys-best-practices-segments)
+ [活动](#journeys-best-practices-activities)
+ [电子邮件](#journeys-best-practices-email)
+ [审核并测试](#journeys-best-practices-review-test)
+ [Analytics](#journeys-best-practices-analytics)
+ [生命周期管理](#journeys-best-practices-lifecycle)

## 范围和设置
<a name="journeys-best-practices-settings"></a>

由于旅程可以执行各种不同但相关的任务，因此最好为旅程创建一个明确定义的场景。此外，您应该选择支持您的场景和目标的旅程设置。通过使用旅程设置，您可以建立约束，以确定旅程可以吸引参与者的时间、数量和频率。

定义场景时，请考虑将其范围限制为客户体验的一个较小方面。虽然 Amazon Pinpoint 支持具有大量工作流的大型旅程，但如果您将旅程设计为一系列相关旅程的一部分，您将有更多机会来监控、优化和管理客户体验。

例如，您可以设计一个旅程来重点欢迎新客户并在他们作为客户的前七天内为他们提供推荐的最初步骤。然后，根据每个客户在第一个旅程中的行为，您可以将他们添加到适合其初始参与度的后续旅程中。一个后续旅程可能为第一个旅程中高度参与的客户提供后续步骤。另一个后续旅程可能会向第一个旅程中参与较少的客户推销不同的产品或服务。通过创建一系列较小范围的旅程，您可以在整个客户生命周期内不断优化和管理客户体验。

定义场景后，选择支持场景目标的旅程设置。这些设置定义旅程的任何部分可以吸引参与者的时间、数量和频率。要选择这些设置，请创建或打开旅程。然后从**操作**菜单中选择**设置**，并展开**高级设置**部分。

一些关键目标和相关设置如下：

**存储并使用参与者的本地时区**  
要优化参与者在具有预定开始和结束时间的旅程中的参与度，请将旅程配置为使用每个参与者的本地时区。这有助于确保旅程活动在参与者最有可能参与这些活动的时间进行。  
但请注意，此设置的有用性取决于您是否在参与者的端点定义中存储了本地时区值。如果您使用此设置，而参与者的端点定义未指定时区，则 Amazon Pinpoint 不会将该参与者包含在旅程中。若要避免此问题，请使用 `Demographic.Timezone` 属性来存储参与者的时区信息。这是 Amazon Pinpoint 提供的标准属性。

**解决安静时间冲突**  
如果您为活动配置的发送消息的时间与旅程的安静时间设置冲突，则 Amazon Pinpoint 不会发送该消息。安静时间结束后，就会发送新消息。如果您选择在安静时间结束后继续发送消息，则在安静时间内保留的任何消息也将发送。否则，这些被保留的消息将被丢弃。

**时区估计**  
  
时区估计可帮助您根据 `Endpoint.Location.Country` 并依靠所选择的估计方法（`Endpoint.Address` 和/或 `Endpoint.Location.PostalCode`）来估计端点时区。当配置了*安静时间* 以及当旅程根据本地时区发送消息时，使用端点时区来避免在一天中的不适当时间发送消息。时区估计仅在没有 `Demographic.Timezone` 属性值的端点上执行。  
AWS GovCloud（美国西部）不支持时区估计
如果旅程包含一个具有多个时区的端点：  
+ 当**收件人的本地时区**启用时，旅程将根据端点的*最晚* 时区*开始* 发送消息。
+ 当**收件人的本地时区**启用时，旅程将在所有消息已发送或根据端点的*最早* 时区*停止* 发送消息。
+ 当**安静时间**启用时，在任何时区的安静时间内，旅程都不会向端点发送消息。
只有当旅程中的所有端点都被允许根据所有已配置的旅程发送规则接收消息时，旅程才会发送消息。  
**旅程具有在多个时区的端点并具有*安静时间***  
例如，如果您将旅程的*安静时间*设置在 20:00（晚上 8:00）到 08:00（早上 8:00）之间，并且在 UTC-8 `America/Los_Angeles` 和 UTC-5 `America/New_York` 中有端点，则旅程将在 08:00 `America/Los_Angeles`（11:00 `America/New_York`）开始发送消息，并在 17:00 `America/Los_Angeles`（20:00 `America/New_York`）停止发送消息。

**限制参与者可以接收的消息数量**  
为了帮助确保参与者不会从旅程或项目收到过多消息，请限制在 24 小时内可发送给参与者的消息数量。如果旅程使用活动或其他旅程也使用的客户细分，这尤其有用。您还可以创建并使用明确仅供特定旅程使用的客户细分。

**优化可发送的消息数量**  
如果旅程具有大量参与者，并且发送大量消息，请考虑 Amazon Pinpoint 处理和发送所有这些消息所需的时间量。  
例如，假设您的旅程活动向 1,000,000 个参与者发送消息，而您的 Amazon Pinpoint 账户的最大发送速率为每秒 200 条消息。那么，有些参与者在活动开始大约 80 分钟后才收到消息。如果旅程包括紧接电子邮件活动的等待活动，这尤其相关。如果直到等待活动结束，Amazon Pinpoint 尚未发送完所有消息，则参与者可能被移到等待活动之后的活动，然后才可能收到消息。  
为了减少此风险，请考虑增加旅程每秒可发送的最大消息数量，并可以将其提高到您账户的最大发送速率。同时考虑[提升您账户的发送限额](channels-email-manage-limits.md)。

**限制参与者可以进入旅程的次数**  
根据旅程的性质和设计，限制单个参与者可以进入同一旅程的次数。如果您未设置此限制，则参与者可以进入旅程，完成旅程中的几个活动，到达结束活动，然后重新启动旅程。您可能希望让每个参与者仅启动并完成旅程一次。  
请注意，如果参与者已是旅程中的活跃参与者，则 Amazon Pinpoint 不允许该参与者进入旅程。例如，如果参与者启动旅程而您随后更新了参与者的端点定义，并且您的更新方式会影响到参与者是否包含在某个客户细分中（基于客户细分标准）或包含在该旅程中（基于活动条件），则 Amazon Pinpoint 不会将该参与者添加为新参与者。

**最大限度地提高参与者启动旅程的机会**  
旅程进入活动是旅程中的第一个活动，它决定将新参与者添加到旅程中的频率。由于新客户或现有客户可能随时成为参与者，因此最好将进入活动配置为频繁将新成员添加到客户细分中。您还可以将客户细分配置为基于特定用户属性或事件自动添加新参与者。有关如何以这些方式配置客户细分的示例，请参阅 AWS 消息收发和目标博客上的[在 Amazon Pinpoint 中构建第一个旅程](https://aws.amazon.com/blogs/messaging-and-targeting/building-your-first-journey-in-amazon-pinpoint/)。

## 客户细分
<a name="journeys-best-practices-segments"></a>

客户细分很关键。它们决定谁可以参与整个旅程和特定旅程活动。当您为旅程创建客户细分时，请考虑以下最佳实践：

**创建专用测试客户细分**  
如果您有一组负责测试旅程和消息的常规人员，请创建一个仅包含这些人员的端点的客户细分。然后，您可以将该客户细分用作一致的测试框架，特别是如果您使用 Amazon Pinpoint 提供的旅程测试功能。有关如何构建此客户细分的提示，请参阅[审查和测试旅程](journeys-review-test.md)。

**使用多个客户细分**  
虽然您只能为旅程进入活动选择一个客户细分，但该客户细分可以包括多个较小的客户细分。以后，您可以在旅程中使用多变量拆分活动，以根据客户细分成员资格将参与者划分到单独的组中。这种方法可以帮助您为每个参与者提供更加量身定制的体验。它还可以帮助减少电子邮件活动的处理时间，因为这些活动将向更小、更有针对性的受众发送消息。  
根据参与者明确执行或不执行的操作对参与者进行客户细分也是一个好主意。您可以通过使用拆分活动来完成此操作。例如，您可以使用是/否拆分活动：如果参与者点击消息中的链接，则沿*是* 路径发送参与者；如果参与者没有点击消息中的链接，则沿*否* 路径发送参与者。没有采取操作可以成为通过跟进活动重新吸引参与者的机会。

**不要删除客户细分和端点**  
我们鼓励您保留属于活动旅程的客户细分。如果您删除活动旅程正在使用的客户细分，则该旅程可能会失败并停止运行。如果旅程继续运行，则可能会提前从旅程中删除属于该客户细分的任何参与者。此外，在这些参与者参与的最后一个活动的分析数据中，会将这些参与者报告为“已丢弃”。这会削弱分析数据的用处，因为您将无法区分独立离开旅程的参与者和您移除的参与者。

**利用自定义属性**  
要更轻松地确定旅程参与者并将其添加到客户细分中，请考虑在应用程序创建或更新端点时向端点添加特定于旅程的自定义属性。然后，您可以使用此属性将用户或端点确定为应该参与旅程的人员。

## 活动
<a name="journeys-best-practices-activities"></a>

活动是任何旅程的构建基块。因此，当您为每个活动选择类型和设置以及活动之间的关系时，请考虑以下准则：

**优化进入活动**  
进入活动是旅程中的第一个活动，它决定将新参与者添加到旅程中的频率。您可以根据活动来添加参与者（例如，添加下载特定音乐的用户），也可以从现有客户细分添加参与者。由于新客户或现有客户可能随时成为参与者，因此最好将进入活动配置为频繁更新（将参与者添加到）相关客户细分。通过这样做，可最大限度地提高参与者启动旅程的机会。

**为客户细分和参与者数据的更改做好准备**  
活动对客户细分条件的评估基于客户细分中每个参与者（端点）的最新数据，并且此数据可能会随着时间的推移而更改。例如，参与者在启动活动时最喜欢的食物可能是比萨饼。该参与者随后可以将其偏好更改为热狗。如果发生这种情况，后续活动将根据参与者对热狗（而不是比萨饼）的偏好评估参与者。为这类更改做好准备的一种方法是使用拆分活动来预测更改并沿适当路径发送参与者。  
如果端点是 `ACTIVE`，Amazon Pinpoint 将通过市场活动和旅程发送消息。如果 `ACTIVE` 端点进入旅程并在完成旅程之前变成 `INACTIVE`，Amazon Pinpoint 将继续向该端点发送消息。

**利用*否则* 路径**  
多变量拆分活动可以包含多达四个路径（每个路径都有自己的条件）以及*否则* 路径。*否则*路径适用于不符合其他路径的任何条件的参与者。因此，它提供了一个极好的机会来处理您在设计旅程时可能没有考虑到的意外或异常情况。

**考虑接收事件数据的延迟**  
某些事件数据（如*电子邮件打开*）基于我们从参与者的电子邮件提供商那里收到的信息。一些提供商会立即向我们发送此类信息，而另一些提供商可能不会这么快地向我们发送信息。这些延迟会影响参与者的体验。当 Amazon Pinpoint 将事件作为活动条件进行评估时，如果没有参与者的任何事件数据，它会将参与者移至*否* 路径。为了减少此风险，请在紧接电子邮件活动的另一项活动的评估计划中增加缓冲时间。

**避免连续的电子邮件活动**  
建议您在两个或多个电子邮件活动之间插入等待或其他类型的活动。这有助于解释 Amazon Pinpoint 处理和发送消息所需的时间，以及参与者接收消息的任何延迟。

**使用重新进入间隔**  
设置端点重新进入旅程的时间间隔。通过设置重新进入间隔，您可以隔开用户收到您的消息的时间，这将有助于提高用户参与度，降低您的消息被当作垃圾消息处理的可能性。

## 电子邮件
<a name="journeys-best-practices-email"></a>

除了[发送电子邮件的一般提示和最佳实践](channels-email-best-practices.md)外，请考虑在创建旅程之前执行以下操作：

**创建专用的“发件人”地址**  
考虑对您从旅程发送的所有消息使用专用的电子邮件地址或域。这为参与者从旅程收到的所有消息提供了一致的体验。它还允许每个参与者调整自己的电子邮件应用程序设置，以确保旅程的所有消息都能到达他们的收件箱。此外，如果您订阅了[送达率控制面板](channels-email-deliverability-dashboard.md)，使用专用地址或域可以精简流程，让您更轻松地访问特定旅程的高级分析数据。要了解如何设置用于发送消息的专用地址或域，请参阅[验证电子邮件身份](channels-email-manage-verify.md)。

**验证是否正确设置了电子邮件渠道**  
在发布旅程之前，请确保您的 Amazon Pinpoint 账户具有[电子邮件的生产访问权限](channels-email-setup-production-access.md)。如果没有，则您的账户处于沙盒环境中，这意味着参与者可能不会收到来自旅程的消息。（在沙盒环境中，您只能发送有限数量的消息，并且只能向特定电子邮件地址发送消息。） 此外，请确保您账户的发送限额和发送速率可以支持您计划从旅程发送的消息数量。要查看您的账户的发送限额和速率，您可以使用 Amazon Pinpoint 控制台上的**电子邮件设置**页面。

**设计相关消息模板的集合**  
在规划流程的早期阶段，最好为您希望包括在旅程中的每个电子邮件活动设计并创建消息模板。这样做可以确保所有消息设计一致。这还可以确保每个消息都特定于旅程的相应阶段并针对该阶段进行优化。例如，在欢迎新客户的旅程中，您可能具有三个电子邮件模板。有一个模板包含介绍性信息，另一个模板为点击第一个消息中的链接的用户提供中间信息，第三个模板为未点击第一个消息中的链接的用户提供修订的介绍性信息。

## 审核并测试
<a name="journeys-best-practices-review-test"></a>

Amazon Pinpoint 包括一个审查功能，用于检查旅程中的配置错误并提醒您。它还简化了查找并修复任何错误的过程。要查找存在错误的活动或设置，请点击错误描述。

要修复错误，请按照**审查您的旅程**窗格中提供的建议操作。我们鼓励您在发布旅程之前使用此功能审核并修复错误。作为最佳实践，我们还鼓励您在发布旅程之前多次完成此审核流程。

Amazon Pinpoint 还包括一个简化测试过程的测试功能。完成旅程的审核流程后，您可以使用此功能通过旅程发送一组测试参与者。

为了确保只有测试参与者才能进入旅程，您可以通过此特征来创建并使用专用测试客户细分。要加快测试速度，您可以配置此特征以减少或消除某项活动的等待时间和活动之间的等待时间。我们强烈建议您在发布旅程之前使用此功能测试旅程的所有方面，包括旅程发送的每个消息。

要了解有关审核并测试旅程的更多信息，请参阅[审查和测试旅程](journeys-review-test.md)。

## Analytics
<a name="journeys-best-practices-analytics"></a>

发布旅程后，Amazon Pinpoint 会自动开始收集并聚合适用于整个旅程和各个旅程活动的多种标准指标的分析数据。我们强烈建议您定期并频繁地查看这些指标。

此外，这些指标提供了有关要解决的问题的关键见解，例如在 Amazon Pinpoint 尝试评估或执行活动时可能发生的失败和错误。总体而言，这些指标可以帮助您确定旅程中什么运行良好或不好，从而帮助您以后设计更有效的旅程。有关可用指标以及如何查看这些指标的详细信息，请参阅[查看旅程指标](journeys-metrics.md)。

Amazon Pinpoint 可以将您的分析数据自动存储 90 天。根据旅程的预计持续时间或您组织的长期存储和报告需求，您可能希望将基础事件数据存储 90 天以上。为此，建议您将 Amazon Pinpoint 配置为将数据导出到 Amazon Kinesis Data Streams 或 Amazon Data Firehose。如果将数据导出到 Amazon Kinesis，您还可以使用其他服务和应用程序执行更深入的分析或报告。有关更多信息，请参阅 [使用 Amazon Pinpoint 流式传输事件](analytics-streaming.md)。

## 生命周期管理
<a name="journeys-best-practices-lifecycle"></a>

在旅程通过开发和执行的各种阶段时，请牢记以下针对旅程生命周期的每个阶段的事项。另请注意，如果出现任何问题，您可以随时停止（取消）旅程。


| 阶段 | 描述 | 
| --- | --- | 
| 草稿 |  正在开发且尚未发布旅程。 在此阶段中，您可以更改旅程的任何方面，包括旅程的客户细分、活动和设置。您还可以利用 Amazon Pinpoint 功能来审查并测试旅程。您可以根据需要多次重复审核和测试流程。  | 
| 活动 |  已开发、审核、测试并发布历程。根据旅程的计划，旅程可能当前正在运行或计划稍后开始运行。 在此阶段中，您无法在旅程中添加、更改或删除活动。  | 
| Closed |  已开发、审核、测试并发布历程。旅程已开始运行，但对新参与者关闭。 根据旅程的计划和设置，它可能也已超过其预定结束时间。或者，旅程可能已超过其预定开始时间，并且它的进入活动设置为绝不添加新的客户细分成员。 在此阶段中，您无法向旅程添加新参与者，并且现有参与者无法首次进入旅程。但是，任何当前正在等待启动活动的现有参与者都可以恢复旅程。  | 
| Stopped（已停止） |  开发、审核、测试并发布了旅程，然后停止了旅程。停止旅程后，您无法重新启动旅程。您需要重新创建旅程。 如果您停止旅程，Amazon Pinpoint 会继续执行当前正在进行的活动，直到这些活动完成。Amazon Pinpoint 还会继续收集和汇总这些活动的分析数据，直到活动完成。它也会对您停止旅程时完成的任何活动执行此操作。 在此阶段中，您无法在旅程中添加、更改或删除任何活动。此外，Amazon Pinpoint 将停止评估旅程，并且不执行任何尚未启动的活动。  | 

# 旅程故障排除
<a name="journeys-troubleshooting"></a>

确认日志记录开启，以帮助您确定失败原因。有关日志记录的更多信息，请参阅[监控和日志记录](troubleshooting.md#troubleshooting-logging)以及[旅程事件](https://docs.aws.amazon.com/pinpoint/latest/developerguide/event-streams-data-journey.html)。

## 使用 PutEvents 请求时不会触发基于事件的旅程
<a name="troubleshooting-journey-event"></a>

****问题和解决方案****
+ 确认配置的**旅程限制**未超过以下限额：
  + **每个端点的每日最大消息数**
  + **一个端点可以从旅程中接收的最大消息数**
  +  **每秒的旅程消息最大数量**
  + **每个端点的最大进入次数** 
+ 确保事件触发的旅程的激活数量没有超过预置的阈值。有关更多信息，请参阅 [ 配额](https://docs.aws.amazon.com/pinpoint/latest/developerguide/quotas.html)。
+ 确认 [PutEvents](https://docs.aws.amazon.com/pinpoint/latest/apireference/apps-application-id-events.html)API 请求的所有组成部分都已完成，包括[事件组件](https://docs.aws.amazon.com/pinpoint/latest/apireference/apps-application-id-events.html#apps-application-id-events-model-event)和[端点组件](https://docs.aws.amazon.com/pinpoint/latest/apireference/apps-application-id-events.html#apps-application-id-events-model-publicendpoint)。
+ 验证特定旅程是否与 PutEvent 请求中的旅程位于同一个应用程序中。
+ 确认配置了正确的事件以激活您的旅程。您可以在[旅程进入条件](https://docs.aws.amazon.com/pinpoint/latest/userguide/journeys-entry-activity.html#journeys-entry-activity-event-triggered)中确认此配置。
+ 事件驱动的旅程不利于联络中心使用案例，因为拨号操作的期限有限，仅为 3 分钟。
+ 您可以使用以下示例请求来激活旅程，将 “TestEvent” 作为输入条件。

  ```
  aws pinpoint put-events --application-id 7149cbb8XXXXXXXX --events-request file://PutEvents.json
  file://PutEvents.json 
  {
      "BatchItem": {
          "ExampleEndpointID": {
              "Endpoint": {
                  "User": {
                      "UserId": "10107"
                  }, 
                  "ChannelType": "EMAIL",
                  "Address": "johndoe@example.com"
                     
              },
              "Events": {
                  "JourneyEvent": {
                      "EventType": "TestEvent",
                      "Timestamp": "2019-02-10T19:48:57+00:00"
                  }
              }
          }
      }
  }
  ```

## 在“是/否”拆分活动期间，所有旅程参与者均转向“否”分支
<a name="troubleshooting-journey-split"></a>

****问题和解决方案****
+ 如果未配置等待时间，就会发生此错误。系统会立即评估发送事件，导致将所有参与者移至“否”分支。
  + 要解决此问题，确认在条件评估之后配置了一定的等待时间。
+ 基于事件标准和后续自定义 AWS Lambda 活动的“是/否”拆分会隐含等待 15 分钟，以便积累和处理事件结果。
+ 基于事件标准和后续渠道活动（短信、电子邮件、推送通知）的“是/否”拆分会等待 1 小时，以便积累和处理渠道消息传输的传输事件状态。
+ 拆分仅支持特定于频道投 Yes/No 放状态的标准事件。