Notificaciones Push silenciosas de Google Chrome

He estado leyendo los documentos para la implementación de Chrome de la API de Web Pushaquí, y noté que la API dice "promete mostrar una notificación cada vez que recibe un impulso" y, bajo limitaciones, se indica "ustedtener para mostrar una notificación cuando reciba un mensaje push ".

Después de implementar el ejemplo en mi localhost, usé cURL para enviar una notificación push con éxito. Tenía curiosidad, así que comenté las líneas que en realidad llaman a la función showNotification y puse un console.log en su lugar y descubrí que, de hecho, podía enviar, recibir e ignorar totalmente una notificación push. Incluso intenté usar una declaración if para controlar si mostrarlos o no según el booleano global que controlaba desde mi página principal, y eso funcionó. Entonces, me preguntaba si alguien sabía lo que querían decir al decir que necesita mostrar una notificación, y que las notificaciones automáticas silenciosas no estaban disponibles.

Esto no fue solo por el gusto de hacerlo, legítimamente necesito controlar si mostrar o no estas notificaciones en mi aplicación web, por lo que sería genial si esto fuera realmente posible. Codifique a continuación en caso de que tenga curiosidad.

self.addEventListener('push', function(event) {
  var title = 'New Message';
  var body = 'You have received a new message!';
  var icon = '/img/favicon.png';
  var tag = 'well-notification';
  console.log("DID RECEIVE NOTIFICATION")

  if(settingsShowNotification) {
    event.waitUntil(
      self.registration.showNotification(title, {
         body: body,
         icon: icon,
         tag: tag
      })
    );
  }
});

EDITAR: en Chrome 47, si es relevante.

ACTUALIZACIÓN: Después de seguir experimentando, encontré el problema obvio de que no puedo actualizar la variable global original una vez que el usuario se aleja y luego vuelve a navegar a la misma página. Sin embargo, pude evitar esto usando una variable en el trabajador de servicio y enviando un mensaje al trabajador de servicio usando la API descritaaquí para alternar el showNotifications boolean.

Respuestas a la pregunta(1)

Su respuesta a la pregunta