发生数据库事件时如何自动发送Web推送通知? Angular + PHP + MySQL

时间:2019-01-13 05:20:06

标签: php mysql angular progressive-web-apps web-push

我正在使用Angular 6和服务工作者一起开发一个健身网站,当他们订阅的课程即将开始时(例如,开始时间前15分钟),服务工作者需要向用户发送通知(Web推送通知)。

到我有一个使用Minishlink \ WebPush来发送通知的PHP函数时,所以我需要在类开始前15分钟调用该函数,并且必须自动完成该过程,因为在此用户中没有用户交互才能调用该函数。

我已经考虑过要使用一个MySQL事件来查询存储类的表,并且当时间到了时会调用该PHP函数,但是我不知道该怎么做,即使这是最好的主意

有什么建议吗?

我正在使用在XAMPP上本地运行的Angular 6 + PHP + MySQL。

1 个答案:

答案 0 :(得分:0)

解决这种情况的最佳方法是创建一个cron和动态cron计时来执行Minishlink \ WebPush发送功能。

我们也使用玉米来处理这种情况,但是用例有所不同。我们的Cron每15分钟运行一次,检查mongo DB中是否有数据(如果存在),向该用户发送推送通知。

根据您的情况,您可以在用户安排好自己的时间安排后立即创建特定的cron任务,information在此答案中。

我希望这会对您有所帮助。