【问题标题】:Onesignal web-push overwritingOnesignal 网络推送覆盖
【发布时间】:2018-06-28 09:45:18
【问题描述】:

我正在使用 OneSignal 网络推送通知从使用 PHP 构建的网站向我的客户发送通知。过了一会儿,我意识到如果我发送第一个通知但客户没有在他的设备上打开它,然后我发送另一个通知,智能手机不会将它们堆叠在一起 在通知区域中,而是用第二个覆盖第一个。这意味着客户端刚刚错过了第一个通知。

当然,在我在这里提问之前,我曾尝试对其进行研究,但没有成功 - 我是否可能忽略了解释如何解决此错误的文档的某些部分?

【问题讨论】:

    标签: php push-notification push onesignal


    【解决方案1】:

    我联系了 OneSignal 的官方支持并得到了一个超级简单但详细的解决方案 - 您是否正在处理类似的问题,请参阅下面的电子邮件副本(谢谢,Jon:))。

    当使用我们的 REST API 以编程方式发送通知时,您可以使用未记录的参数 web_push_topic

    在一组共享相同 web_push_topic 的通知中,新收到的通知将替换旧收到的具有相同主题的通知。只有共享相同主题的通知才会被替换;没有主题或不同主题的通知将不会被替换。您可以为不同的通知集设置不同的主题,以控制哪些通知留在屏幕上。

    web_push_topic 值可以是任何字符串值。

    在 Chrome 上,任何时候最多显示 3 条通知,即使其他通知与您的网站或 OneSignal 无关。这意味着您只能向用户显示 3 类通知,不包括当时可能显示的其他通知。

    在 Windows 上的 Firefox 上,一次可以显示更多通知 (6+)。

    在 Mac 上的 Firefox 和 Mac 上的 Safari 上,一次只能显示一个通知,即使其他通知与您的站点或 OneSignal 无关。通知也会在 5 秒内快速消失,而且此时间不可自定义。

    在 Android 上的 Chrome/Firefox 上,可以一次显示多个通知。

    如果您不指定 web_push_topic ,则每个通知都将被更新的通知替换。如果您确实指定了 web_push_topic,您可以选择将替换哪些通知以及将哪些通知堆叠。

    使用我们的 API 发送通知时,为 web_push_topic 设置字符串值将设置通知的主题。任何共享同一主题的通知将相互替换,但任何具有不同主题的通知都不会被替换。

    假设你发送了 4 个通知:

    通知“本周六下午 3 点在 1234 Street 开放日”,主题为“开放日”。 通知“本周六 1234 街的开放日更改为下午 4 点”,主题为“开放日”。 通知“华盛顿州西雅图有 20 家新房符合您的条件”,主题为“一般更新”。 主题为“促销”的通知“在您所在地区寻找代理”。 观察到的通知顺序将是:

    通知 #1 显示。 通知 #2 替换 #1(即使停靠在 Mac OS X 的通知托盘中)。 通知#3 单独显示(如果停靠在 Mac OS X 的通知托盘中,它将使用单独的条目)。 通知#4 也单独显示。 最后,当订阅者检查他的未读通知时,他将看到总共三个通知。

    希望这更有意义!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-12
      • 2019-05-13
      • 1970-01-01
      相关资源
      最近更新 更多