如何在特定时间触发来自firebase的通知?

Posted

技术标签:

【中文标题】如何在特定时间触发来自firebase的通知?【英文标题】:How to trigger notification from firebase at a specific time? 【发布时间】:2017-12-14 13:21:18 【问题描述】:

我正在做一个健身应用程序,我必须在我存储在 firebase 中的日期后的特定时间通知用户。

例如:我在 firebase 数据库中保存今天的时间戳,说“start_at”:“timestamp”,现在我必须在我存储的日期(时间戳)后 1 周后发送通知。

它类似于 cron 功能。我不知道如何在 firebase 中实现它。

有人帮我吗?

【问题讨论】:

我没有这方面的经验,但我想我可以指导你。我要看的是函数 api 和通知 api。您应该能够在函数中设置触发器以创建通知并为其计时。我知道可以设置何时从仪表板发送通知,因此它必须是 api 的一部分。比您只需在云功能中设置此流程。我认为您需要付费才能从云功能发送通知。 随用随付。我认为这使您能够从云功能发送通知,但它是免费的。而且您无需为免费配额的流量付费。 Schedule a push notification with Firebase Cloud Messaging的可能重复 【参考方案1】:

Firebase 和一般的 Google Cloud Platform 没有让您以编程方式安排通知或 Cloud Function 触发器的功能。

你必须选择:

编写将从 Google App Engine 以一定频率(例如 1 小时)触发的云函数。 Here is the explanation 了解如何安排执行。 设置您自己的服务器以通过 FCM 的 API 发送通知。如果你使用 Node.js,你可以使用node-cron。

【讨论】:

@Chitra 有什么反馈吗? 我已经尝试过你的第一选择,但我不知道如何设置两周以及不同时间的不同用户。第二个选择,我们不想为这个项目单独设置服务器。 另外,如何让云功能监听特定用户发生的变化。例如,“functions.database.ref('/Users/id').onWrite(event ..”这是我监听通知的函数,在这里我如何传递动态用户 id 并更改有效负载(通知)内容和徽章值动态?谢谢

以上是关于如何在特定时间触发来自firebase的通知?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 ionic 3 和 Firebase Cloud Messaging 从通知栏打开特定页面?

如何在 iOS 中使用 Google Firebase 向特定用户发送推送通知?

如何使用 Firebase 中的用户令牌向特定用户发送通知?

如何在窗口上下文中接收来自 Firebase 的通知(以及服务工作者)

如何在swift 3中每天在特定时间触发本地通知

如何让来自 Firebase 控制台的通知像 Facebook 和其他应用一样弹出?