我正在尝试使用OneSignal发送通知。一切都很好,但我需要以某种方式确保新通知不会覆盖旧通知。因此,如果我向Android手机上的Chrome发送两个通知,那么我会在锁屏上收到两个通知,而不仅仅是新通知。
我搜索了文档,找到了项目“ collapse_id”和“ android_group”,在其中我给出了值(string)microtime(true),但并没有帮助。
这是一个简单的PHP发布通知。
http://https//example.com/
感谢建议
答案 0 :(得分:0)
来自OneSignal的员工:
您可以使用我们的API和以下步骤,通过OneSignal堆叠通知。由于滥用和客户的投诉,我们已从我们的信息中心禁用了此功能。 使用我们的REST API以编程方式发送通知时,可以使用未记录的参数web_push_topic。
在一组共享相同web_push_topic的通知中,新收到的通知将用相同的主题替换旧收到的通知。仅共享相同主题的通知将被替换;没有主题或主题不同的通知将不会被替换。您可以为不同的通知集设置不同的主题,以控制哪些通知停留在屏幕上。
web_push_topic值可以是任何字符串值。
在Chrome上,即使其他通知与您的网站或OneSignal不相关,则在任何时候最多可以显示3条通知。这意味着您只能向用户显示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街开放日”。
“主题为“开放屋”的通知“在本周六的1234街开放屋变为下午4点”。
“主题为“一般更新”的通知“在华盛顿州西雅图有20所新房子符合您的标准”。
主题为“促销”的通知“在您所在的地区查找代理商”。 观察到的通知顺序为:
显示1号通知。
2号通知将替换1号(即使停靠在Mac OS X的通知托盘中)。
3号通知是分开显示的(如果停靠在Mac OS X的通知托盘中,它将使用一个单独的条目)。
4号通知也单独显示。
最后,当订户检查他的未读通知时,他将看到总共三个通知。
希望这很有道理!
答案 1 :(得分:0)
您必须将选项web_push_topic
添加到您的http请求中。
同一web_push_topic
下的所有通知都将替换前一个通知