什么是活动动态?
活动动态让用户在您的应用内查看他们收到的通知历史。 OneSignal专注于投递通知,但目前不存储发送给每个用户的消息历史。要构建此功能,您需要自己存储通知数据——可以在后端服务器上或直接在用户设备上。- 选项1
- 选项2
保存到服务器
推荐方法不要依赖应用中的后台处理,而是使用创建通知 REST API发送每个通知,并在服务器上存储副本。然后,当应用启动时,它可以检查服务器获取更新。数据存储后,您可以随时检索和显示用户的通知历史。使用OneSignal事件流创建活动动态
OneSignal的事件流功能提供了一种可扩展的方式,将应用中的实时事件流式传输到您的后端系统或数据仓库。这让您能够构建反映应用内用户行为(如关注、评论、购买或通知事件)的动态,而无需在应用内手动更新动态。工作原理
事件流导出实时事件数据,包括:- 通知投递
- 邮件/短信打开和点击
- 用户触发的操作
- Webhook(您的HTTP端点)
- Amazon Kinesis
- Amazon S3
- Google Cloud Storage
- BigQuery
- 更多
使用事件流设置活动动态的步骤
1
启用事件流
- 转到OneSignal仪表板 > 设置 > 事件流。
- 选择目标,如Webhook或数据管道(例如,Amazon Kinesis)。
- 选择要流式传输的事件(例如,
message.sent、message.delivered、message.clicked)。
2
配置后端处理事件数据
- 创建接收事件数据的webhook或消费者。
-
解析事件负载以提取相关字段,如:
external_id(用户ID)event类型(message.delivered等)timestampcontents(通知消息)additional_data(任何自定义元数据)
3
存储和结构化活动动态条目
- 将这些事件以适合查询和渲染的格式保存到数据库中。
复制
询问AI
{
"message.id": "f3c9cd09-10d7-4f59-b9bc-66e16607f1d5",
"message.name": "the-name-you-set",
"message.title": "Claim 50% Off Today", // 邮件主题示例
"message.title": "{'en':'the message title/headings'}", // 推送标题示例
"message.contents": "{'en':'the message content'}",
"message.template_id": "the-template-uuid-if-set",
"message.url": "the-message-url",
"message.app_url": "the-message-app-url",
"message.web_url": "the-message-web-url"
}
4
在应用中渲染动态
- 构建前端组件(例如,React、SwiftUI或Android View)来查询和显示登录用户的最近事件。
- 可选择包括按事件类型的过滤器或分组。
5
使用额外元数据增强
-
发送通知时,包括
additional_data来提供动态上下文,例如:复制询问AI{ "action": "commented", "post_id": "xyz123" } - 这让您可以创建丰富的动态条目,如”Jane评论了您的帖子。“
示例用例
- 电子商务:显示订单确认、物流更新和促销。
- 社交应用:显示点赞、评论、关注。
- SaaS平台:跟踪任务分配、提及或活动日志。
优点
- 通过事件流进行实时更新
- 完全可定制的逻辑和显示
- 可扩展的后端驱动架构