Page not found at /pf-notifications/service-worker after uninstall

Created on 31 October 2024, about 2 months ago

Problem/Motivation

After uninstalling the module (with push_framework v2.3.4, I get this warning in my logs on every page load:

Location	https://juno.ioc.ddev.site/pf-notifications/service-worker
Referrer	https://juno.ioc.ddev.site/pf-notifications/service-worker
Message	/pf-notifications/service-worker
🐛 Bug report
Status

Active

Version

1.0

Component

Code

Created by

🇮🇹Italy kopeboy Milan

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @kopeboy
  • 🇮🇹Italy kopeboy Milan

    Actually, I think this is breaking danse module.

    Even after uninstalling this module and the whole push_framework, and deleting the service worker from my Chrome developer tools (under the Application tab), I still get the same warning but only when a new DANSE notification is triggered. I suspect this is the reason the notification doesn't get created at all.

  • 🇳🇱Netherlands sebastian hagens Breda, Netherlands

    Just for my clearification, are you using the advanced_pwa module?
    This module is build to be used with the pwa module, if enabling the pwa features for your site.

  • 🇳🇱Netherlands nk_

    Thanks @sebastix.

    @kopeboy I can confirm that I see the problem with service worker, this is a painful part. Could you please tried same what I just did, in th Application tab click on "Unregister" and reload some pages, see if page not found error is there. Problem is, as I see it, we can't (or at least easily) unregister service worker from user's browser. This is where "Unlock" button on its config helps a bit, ideally it should clean up those kind of things but that needs to be then clicked before uninstall which is far from good UX imho. To make this happens automatic with uninstall is a true challenge at the moment but we should definitely improve. It might need a deeper look into how PWA does it with its service worker...

    As for the Notification does not get created at all - so far I do not think it would have to do anything with this module. did you check DANSE subscriptions? Are these there and ok? If not, then that's why no notifications created but if yes then I am pretty sure we do not have anything with it. It would be appreciated if you have a chance to give more info, thanks!

  • 🇮🇹Italy kopeboy Milan

    To @sebastix: no, the issue is unrelated to pwa or advanced_pwa: I was just noting that the latter includes web push notifications and has a submodule specifically to correctly remove that feature.

    To @ nk_: Unfortunately I had already Deleted the service worker and removed the test site, so I can't Unregister the service worker now because I don't see it anymore (as well as the error logs). At least this also means the original issue got fixed by itself, maybe Chrome just needed some time?

    The big red "Unlock" button is supposed to clears service workers & subscriptions? It doesn't seem so, cause I've just reinstalled a new site with DANSE, push_framework, this module, registered a new key & service worker and subscribed myself with DANSE, but after clicking it, I can still see my subscription at /admin/reports/push-subscriptions, as well as the service workers in the Chrome console.

    Regarding DANSE.. how to check the subscriptions? I don't see anything in the provided /admin/reports/danse, that's why I thought DANSE events are not even fired.

  • 🇳🇱Netherlands sebastian hagens Breda, Netherlands

    @kopeboy, the URL /admin/reports/push-subscriptions should give you an view with current subscriptions for push notifications.

    Regarding DANSE, let me copy-paste this from my own documentation:

    There are three cronjobs responsible for handling all the events and notifications which may clearify some stuff:

    1. advancedqueue_cron
    1. danse_cron
    This will create the DANSE notifications events (entities)
    2. push_framework_cron
    This will collect the created DANSE notifications events and in the next iteration of this cronjob those collected items will be processed .

    You can check the created queue items and their states at `admin/config/system/queues/jobs/push_framework`

  • 🇮🇹Italy kopeboy Milan

    @sebastian-hagens: I know, you can see it even in my screenshot..

    I had the subscriptions and I had run cron, but no DANSE events nor notifications were being created & sent.

Production build 0.71.5 2024