He configurado notificaciones de escritorio usando:
Notification.requestPermission((result) => { if (result === "granted") { navigator.serviceWorker.register("/dummy.js").then((registration) => { registration.showNotification("Hello", { body: "Buzz! Buzz!", actions: [{...}], }); }); } });
No puedo usar el constructor de Notification
, ya que necesito mostrar botones ( actions
) en las notificaciones y, por alguna razón, el constructor no admite esto.
No tengo intención de disparar o escuchar estas notificaciones cuando la aplicación no está abierta en una pestaña del navegador.
¿Hay alguna manera de escuchar el "notificationclick"
y otros eventos relacionados con la notificación desde el contexto de navegación principal , y no desde dentro del trabajador ?
Alternativamente, ¿hay alguna forma de usar el conjunto completo de funciones en el constructor de Notification
sin tener un trabajador?
Para aclarar más: no necesito al trabajador para nada más que usar actions
en las notificaciones. Solo necesito activar/escuchar notificaciones mientras la aplicación se ejecuta en el navegador, por lo que quiero interactuar con el trabajador lo menos posible. Escribir lógica para eventos de notificación en el propio trabajador es muy poco deseable.