我试图在Chrome桌面推送通知中播放声音。 我在我的网站上设置了浏览器推送通知,但它不会播放声音。我已经通过了声音选项。
option = {
'body' : 'This is tst Description',
'icon' : 'icon.png',
'silent' : 'false',
'sound' : 'bell.mp3'
}
如果还有另一种方式播放通知声音,请告诉我。
答案 0 :(得分:3)
目前浏览器不支持Notification.sound 见https://developer.mozilla.org/en/docs/Web/API/notification
答案 1 :(得分:2)
您可以尝试使用 chrome web-extension
background_pages。
它会收听service worker
并播放音频
它的简单方法是请求服务工作者中的URL,并使用link
chrome.webRequest
在后台脚本中捕获它
chrome.webRequest.onBeforeRequest.addListener(
callback, filter, opt_extraInfoSpec);
如此thread
中所述<强>更新强> 正如本link
中所述服务工作者需要安全的来源,例如HTTPS。 chrome-extension://页面不是HTTP / HTTPS ,但是是安全的,因此此更改成为允许扩展注册服务工作者的必要步骤。
&#34; chrome-extension&#34; 作为允许服务工作者的计划添加。
在serviceworker script
首先,您需要在manifest.json
中注册您的扩展程序chrome.webRequest.onBeforeRequest.addListener
background.js
并且正如@Alexander所提到的那样,MDN中的声音不支持
答案 2 :(得分:1)
或者你可以全局声明myAudio对象,并在弹出通知之前或之后使用play()函数。
myAudio = new Audio("alert_tone.mp3");
var notification = new Notification("Hi there", options);
myAudio.play();
答案 3 :(得分:1)
如您在链接下面看到的
在撰写本文时,没有浏览器支持此选项。
https://developers.google.com/web/fundamentals/push-notifications/display-a-notification#sound