web-dev-qa-db-ja.com

Chromeデスクトッププッシュ通知音が機能しない

Chromeブラウザでプッシュ通知でサウンドを再生しようとしています。自分のサイトでブラウザのプッシュ通知を設定しましたが、サウンドが再生されません。すでにオプションを渡しています。音のために。

option = {
     'body' : 'This is tst Description',
     'icon' : 'icon.png',
     'silent' : 'false',
     'sound' : 'bell.mp3'
}

通知音を再生する別の方法がある場合?私にお知らせください。

12
Bhavik Hirani

chromeweb-extensionbackground_pages を使用してみてください。

service workerをリッスンし、audioを再生します。その単純な方法は、サービスワーカーでURLを要求してキャプチャすることです。 link で言及されているように、chrome.webRequestを使用してバックグラウンドスクリプトで

chrome.webRequest.onBeforeRequest.addListener(
    callback, filter, opt_extraInfoSpec);

これで述べたように thread

Updateこれで述べたように link

サービスワーカーには、HTTPSなどの安全なオリジンが必要です。 chrome-extension://ページはHTTP/HTTPSではありませんが、安全であるため、この変更は拡張機能がService Workerを登録できるようにするために必要なステップになります。

"chrome-extension"がサービスワーカーを許可するスキームとして追加されました。

serviceworker script

まず、拡張機能を manifest.jsonに登録する必要があります

  • Service WorkerでURL​​をリクエストする
  • chrome.webRequest.onBeforeRequest.addListenerを使用してバックグラウンドスクリプトでキャプチャします
  • background.jsでサウンドを再生して

そして@Alexanderによって言及されているように、現在MDNのサウンドはサポートされていません

3
Pritish Vaidya

現在、ブラウザはNotification.soundをサポートしていません https://developer.mozilla.org/en/docs/Web/API/notification を参照してください

3

または、myAudioオブジェクトをグローバルに宣言し、通知がポップされる前または前にplay()関数を使用できます。

myAudio = new Audio("alert_tone.mp3");

var notification = new Notification("Hi there", options);
myAudio.play();
1
Suraj Verma