跳转到主要内容

OneSignal + Amplitude 集成概览

将 OneSignal 与 Amplitude 集成,发送详细的消息事件、自定义事件,并导入行为用户群体。这使您能够基于用户行为进行实时定向,以改善入门、重新参与和转化。

主要优势

  • 向 Amplitude 发送消息事件:跟踪推送、应用内、电子邮件和短信的交付、点击、失败等。
  • 向 OneSignal 发送自定义事件:从 Amplitude 向 OneSignal 发送您的自定义事件。
  • 从 Amplitude 导入群体:自动将基于行为的群体同步到 OneSignal 作为定向的筛选器。
这是一个应用级集成,使您能够对链接的应用和事件进行粒度控制。

要求

此集成不会创建用户。它将 Amplitude 中的用户映射到 OneSignal 中的用户。

设置

将 Amplitude 添加到 OneSignal

在 OneSignal 中,导航到数据 > 集成 > Amplitude 并点击激活

OneSignal 中的 Amplitude 集成卡片

在 Amplitude 中:
  1. 找到您项目的 API 密钥,然后复制粘贴到 OneSignal 中。
  2. 如果使用 Amplitude 的欧盟服务器,请勾选仅向 Amplitude 的欧盟居留端点发送事件。您可以通过 Amplitude URL 验证这一点。如果您看到 eu.amplitude.com,则您正在使用 Amplitude 的欧盟服务器。

选择消息事件

选择要发送到 Amplitude 的 OneSignal 消息事件。完成后,点击激活

OneSignal 中的 Amplitude 设置

将 OneSignal 添加到 Amplitude

在您的 Amplitude 目标中,搜索 OneSignal。

在 Amplitude 中添加 OneSignal 目标

选项
  • 群体:从 Amplitude 向 OneSignal 同步群体。
  • 事件用户属性:从 Amplitude 向 OneSignal 发送自定义事件。
一旦您选择其中一个或两个选项,系统将提示您输入以下信息:
  • 名称:您在 Amplitude 中标识目标的方式。设置为易于识别的名称,如 OneSignal - APP_NAME,其中 APP_NAME 是 OneSignal 中应用的名称。
  • 应用 ID:OneSignal 应用 ID。可在 OneSignal 设置 > 密钥和 ID 中获取
  • API 密钥:OneSignal API 密钥。可在 OneSignal 设置 > 密钥和 ID 中获取

发送事件

测试功能。您必须在 OneSignal 中启用自定义事件功能才能将自定义事件发送到 OneSignal。
如果您希望将自定义事件从 Amplitude 发送到 OneSignal,请启用此选项。 选择您希望发送到 OneSignal 的 Amplitude 事件。

要发送到 OneSignal 的 Amplitude 事件

用户 ID 映射

此步骤对于群体同步和事件跟踪正常工作至关重要。
要匹配两个系统中的用户:
  • 使用共享标识符:OneSignal 中的**外部 ID** 必须与选择的 Amplitude 用户 ID 属性(如 user_id)匹配。
  • 验证所选用户属性在您的 Amplitude 和 OneSignal 用户配置文件中存在。

附加属性

您可以向 OneSignal 发送附加属性,这些属性将包含在自定义事件中。 这对于在 OneSignal 中处理事件很有用,_仅当_它们包含特定属性时。
完成后点击保存现在您应该能够将群体和自定义事件从 Amplitude 导出到 OneSignal,并从 OneSignal 收集消息事件到 Amplitude。

测试自定义事件

  1. 在 Amplitude > OneSignal 事件目标中,点击“测试连接”按钮。

Amplitude > OneSignal 事件目标

  1. 确保负载中的 "user_id" 设置为 OneSignal 应用中现有用户的外部 ID。
  2. 点击发送测试事件按钮
  3. 响应框应保持为空,您应该看到一条消息,内容为 "OneSignal 已成功接收测试事件。"

响应示例

如果您遇到错误,请确保您的 OneSignal 应用 ID 和 REST API 密钥已正确添加到 Amplitude,并且应用已配置为自定义事件
  1. 在 OneSignal 中,导航到数据 > 自定义事件,您应该在列表中看到测试事件。

OneSignal 中的自定义事件

如果您没有看到事件,请确保 "user_id" 设置为 OneSignal 应用中现有用户的外部 ID。
自定义事件现在正在从 Amplitude 发送到 OneSignal!了解更多关于如何使用自定义事件的信息。如果您对这个早期访问集成有任何问题或反馈,您可以联系 integrations@onesignal.com

将 Amplitude 群体导出到 OneSignal

您可以将 Amplitude 群体中的用户同步到 OneSignal 中的用户,前提是它们具有上一步中讨论的匹配的用户 ID/外部 ID 属性。 从 Amplitude 导出用户数据不会在 OneSignal 中创建用户,用户必须已经存在并具有匹配的外部 ID。 要将用户从 Amplitude 导出到 OneSignal:
  1. 在 Amplitude 中,创建一个群体。请参阅 Amplitude 的群体文档
  2. 点击同步并选择 OneSignal 作为目标。
  3. 选择同步频率。

图片显示如何为您的群体设置与 OneSignal 的同步

OneSignal 细分创建

  • 同步的群体在 OneSignal 中显示为 Amplitude 细分筛选器
  • 如果满足以下条件,系统将自动为该群体创建一个细分:
    • Amplitude 群体中的用户在 OneSignal 中也存在并具有匹配的外部 ID。
    • 您不能超过 OneSignal 中的细分限制。
如果满足这两个条件,OneSignal 将自动使用 Amplitude 群体筛选器和群体名称生成一个细分。

如何从 Amplitude 群体创建细分


在 Amplitude 中跟踪消息事件

连接后,OneSignal 将实时向 Amplitude 发送消息事件。

消息事件

以下是 OneSignal 发送到 Amplitude 的消息事件类型。您可以在 OneSignal 集成设置中选择要发送到 Amplitude 项目的事件。
Message Event Kind (OneSignal)Message Event Name (Amplitude)Event Description
Push Sent[OneSignal] Push Sent推送通知成功发送。
Push Received[OneSignal] Push Confirmed delivery推送通知成功接收
Push Clicked[OneSignal] Push Clicked推送通知在设备上被触摸
Push Failed[OneSignal] Push Failed推送发送失败。请检查 OneSignal 中的失败消息报告。
Push Unsubscribed[OneSignal] Push Unsubscribed订阅 取消了推送订阅。
In-App Impression[OneSignal] IAM Displayed应用内消息成功在设备上显示
In-App Clicked[OneSignal] IAM Clicked应用内消息在设备上被点击
In-App Page Displayed[OneSignal] IAM Page Displayed应用内消息页面已显示
Email Sent[OneSignal] Email Sent电子邮件成功发送
Email Received[OneSignal] Email Confirmed delivery收件人收到电子邮件
Email Opened[OneSignal] Email Opened收件人打开电子邮件
Email Link Clicked[OneSignal] Email Clicked电子邮件链接被点击
Email Unsubscribed[OneSignal] Email Unsubscribed收件人取消订阅电子邮件
Email Reported As Spam[OneSignal] Email Reported As SPAM收件人将电子邮件报告为垃圾邮件
Email Bounced[OneSignal] Email Hard Bounced由于永久错误,电子邮件退回给发件人
Email Failed[OneSignal] Email Failed delivery无法将电子邮件送达到收件人的收件箱
Email Suppressed[OneSignal] Email Not delivering to suppressed email address电子邮件未送达,因为收件人已屏蔽发送该邮件的邮箱地址
SMS Sent[OneSignal] SMS Sent短信发送给收件人
SMS Failed[OneSignal] SMS Failed delivery短信发送失败
SMS Delivered[OneSignal] SMS Confirmed deliveery短信成功送达
SMS Undelivered[OneSignal] SMS Undelivered无法发送短信。

事件属性

以下是从 OneSignal 发送到 Amplitude 的任何事件中存在的属性
PROPERTY NAMEDESCRIPTION
Distinct IDThe external_id associated with the message
Message ID单个消息的标识符
Message Name消息名称
Message Title消息标题
Message Contents消息内容
message_type发送的消息类型:推送、应用内、电子邮件、短信
template_id使用的消息模板(API 和旅程消息)
subscription_idOneSignal 设置的设备/电子邮件/短信标识符
device_type接收消息的设备类型
language设备的两字符语言代码
sourceonesignal (is indicated as the source for all events)

常见问题

为什么我的群体和细分数量不匹配?

  1. 缺失或不匹配的外部 ID 只有具有匹配的 OneSignal 外部 ID 和 Amplitude 用户 ID 的用户才会被包括。此集成不会创建用户或订阅。
  2. 未订阅用户 OneSignal 细分只显示已订阅订阅的数量。未订阅的订阅可用于旅程或应用内消息。
例如,如果 Amplitude 群体有 10 个用户,但 OneSignal 细分显示 8 个订阅,缺失的 2 个用户可能:
  • 在 OneSignal 中不存在或具有错误的外部 ID。
  • 具有未订阅的订阅。
要验证,请检查 OneSignal 中的 受众 > 用户 选项卡,查看用户是否存在并具有活跃的订阅。

未订阅的用户会从 Amplitude 同步吗?

是的,但目前它们被排除在 OneSignal 细分数量之外。如果他们具有其他订阅或其订阅类型支持,您仍然可以通过旅程或应用内消息向他们发送消息。

为什么交付数据不匹配?

单个用户可能具有多个订阅(推送设备、电子邮件地址、电话号码)。每个订阅都会生成自己的交付事件。例如:
  • 1 个用户 = 2 个 Android + 1 个 iOS + 2 个 Web = 5 个推送订阅
  • 1 条推送消息 = 最多 5 个发送/接收/点击事件
使用事件属性中的 subscription_id 来追踪确切的来源。 要排除缺失事件的故障:
  • 确保在识别用户时调用 OneSignal.login 来设置外部 ID。
  • 验证 OneSignal.logout 未删除外部 ID。
  • 检查可能更改外部 ID 的 API 请求或 CSV 上传。

我们如何发送用户/订阅事件?

用户和订阅级别的事件(例如,授予权限、用户登录/注销)不会自动发送。 OneSignal SDK 具有事件监听器,可用于追踪这些事件以便您发送到 Amplitude:

为什么 OneSignal 订阅 ID 作为 device_id 添加到 Amplitude?

Amplitude 期望使用 device_id 进行去重。OneSignal 使用 subscription_id 来实现此功能,它会自动映射到 device_id 有关更多信息,请参阅 Amplitude 的文档
I