在Chrome或Firefox中从封闭的networking应用程序发送桌面通知?

我的目标是通过Chrome或Firefox中的Web应用程序(我们称之为X)在浏览器中发送Gmail式的桌面通知 ,而无需用户安装应用程序或扩展程序。 如果用户需要授予接收来自X的通知的权限,那么可以,只要浏览器不需要打开X,浏览器需要打开通知就可以了。 不需要任何浏览器窗口的解决scheme也可以工作。

我只是花了这一天的时间,到目前为止,我认为我已经了解到:

  • 自OSX Mavericks以来,通过Safari推送通知可以在Safari 7+中执行此操作。
  • Web Notifications API适用于Chrome / Firefox,但要求用户的浏览器对X开放。
  • Twitter发送类似的networking通知,而不要求用户先获得许可,但要求用户的浏览器对Twitter开放。
  • 有很多关于可能的Growl实现的参考,但据我所知,所有这些都需要用户安装Growl和/或支持Growl的应用程序才能工作。

我上面的任何一个陈述都可能是错误的 – 我很乐意听到它! 我也愿意接受任何其他解决scheme。 有任何想法吗?

谢谢阅读。

即使您的网页不是使用服务工作者 , 服务工作者的通知API和服务器发起的通知(或预定通知 )的推送API ,也可以发送推送通知。

截至2016年6月,Chrome,Firefox和Opera均支持服务人员。 查看https://jakearchibald.github.io/isserviceworkerready/上的状态

请参阅以下链接进行相关讨论,实施情况和规格。

  • 从Chrome 40 , Firefox 33和Opera 24开始,服务工作人员默认启用。请参阅HTML5Rocks教程和MDN 。
  • 推送通知: Chrome 42 + , Firefox 44+

您可以使用W3C 推送API完成您正在寻找的内容。

如果你想从头开始构build所有东西,我build议开始阅读Google的这篇教程 。 它适用于Chrome,但是Firefox的工作方式非常相似 。

然而,这是一个很大的工作,“标准”仍在不断发展:我build议你使用像Pushpad这样的服务。

您也在我们的支持地址向咆哮询问了我们。 我会尽我所知地回答。 然而,你想要的是本质上桌面推送通知。 即使在iOS上,您也需要安装应用程序才能为该应用程序推送通知。

底线是,你想要的东西似乎几乎是一个疯狂的追逐。 你不需要应用程序,也不需要浏览器选项卡,但是你希望能够随机侵入用户的个人空间。 这似乎不正确。 至less与咆哮,使用电脑的人可以closures你,如果他们发现你的通知烦人。 通知中心(NC)在更多的OS X安装中也是如此。

Firefox现在有自己的通知。 我不知道他们是如何工作的,因为我停止在OS X上使用Firefox。 Chrome也有通知。 但据我所知,你需要在那里打开标签,所以我猜这也是FF做的。

从本质上讲,作为一个用户,我真的认为这是一个可怕的经验。 你有一个networking应用程序,它应该是一个Web应用程序。 这不是一个桌面应用程序。 我并不是说Web应用程序是一个Web应用程序的好坏,但基本上你是想要压下一个用户而没有隐含的许可,这对我来说看起来并不完全正确。

我不知道有任何方式发送至less某种types的应用程序运行的通知来做到这一点。 无论是咆哮还是NC守护进程或其他任何事情。 从根本上说,我不认为你想要做什么是可能的。 我当然会很高兴当然错了,但我不认为我在这里。 对于那个很抱歉。

也就是说,通过当前的框架,您可以通过Growl支持一个小应用程序。 如果最终用户没有安装Growl,则会select使用NC进行显示。 如果它是一个较老的操作系统,它会使用雾,你在电子邮件中提到我们的支持团队。

我希望这会有所帮助,或者至less让你有所需要继续前进。 🙂