跳转到主要内容

按页面自动标记和定位 Web 推送订阅者

您可以通过根据用户订阅的特定页面或内容来标记用户,从而提供更个性化和及时的推送通知。在本指南中,您将学习如何:
  • 使用 subscriptionChange 事件检测 Web 推送选择加入
  • 在用户订阅时应用自定义数据标签
  • 按标签细分用户以进行有针对性的活动
  • 基于标签和时机自动化消息序列

设置

1. 使用页面特定元数据标记用户

一旦用户订阅推送通知,您可以使用上下文数据标记他们——例如他们正在查看的页面类型或主题。这使您能够根据用户表现出兴趣的内容进行有针对性的跟进。
// Example: Tag users subscribing on a sports-related page
let page_topic = 'sports'; // You can also dynamically extract this from DOM or metadata

OneSignal.push(function() {
  OneSignal.on('subscriptionChange', function(isSubscribed) {
    if (isSubscribed === true) {
      console.log('The user subscription state is now:', isSubscribed);

      // Example: Extract "gaming" from "/gaming/article-123"
      var pathArray = window.location.pathname.split('/');

      OneSignal.User.addTags({
        "subscription_page": pathArray[1],
        "subscription_page_topic": page_topic,
      }).then(function(tagsSent) {
        console.log('Tags sent:', tagsSent);
      });
    }
  });
});

工作原理:
  • 当用户的订阅状态发生变化时,subscriptionChange 事件触发。
  • 如果 isSubscribed === true,用户刚刚选择加入。
  • window.location.pathname.split('/')[1] 捕获页面路径的第一个段作为订阅上下文。
  • page_topic 可以根据您页面的元数据或内容动态设置。
示例:如果 URL 是 https://example.com/gaming/article123,则 subscription_page 标签将是 gaming

2. 按标签细分用户

一旦应用标签,您可以使用细分API 筛选器来根据这些标签定位用户。 例如:
  • subscription_page 为 “gaming” 的用户发送活动
  • 基于标签值和时机创建动态细分(例如,距首次会话的小时数)

3. 自动化后续消息

您可以构建滴灌式活动,根据用户订阅的时间和订阅的内容触发消息。 示例:游戏订阅者滴灌活动
细分名称筛选器描述
Gaming 1subscription_page = gaming AND First Session > 2h AND < 24h订阅后 2-24 小时内联系
Gaming 2subscription_page = gaming AND First Session > 24h AND < 48h1 天后跟进
Gaming 3subscription_page = gaming AND First Session > 72h AND < 96h3 天后最终检查
使用上限时间限制(<)以防止用户在消息窗口过去后仍停留在细分中。

4. 将细分与消息模板结合

一旦创建了细分:
  • 为活动的每个阶段构建模板(例如,介绍、提醒、促销)。
  • 使用旅程在用户进入适当的细分时发送这些消息。
示例消息想法:
  • 邀请加入游戏社区或社交群组
  • 推荐与其主题相关的热门文章
  • 发送独家优惠或折扣码

最佳实践和注意事项

  • 使用反映实际用户意图的有意义的标签名称和值
  • 如果可能,动态提取标签值,例如:
let page_topic = document.querySelector('meta[name="article-topic"]')?.content || 'general';
  • 通过 console.log() 或浏览器开发工具监控标签成功情况
避免:
  • 在每次页面加载时不必要地重新标记用户(仅在订阅是新的时才标记)
  • 在标签中包含 PII(例如,姓名、电子邮件)
  • 在整个网站中硬编码标签值

恭喜您用上下文信息丰富了用户数据! 其他资源:

I