来自 Amazon Pinpoint 的活动事件数据流 - Amazon Pinpoint

来自 Amazon Pinpoint 的活动事件数据流

如果您使用 Amazon Pinpoint 通过一个渠道发送活动,Amazon Pinpoint 可以流式传输有关这些活动的事件数据。设置事件流式传输后,Amazon Pinpoint 会从您在设置期间指定的目的地中,为您从活动发送的电子邮件或短信消息检索应用程序的事件数据供您查看。有关 Amazon Pinpoint 为电子邮件和短信消息流式传输的数据的详细信息,请参阅来自 Amazon Pinpoint 的电子邮件事件数据流来自 Amazon Pinpoint 的短信事件数据流。有关如何设置事件流式传输的信息,请参阅 设置 Amazon Pinpoint 以通过 Amazon Kinesis 或 Amazon Data Firehose 流式传输应用程序事件数据

活动事件示例

活动事件的 JSON 对象包含以下示例显示的数据。

{ "event_type": "_campaign.send", "event_timestamp": 1562109497426, "arrival_timestamp": 1562109497494, "event_version": "3.1", "application": { "app_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6", "sdk": {} }, "client": { "client_id": "d8dcf7c5-e81a-48ae-8313-f540cexample" }, "device": { "platform": {} }, "session": {}, "attributes": { "treatment_id": "0", "campaign_activity_id": "5473285727f04865bc673e527example", "delivery_type": "GCM", "campaign_id": "4f8d6097c2e8400fa3081d875example", "campaign_send_status": "SUCCESS" }, "client_context": { "custom": { "endpoint": "{\"ChannelType\":\"GCM\",\"EndpointStatus\":\"ACTIVE\", ↳\"OptOut\":\"NONE\",\"RequestId\":\"ec229696-9d1e-11e9-8bf1-85d0aexample\", ↳\"EffectiveDate\":\"2019-07-02T23:12:54.836Z\",\"User\":{}}" } }, "awsAccountId": "123456789012" }

活动事件属性

此部分定义活动事件流中包含的属性。

属性 描述
event_type

事件类型。可能的值有:

  • _campaign.send – Amazon Pinpoint 执行了该活动。

  • _campaign.opened_notification – 对于推送通知活动,此事件类型指示收件人点击并打开了通知。

  • _campaign.received_foreground – 对于推送通知活动,此事件类型指示收件人以前台通知方式接收了消息。

  • _campaign.received_background – 对于推送通知活动,此事件类型指示收件人以后台通知方式接收了消息。

    注意

    _campaign.opened_notification_campaign.received_foreground_campaign.received_background 事件仅当您使用 AWS Amplify 时才返回。有关将您的应用程序与 AWS Amplify 集成的更多信息,请参阅 使用 AWS Amplify 将您的前端应用程序连接到 Amazon Pinpoint

event_timestamp

报告事件的时间,显示为以毫秒为单位的 Unix 时间。

arrival_timestamp

Amazon Pinpoint 收到事件的时间,显示为以毫秒为单位的 Unix 时间。

event_version

事件 JSON 架构的版本。

提示

在事件处理应用程序中检查此版本,以便知道何时更新应用程序以响应架构更新。

application

与事件关联的 Amazon Pinpoint 项目的相关信息。有关更多信息,请参阅应用程序表。

client

与事件关联的端点的相关信息。有关更多信息,请参阅客户端 表。

device

报告事件的设备的相关信息。对于活动和事务性消息,此对象为空。

session

有关生成事件的会话的信息。对于活动,此对象为空。

attributes

与事件关联的属性。对于您的应用程序之一报告的事件,此对象包含由应用程序定义的自定义属性。对于在您发送活动时创建的事件,此对象包含与活动关联的属性。对于在您发送事务性电子邮件时生成的事件,此对象包含与电子邮件本身相关的信息。

有关更多信息,请参阅属性表。

client_context 包含一个 custom 对象,其中包含一个 endpoint 属性。endpoint 属性包含将活动发送到的端点的端点记录内容。
awsAccountId

已用于发送电子邮件的 AWS 账户的 ID。

应用程序

包括与事件关联的 Amazon Pinpoint 项目的相关信息。

属性 描述
app_id

报告事件的 Amazon Pinpoint 项目的唯一 ID。

sdk

用于报告该事件的开发工具包。

Attributes

包含有关生成事件的活动的信息。

属性 描述
treatment_id

如果使用 A/B 测试活动发送了消息,则此值表示消息的处理编号。对于标准活动,此值为 0

campaign_activity_id 发生事件时 Amazon Pinpoint 生成的唯一 ID。
delivery_type

活动的交付方式。不要将此属性与 client_contextendpoint 属性下指定的 ChannelType 字段混淆。该 ChannelType 字段通常基于消息发送到的端点。

对于仅支持一种端点类型的渠道,delivery_typeChannelType 字段的值相同。例如,对于电子邮件渠道,delivery_typeChannelType 字段的值与 EMAIL 相同。

但是,对于支持不同端点类型的渠道(例如自定义渠道),情况并不总是如此。您可以为不同的端点使用自定义渠道,例如 EMAIL、SMS、CUSTOM 等。在这种情况下,delivery_type 标识自定义投放事件 CUSTOM,ChannelType 指定活动发送到的端点类型,例如 EMAIL、SMS、CUSTOM 等。有关创建自定义渠道的更多信息,请参阅使用 Webhook 或 Lambda 函数在 Amazon Pinpoint 中创建自定义渠道

可能的值有:

  • EMAIL

  • SMS

  • ADM

  • APNS

  • APNS_SANDBOX

  • APNS_VOIP

  • APNS_VOIP_SANDBOX

  • VOICE

  • GCM

  • BAIDU

  • PUSH

  • CUSTOM

campaign_id

发送消息的活动的唯一 ID。

campaign_send_status 指示目标端点的活动的状态。可能的值包括:
  • SUCCESS – 活动已成功发送到端点。

  • FAILURE – 活动未发送到端点。

  • DAILY_CAP – 没有将活动发送到端点,因为已将最大数量的每日消息发送到端点。

  • EXPIRED – 没有将活动发送到端点,因为发送该活动将会超出活动的最大持续时间或发送速率设置。

  • QUIET_TIME – 由于安静时间限制,没有将活动发送到端点。

  • HOLDOUT – 没有将活动发送到端点,因为端点是保留组的成员。

  • DUPLICATE_ADDRESS – 分段中有重复的端点地址。该活动已发送到端点地址一次。

  • QUIET_TIME – 由于安静时间限制,没有将活动发送到端点。

  • CAMPAIGN_CAP – 没有将活动发送到端点,因为已从该活动将最大数量的消息发送到端点。

  • FAILURE_PERMANENT – 发送到端点时发生永久故障。

  • TRANSIENT_FAILURE – 发送到端点时发生暂时性故障。

  • THROTTLED – 发送已被限制。

  • UNKNOWN – 未知故障。

  • HOOK_FAILURE – 活动挂钩失败。

  • CUSTOM_DELIVERY_FAILURE – 自定义交付失败。

  • RECOMMENDATION_FAILURE – 推荐失败。

  • UNSUPPORTED_CHANNEL – 不支持渠道。

客户端

包括活动所定向到的端点的相关信息。

属性 描述
client_id 活动发送到的端点的 ID。