跳转到主要内容

概述

OneSignal + Microsoft Fabric 集成可以自动将您的 Fabric 数据湖库或数据仓库中的自定义事件同步到 OneSignal,以基于用户行为触发自动化消息活动和 Journey。 Microsoft Fabric 是一个统一的分析平台,将数据工程、数据科学、实时分析和商业智能集成在一个环境中。

要求

  • 访问自定义事件(目前处于测试阶段)
  • 升级账户计划(免费应用不可用)。

Microsoft Fabric

  • 具有工作区访问权限的 Microsoft Fabric 容量
  • 具有适当权限的 服务主体
  • 包含事件数据的 SQL 端点(数据仓库或数据湖库)
  • 在租户设置中启用的 外部 API 访问

设置

1

在 Azure 中创建服务主体

为 OneSignal 创建新的服务主体以访问您的 Fabric 资源:
  1. 登录 Azure 门户
  2. 导航到 Microsoft Entra ID > 应用注册
  3. 点击 + 新注册
  4. 输入名称:“OneSignal Fabric Integration”
  5. 选择仅此组织目录中的账户
  6. 点击注册
  7. 记下应用程序(客户端)ID目录(租户)ID
  8. 证书和密钥下,创建新的客户端密钥
  9. 记下客户端密钥值
2

配置 Fabric 租户设置

为服务主体启用外部访问:
  1. 在 Microsoft Fabric 中,点击设置 > 管理门户
  2. 转到租户设置
  3. 开发者设置下,启用服务主体可以使用 Fabric API
  4. OneLake 设置下,启用用户可以使用 Fabric 外部的应用访问存储在 OneLake 中的数据
3

授予工作区访问权限

将服务主体添加到您的 Fabric 工作区:
  1. 导航到您的工作区(如果使用“我的工作区”,请创建共享工作区)
  2. 点击管理访问 > + 添加人员或组
  3. 选择您的服务主体
  4. 将角色设置为贡献者
4

获取 SQL 端点

获取您数据源的 SQL 连接字符串:
  1. 在您的工作区中,将鼠标悬停在您的数据仓库/湖仓上
  2. 点击 > 设置
  3. 复制 SQL 连接字符串(这是您的主机名)
5

连接到 OneSignal

在 OneSignal 中,前往 数据 > 集成,然后点击 添加集成选择 Microsoft Fabric 并提供:
  • 主机名: 步骤 4 中的 SQL 端点
  • 数据库/目录: 您的湖仓或数据仓库名称
  • 租户 ID: 步骤 1 中的目录 ID
  • 客户端 ID: 步骤 1 中的应用程序 ID
  • 客户端密钥: 步骤 1 中的密钥值

事件数据映射

将您的 映射到 OneSignal 的自定义事件格式:
OneSignal 字段描述必需
nameevent_name事件标识符
external_iduser_id用户标识符
timestampevent_timestamp事件发生时间
propertiesevent_data

示例事件表模式

-- Example Fabric table structure
CREATE TABLE user_events (
    event_name STRING,
    user_id STRING,
    event_time TIMESTAMP,
    properties JSON,
    session_id STRING,
    device_type STRING
);

处理模式

SQL 查询模式

编写自定义 SQL 查询以在同步之前转换您的 Fabric 数据:
SELECT
    event_name,
    user_id,
    event_time,
    TO_JSON(STRUCT(
        session_id,
        device_type,
        product_id
    )) as properties
FROM user_events
WHERE event_time >= CURRENT_DATE - INTERVAL 7 DAYS

表模式

直接从您的 Fabric 工作区同步整个表或视图。OneSignal 将自动将列映射到事件字段。

限制

  • 需要 Fabric 容量(试用版不可用)
  • SQL 端点必须可供外部服务访问
  • 大型结果集可能影响同步性能

常见问题

如何优化查询性能?

在您的 Fabric 表中使用分区和索引。考虑为经常访问的事件数据创建物化视图。

我可以从湖仓和数据仓库同步吗?

是的,OneSignal 支持任何公开 SQL 端点的 Fabric 资源,包括湖仓、数据仓库和 SQL 分析端点。
I