Desktop push notification permissions not prompted in Firefox

Bug
When turning on desktop push notifications in Firefox, the notifications permission is not prompted. This effectively breaks desktop notifications in Firefox altogether as they cannot be turned on.

Browser information
Operating System: Windows 10
Browser: Firefox
Version: 67.0.4 (64-bit)

27 Likes

It looks like, even if you do have the permissions allowed, trying to toggle the setting doesn’t work. It doesn’t give the pop-up saying what’s wrong or switch properly.

5 Likes

Notification permissions are also not prompted if you will use Microsoft Edge Insider.

5 Likes

This issue is still active as of 9/7/2019.

The “receive notifications” panel is not displayed.

6 Likes

Still a pain this bug has not been fixed or even acknowledged by web engineers yet.

5 Likes

Confirmed still an issue, prompt to allow notifications doesn’t show up, and even with the permission set to “allowed” manually, I can’t enable desktop notifications.

Firefox 75.0, 64-bit.

Edit: Didn’t mean to reply to you, meant to reply to the thread, my apologies.

2 Likes

Don’t know if it helps but its still an issue with firefox. Latest release Version 76.0.1 (64-bit)

2 Likes

This bug is still a thing.

But on Chromium Edge

2 Likes

Not fixed yet, had to switch to Chrome just to get notifications. Please fix, I want to go back to Edge.

4 Likes

Still not fixed. Roblox, please fix this bug. The “Do you want notifications on this computer?” is driving me crazy.

2 Likes

As of, 9/6/2020, this is still an issue, the desktop push notification still doesn’t appear.
(I really hope this issue gets fixed… eventually)

3 Likes

Here from almost the end of 2020, this is STILL broken. Nothing pops up.

2 Likes

I got the prompt for the desktop notifications on Opera GX but I don’t recieve any notifications at all, even if I have the Roblox Tab closed. This is clearly a big issue as its vital for me to reply quickly to my friends though Direct Messages as I keep missing some Direct Messages from friends I play with

Still does not work on Edge, in 2021

This should have been fixed by now

2 Likes

Still not fixed in latest firefox and edge versions.

Almost all chromium browsers notifications don’t work as of January 2021, excluding Google Chrome.

It is pretty antagonistic on Roblox’s part that this feature only works in Google Chrome (especially considering that they only show users how to enable Roblox push notifications specifically in Google Chrome). It doesn’t even work in other Chromium browsers. From there, you’re forced to deal with this broken and ugly prompt that doesnt have a dark mode.


I find it concerning that the feature doesn’t properly work (or just straight up isn’t supported without any notice) in other browsers with smaller market share compared to Google Chrome. :frowning:

6 Likes

As of March: Still not working
Will this EVER be fixed???

1 Like

I did some digging into identifying the potential cause of the issue.

https://www.roblox.com/js/ServiceWorker/ServiceWorkerRegistrar.js

    var installOrUpdate = function () {
        var scriptUrl = getPushNotificationsServiceWorkerJsFileLocation();
        navigator.serviceWorker.register(scriptUrl, { scope: '/' }).then(function (registration) {
            //success
        }).catch(function (error) {
            //failure
        });
    };

From using debugging tools, I think Firefox is hitting that empty catch. As for why Roblox has the catch, I believe it’s because when you try to register their service worker:

You get an error that gives you no debug information / line numbers. This code snippet works as expected on Chrome. So, I am unsure where to go from here.

When you press the button to enable push notifcations (PushNotificationRegister.js), the following code is executed:

var subscribe = function (onSuccess, onFailure) {
        Roblox.ServiceWorkerRegistrar.register();
        navigator.serviceWorker.ready.then(function (serviceWorkerRegistration) {

Roblox.ServiceWorkerRegistrar.register(); is part of the code I linked, and since it never manages to register a service worker, the service worker is never ready and the rest of the subscription code will not run.

I tried Edge which was able to register the service worker, but would always fail with the following error: DOMException: Registration failed - missing applicationServerKey.

Which is interesting because it does make a request to: https://notifications.roblox.com/v2/push-notifications/chrome-manifest

This might be because only Chrome v52 and below needs a manifest file, Edge and Firefox do not use manifest files, and Roblox is not passing the applicationServerKey as a required parameter to pushManager.subscribe, which would result in that error for Edge and other browsers.

This is the following code Roblox has:
serviceWorkerRegistration.pushManager.subscribe({ userVisibleOnly: true }) (PushNotificationRegistar.js)

To explain why everything doesn’t work:

Firefox → the serviceWorker is never ready, the subscription code is never run, notification panel doesn’t show up.
Edge → the serviceWorker is ready, subscription code is run, subscription code errors (no token), notification panel doesn’t show up.

As for why Firefox fails to register the service worker is anyone’s guess.

More information, when enabling push notifications with chrome you get this warning:

TLDR: Roblox is using gcm_sender_id to authenticate (chrome only) which is deprecated and is going to be removed from Chrome stable.

The push notification system is essentially a ticking time bomb and It’s only a matter of time before it breaks entirely. They need to be using VAPID tokens asap - which is standardized and will support more browsers.

Credit to @tornadus11 for helping discover the Edge issue with me, and assisting with the research process.

20 Likes

This issue still persists as of November 2021. :frowning_face:

Even though they said they were looking into this almost 9 months ago?: Desktop push notifications use deprecated gcm_sender_id for authentication - #2 by OuterspaceNemo

1 Like