跳转到主要内容

OneSignal Segment 集成概述

概述

OneSignal + Segment 集成允许您:
  • 将用户特征和事件从 Segment 发送到 OneSignal,以丰富用户资料、增强细分和触发消息。
  • 将消息投递和参与事件从 OneSignal 发送到 Segment,用于集中分析和数据仓储。
这种双向设置支持所有主要的 OneSignal 渠道:推送、应用内、邮件和短信。

要求


设置

1. 设置 OneSignal

使用现有的应用或在 OneSignal 仪表板中创建一个新的应用。然后设置您首选的渠道:

2. 将 Segment 连接到 OneSignal

在 OneSignal 仪表板中,转到数据 > 集成并在 Segment.com 卡片中点击激活。然后继续进行设置选项。

数据输入

对 OneSignal 的“数据输入”允许您从 Segment.com 账户向 OneSignal 发送 OneSignal 细分标签自定义事件。在 OneSignal 仪表板中的 Segment.com 设置页面的数据输入部分下点击认证
自定义事件目前处于测试版。 To request access, contact support@onesignal.com with:
  • Your company name
  • Your OneSignal Organization ID
  • The App ID(s) you want to enable
一旦启用追踪自定义事件,Segment.com 集成将同时发送数据标签和事件,因此您无需更新任何引用数据标签的现有模板。

数据输入认证设置

点击认证后,将打开 Segment.com 网页,提示您登录 Segment.com 账户。然后将提示您从 Segment.com 账户配置新的数据目标。

Segment 设置配置屏幕

数据输出

启用对 Segment.com 的“数据输出”会将生成的消息事件同步回您的 Segment.com 账户。这些消息事件是通过在 OneSignal 平台上向用户发送消息而生成的。关于可以生成的事件类型以及它们带有的属性的更多详情,可以在下面找到。 首先,您需要从 Segment.com 账户中将 OneSignal 添加为源。您可以通过在 Segment Connections Catalogue 中导航到 OneSignal Source listing 来完成此操作。 从那里,您可以在 OneSignal 仪表板上添加您的 Segment.com API 令牌。请在 OneSignal 仪表板中导航到数据 > 集成 > Segment 来添加 Segment API 密钥。

数据输出 API 密钥配置

设置 API 密钥后,请确保检查您在 Segment.com 中的数据政策设置,以确定是否需要将事件发送到 Segment 的 EU 居留端点。 完成所有这些设置后,您可以根据您在 OneSignal 中使用的渠道选择要同步到 Segment 账户的事件。

3. 在 Segment 中添加 OneSignal 目标

Segment.com 仪表板 > 目标中,您应该看到 OneSignal。如果没有,请将 OneSignal 添加为新目标。 启用 OneSignal 目标,您应该已经看到您的 OneSignal API 密钥和应用 ID

Segment 中的 OneSignal 目标配置

如果未设置 API 密钥和应用 ID,请导航到 OneSignal 仪表板,选择应用,并转到设置 > 密钥和 ID。将“应用 ID”和“API 密钥”复制粘贴到 Segment.com。

多个 Segment.com 源

如果您有多个源,您可以利用 Segment 的 Personas > Spaces 功能将多个源绑定到一个目标。

4. 从 Segment 向 OneSignal 发送数据

OneSignal 存储渠道级别的记录:推送/IAM、邮件和短信。这些记录必须已在 OneSignal 中创建,您还必须在 OneSignal 中设置外部 ID别名,以匹配 Segment.com 发送的 userID 字段。
没有 Segment 用户 ID <—> OneSignal 外部 ID 映射的记录将被丢弃。

用户特征或属性

您可以在 Segment 中聚合每个客户接触点的数据,然后实时将这些用户属性作为数据标签发送到 OneSignal。 注意:OneSignal 不能接受嵌套对象或数组作为用户属性。 Identify - 使用 Segment 的 Identify 调用发送的用户特征或属性在 OneSignal 中存储为数据标签。例如:

