首页 > 解决方案 > 如何在更多设备、更多浏览器中处理同一用户的推送通知

问题描述

我有一个在 Firebase 上使用 Ionic 创建的混合网站,所以我什至有 PWA 版本、android 版本和 iOS 版本,用户可以是免费的或经过身份验证的。

现在我遇到了问题,因为当用户第一次可以访问我的网站时,我不知道如何处理推送通知,然后他选择接收通知,我将他/她的令牌存储在我的数据库中以发送推送通知,一切正常,该用户有 1 个令牌。

现在该用户已注册,然后当他访问该网站时,我不知道这是与以前相同的用户,然后我收到了存储新令牌的新请求。

此时,同一用户在我的数据库中有 2 个令牌。

现在,如果用户另一天将使用另一个浏览器(例如 firefox)访问我的网站并再次接受通知,那么他现在在我的数据库中拥有 3 个令牌。

如果同一个用户现在甚至安装了 PWA 版本,我将获得另一个不同的令牌,我的系统甚至会存储这个,现在这个用户有 4 个令牌。

继续使用此示例,用户可以收集存储在我的数据库中的 6 个或更多令牌。

问题是,如果现在我发送通知,该用户将被我的信息淹没,并且每次我发送 1 时都会收到 6 个或更多通知。

处理这种情况的最佳方法是什么?

标签: push-notificationprogressive-web-apps

解决方案


推荐阅读