Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Require user activation to automatically grant getUserMedia calls #666

Conversation

youennf
Copy link
Contributor

@youennf youennf commented Mar 12, 2020

No description provided.

@youennf
Copy link
Contributor Author

youennf commented Mar 12, 2020

<a href="https://html.spec.whatwg.org/multipage/interaction.html#transient-activation">
transient activation</a>, the user agent MUST seek active user consent:
if the <a href= "https://w3c.github.io/permissions/#permission-state">
permission state</a> is "granted", the User Agent MUST proceed as if it is "prompt".</p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This introduces extra prompts. App writers hate extra prompts.
Which cases will this cover?
The typical conference UI is "click here to enter conference" (in calendar or overview page), and the page you enter (a NEW page) then immediately requests camera. Will it have transient activation or not?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: the case of a page sitting quietly for 10 minutes after the user last touched it and then requesting the camera doesn't bother me that much - although it would, for instance, destroy the possibility of a time-lapse camera that doesn't hold the camera permanently. But "start a VC" is an use case that I want to have as smooth as possible.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will it have transient activation or not?

If you are in a native calendar and click on a link, then surely no.

In general, 'start a VC' should probably have a way to enter without camera/microphone or just microphone or just camera. I believe websites are moving in that direction, the proposed change might not be as disruptive as we might think.
Although this is currently an application design choice, it seems rude for a web page to start capture without any user gesture at all.

I guess there is the case of a page that does the set-up and when you click 'Join the room' , will open a new page that will do the real communication. I am not sure this is great experience (the LED will switch off and on for instance, you cannot prewarm the connection). Maybe transient activation can define cases where activation would be moved to the newly loaded document.

the case of a page sitting quietly for 10 minutes after the user last touched it and then requesting the camera

That is the typical case that might be good breaking.
To implement time-lapse, page is fine keeping its track live and using enabled=true/enabled=false.

@alvestrand
Copy link
Contributor

@youennf is going to collect data.

@dontcallmedom
Copy link
Member

the underlying issue #639 has been moved to -extensions; @youennf is there any value in keeping that pull request open?

@youennf
Copy link
Contributor Author

youennf commented Dec 1, 2020

@youennf is there any value in keeping that pull request open?

No, let's close it for now

@youennf youennf closed this Dec 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants