Search code examples
javascriptgoogle-chromefirefoxservice-workerweb-push

How catch disabling web push notification?


How can I catch with serviceworker or simple js code, when user who previously allowed the web push notifications for my site disable them? For Firefox and Chrome browsers.


Solution

  • You can use the Permissions API to detect the current state of given permissions, as well as listen for changes.

    This article has more detail. Here's a relevant code snippet:

    navigator.permissions.query({name: 'push'}).then(function(status) {
      // Initial permission status is `status.state`
    
      status.onchange = function() {  
        // Status changed to `this.state`
      };
    });