用户 identify 调用示例

Track - 对于使用 Segment 的 Track 调用发送的事件和相关属性,OneSignal 将将所有事件属性存储为数据标签,但在存储标签时丢弃**事件名称。如果您希望在数据标签中保留事件名称,您可以在将属性发送到 OneSignal 之前将事件名称附加到属性中。例如:
let timestampInSeconds = Int(NSDate().timeIntervalSince1970).toString()//convert to string since Segment adds decimals to end
//name will be dropped and only properties will be sent to OneSignal as tag "last opened: timestampInSeconds"
analytics.track(
  name: "iOS App Last Opened",
  properties: ["last opened": timestampInSeconds]
)

Track 调用属性示例

用户特征和属性界面

Personas 受众和计算特征

Persona 受众自动作为 OneSignal 中的细分显示。 计算特征作为 OneSignal 用户记录上的数据标签进行更新。 受众

Persona 受众和计算特征界面

使用 Segment 的 Track 调用发送的受众将使用受众名称创建 OneSignal 细分。 使用 Segment 的 Identify 调用发送的受众将:
  • 使用受众名称创建 OneSignal 细分
  • 在所有匹配的用户记录上添加数据标签(如果 Identify 调用中有额外属性)。

从 Segment 在 OneSignal 中创建的细分

当用户进入或退出受众时,Identify 和 Track 调用会自动发送到 OneSignal。 计算特征 Personas 计算特征作为数据标签存储在 OneSignal 用户记录上,无论是作为 Identify 调用还是 Track 调用传递给 OneSignal。然后您可以使用这些数据标签手动创建 OneSignal 细分并自动化您的消息工作流。

消息事件

事件类型

这些是 OneSignal 发送到 Segment 的消息事件类型
MessageEvent KindEvent Description
Push Sent推送通知成功发送
Push Received推送通知成功接收
Push Clicked在设备上点击推送通知
In-App Message Displayed应用内消息在设备上成功显示
In-App Message Clicked在设备上点击应用内消息
In-App Message Page Displayed显示应用内消息页面
Email Sent邮件成功发送
Email Opened收件人打开邮件
Email Unsubscribed收件人取消订阅邮件
Email Received收件人接收邮件
Email Reported As Spam收件人举报邮件为垃圾邮件
Email Hardbounced由于永久性错误邮件被返回给发送者
Email Failed无法将邮件投递到收件人的收件箱
SMS Sent短信发送给收件人
SMS Delivered短信成功投递
SMS Failed短信发送失败

事件属性

这些是从 OneSignal 发送到 Segment.com 的事件中存在的属性
PROPERTY NAMEDESCRIPTION
userId与消息关联的 external_id
anonymousIdsubscription_id
messageId离散消息的标识符
campaign_idmessageId 相同的值
message_name消息名称
message_title消息标题
message_contents消息内容
subscription_type消息通过的渠道
template_id使用的消息模板
subscription_id.OneSignal 设置的设备/邮件/短信标识符
device_type接收消息的设备类型
language设备的两个字符语言代码
message_type发送的消息类型:推送、应用内、邮件、短信

常见问题

我们如何传递订阅事件?

订阅事件目前不会自动发送。这可以通过 OneSignal SDK 订阅观察者方法来完成。有关更多详情,请参阅订阅跟踪

在 OneSignal 中管理 Segment 的保留和自定义用户属性

  • 所有 Segment 的用户特征都作为数据标签发送到 OneSignal。OneSignal 上允许的数据标签数量取决于您的 OneSignal 价格计划。超过授权数量的标签将被丢弃。
  • OneSignal 始终为匹配的用户更新 firstName 和 lastName 属性。所有其他特征按先到先得的原则添加/更新。firstNamelastName 标签存储为 “first_name” 和 “last_name”。
  • 使用空白/空值发送到 OneSignal 的用户属性从 OneSignal 用户记录中被删除。这样做是为了确保您不超过数据标签限制。

I