Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过GCM向所有打开的chrome浏览器发送推送消息_Php_Google Chrome_Push Notification_Google Cloud Messaging - Fatal编程技术网

Php 通过GCM向所有打开的chrome浏览器发送推送消息

Php 通过GCM向所有打开的chrome浏览器发送推送消息,php,google-chrome,push-notification,google-cloud-messaging,Php,Google Chrome,Push Notification,Google Cloud Messaging,我正在尝试开发一个网站,它将发送推送通知给所有正在观看它的用户。我找到了一些关于如何使用GCM for Chrome向自己发送推送的教程,它们运行良好, () 但我无法理解如何将推送发送给当前在我的站点上并被允许接收推送的每个用户。据我所知,我需要在他们订阅时收集他们的浏览器ID navigator.serviceWorker.ready.then(function(serviceWorkerRegistration) { serviceWorkerRegistration.pushManage

我正在尝试开发一个网站,它将发送推送通知给所有正在观看它的用户。我找到了一些关于如何使用GCM for Chrome向自己发送推送的教程,它们运行良好, () 但我无法理解如何将推送发送给当前在我的站点上并被允许接收推送的每个用户。据我所知,我需要在他们订阅时收集他们的浏览器ID

navigator.serviceWorker.ready.then(function(serviceWorkerRegistration) {
serviceWorkerRegistration.pushManager.subscribe({ userVisibleOnly: true })
  .then(onPushSubscription)

但我找不到如何获取和存储它们(可能是在MySQL数据库中使用PHP代码),以及之后如何向每个人发送推送(可能是迭代数据库中的所有浏览器id,并使用cURL请求分别向每个人发送推送)。在我的网站上,我有使用ServiceWorkers和处理用户订阅的代码,但一切只对我有效。站点上的任何其他人都不会收到任何通知。任何帮助都将不胜感激。

我想你是对的。在数据库中获取并存储ID,然后迭代my DB中的所有
浏览器ID
,并使用cURL请求分别向每个人发送推送。或者另一种方法是
创建一个设备组
,或者让您的用户订阅一个主题,并将消息推送到该主题。我认为您是对的。在数据库中获取并存储ID,然后迭代my DB中的所有
浏览器ID
,并使用cURL请求分别向每个人发送推送。或者另一种方法是
创建一个设备组
,或者让用户订阅一个主题并将消息推送到该主题。