概览
OneSignal + SQL Server 集成能够将您的 Microsoft SQL Server 数据库中的自定义事件同步到 OneSignal,以基于用户行为触发自动化消息活动和 Journey。 SQL Server 是微软的关系数据库管理系统,专为企业应用程序和数据仓库而设计。要求
- 访问自定义事件(目前处于测试阶段)
- 升级账户计划(免费应用不可用)。
SQL Server
- 具有网络访问权限的 SQL Server 实例
- 具有适当权限的数据库用户
- 包含结构化行为数据的事件表
- 从 OneSignal 到您的 SQL Server 实例的网络连接
设置
1
为 OneSignal 创建专用用户
创建具有强大、唯一密码的专用用户账户:
所有 SQL Server 命令将在运行脚本时指定的数据库内运行。
2
授予读取权限
为您的事件数据提供只读访问权限:
将
<your-schema>
替换为包含事件数据的实际架构名称。对于您希望 OneSignal 访问的每个架构,重复此命令。3
配置高级同步引擎(可选)
为提高性能,为 OneSignal 的同步状态创建记账架构:
如果使用基本同步引擎或只读模式,请跳过此步骤。
4
连接到 OneSignal
在 OneSignal 中,前往 数据 > 集成,然后点击 添加集成。选择 SQL Server 并提供以下连接详细信息:
- **主机:**您的 SQL Server 实例主机名或 IP 地址
- **端口:**1433(默认)或您的自定义端口
- **数据库:**您的数据库名称
- 用户名:
CENSUS
- **密码:**步骤 1 中的密码
事件数据映射
将您的 映射到 OneSignal 的自定义事件格式:OneSignal 字段 | 描述 | 必需 | |
---|---|---|---|
name | event_name | 事件标识符 | 是 |
external_id | user_id | 用户标识符 | 是 |
timestamp | event_timestamp | 事件发生时间 | 否 |
properties | event_data | 否 |
示例事件表架构
SQL 查询模式
编写自定义 SQL 查询来转换您的事件数据:高级网络配置
OneSignal 可以成功连接到使用高级网络控制的 SQL Server 实例,包括地区限制、IP 地址允许列表或 SSH 隧道。 有关配置网络访问的更多信息,请联系您的 SQL Server 管理员或 OneSignal 支持。同步引擎选项
基本同步引擎
- 对您的事件数据的只读访问
- 由 OneSignal 基础设施管理的状态跟踪
- 使用最少权限的简单设置
高级同步引擎
- 通过本地状态跟踪提升性能
- 需要额外权限来创建表
- 推荐用于高容量事件处理
限制
- 复杂查询可能在高流量期间影响数据库性能
- JSON 操作需要 SQL Server 2016 或更高版本以获得最佳性能
- 所有权限都在设置期间指定的数据库级别授予
常见问题
我可以连接到多个 SQL Server 架构吗?
可以,您可以通过为包含事件数据的每个架构运行GRANT SELECT, VIEW DEFINITION ON SCHEMA::<schema>
语句来授予 CENSUS 用户访问多个架构的权限。