如何显示累积的推送通知,而不是显示往往同时出现的多个通知?

阿斯兰·阿里(Arslan Ali)

每当添加新事件时,就会向用户发送推送通知。如果在行中添加了十个事件,则会向用户发送十个推送通知,这将是令人讨厌的行为。

我想要这样:如果连续添加十个事件,或者在时间上彼此相邻添加十个事件,则只会向每个用户发送一个推送通知,说:"#{event.name} and 19 others events added that match your interests."

到目前为止,这是我所做的:

last_sent_notificationusers表中添加了一个字段每次添加新事件时,都会检查所创建的事件不在的2分钟半径内last_sent_notification,并且会触发通知。

如果新创建的事件位于的2分钟半径内last_sent_notification,则会创建一个后台作业,该后台作业将等待2分钟以等待其他任何即将发生的事件,并在2分钟后触发。如果在等待2分钟的过程中创建了新事件,则通知将考虑在等待2分钟的过程中创建的所有事件。

此问题的唯一缺点是:添加事件后,不会立即发送通知。会有2分钟的延迟。

是否有任何设计模式或最佳解决方案可以更好地完成这项工作?

e4c5

使用Collapsible消息对您来说要简单得多,它是专门为这种情况而设计的。

可折叠消息是一条消息,如果尚未传递到设备,则可以用包含相同折叠键的新消息替换。

您需要做的就是设置collapse_key参数。

如果这不是您真正想要的,那么您正在寻找的是队列和发送机制。使用redis可以很容易地完成这种事情。您当前的服务器端应用仅将GCM通知推送到Redis队列中。如果已有给定用户的消息,则将其替换。

然后,您需要另一个线程来不断监视redis队列并发送早于n分钟的消息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何显示累积的推送通知,而不是显示往往同时出现的多个通知?

来自分类Dev

如何同时显示多个通知

来自分类Dev

推送通知未显示

来自分类Dev

推送通知未显示

来自分类Dev

如何显示iOS推送通知弹出窗口?

来自分类Dev

如何获取图标以显示推送通知消息

来自分类Dev

收到 Xamarin 表单推送通知但未显示/出现

来自分类Dev

显示推送通知中的片段

来自分类Dev

显示灰色的推送通知图标

来自分类常见问题

如何在Android中显示多个通知

来自分类Dev

如何将多个通知分组显示?

来自分类Dev

如何在不同的日期显示多个通知?

来自分类Dev

离子推送通知未在覆盖上显示通知(通知栏)

来自分类Dev

如何在不同时间显示特定日期的多个通知

来自分类Dev

如何显示GCM推送通知的自定义UI?

来自分类Dev

如何知道推送通知权限警报是否已显示

来自分类Dev

如何在扑扑的Firebase推送通知中显示图像

来自分类Dev

如何发送多重推送通知并显示其中的数量

来自分类Dev

如何在MVC中使用SignalR显示推送通知

来自分类Dev

如何显示GCM推送通知的自定义UI?

来自分类Dev

每周如何显示通知?

来自分类Dev

如何同时使用WebSocket和推送通知

来自分类Dev

如何同时使用WebSocket和推送通知

来自分类Dev

如何在SAPUI5中显示由控制器触发的对话框而不是查看事件?(推送通知)

来自分类Dev

Android推送通知消息未显示

来自分类Dev

图片未显示在推送通知中

来自分类Dev

推送通知不显示或立即消失[CodenameOne]

来自分类Dev

Android不显示特定屏幕的推送通知

来自分类Dev

在UIAlert视图中显示推送通知文本

Related 相关文章

热门标签

归档