Issue with WebRTC's "always grant permissions for this website"


writing this topic because I couldn’t find an old one referring to the question I’m about to ask.

Actually, seems that Firefox is way too strict about the getUserMedia policy. For instance, let’s say I granted full microphone permissions for a website and set it to remember my choice, so that I don’t need to click on the permissions popup every time I enter said website.

Point is that if Firefox is not on focus, it’ll behave like I never gave it permission to access microphone or whatever.

Giving you a real use case now: I’m working on a web application which can perform ingoing/outgoing calls through WebRTC. I noticed that when there’s an ingoing call and Firefox is not on focus, it won’t resolve the getUserMedia promise that is fired from the SIP library I’m using, in order to answer the call, even if I already set it up to always grant permissions through the popup. This is particularly annoying because it means that if I don’t have Firefox on focus, I’m going to miss calls or I won’t be able to autoreply to the calls since it’ll always stop at the promise resolution step.

I hope I can receive more info about this topic, and if this is already known as a bug or it is intended the way it is. If it’s the latter, I’d like to have more explanations. Other solutions like Chrome don’t give me this behavior and I’m able to autoreply to a call even when the browser is fully in background.

Thank you in advance



I have a similar issue. Is there a workaround for that?


1 Like

Unfortunately, in February 2020 problem still exists :frowning:
Where is the answer.

Same in Mai 2020 :frowning:

When using chrome our user have no issues but firefox always needs to be in focus.
For videochat applications with asynchronous calls incoming this is very strange for the user.
Any solutions for this ?

I have this same problem. It makes WebRTC unusable to not be able to receive an incoming call unless you are willing to sit in that specific tab in the browser all day waiting for it. Considering I’m creating a helpdesk solution, and the operators may need to be in other tabs, this means we run the risk of not receiving calls.