- From: cowwoc <cowwoc@bbs.darktech.org>
- Date: Wed, 10 Jul 2013 12:29:32 -0400
- To: Adam Bergkvist <adam.bergkvist@ericsson.com>
- CC: "public-webrtc@w3.org" <public-webrtc@w3.org>
- Message-ID: <51DD8BEC.4060808@bbs.darktech.org>
On 10/07/2013 4:01 AM, Adam Bergkvist wrote: > On 2013-07-09 19:16, cowwoc wrote: >> Hi, >> >> This is a follow-up discussion to >> https://code.google.com/p/chromium/issues/detail?id=257104 >> >> The WebRTC specification needs to provide a better error message in case >> the browser denies access to the camera, instead of the user. Currently, >> the specification states that PERMISSION_DENIED is the result of the >> user denying access. Instead of simply modifying the definition of >> PERMISSION_DENIED to cover both cases, I propose splitting it into >> separate cases: >> >> PERMISSION_DENIED_BY_USER >> PERMISSION_DENIED_BY_BROWSER >> >> Alternatively, we need to add a String error message alongside the enum, >> and require browsers to issue a different error message for each case. >> > > Will the browser ever deny permission without involving the user? Yes. Chrome already does this today. Try running a WebRTC application from a file:// URL. > I could imagine some future scenario where a browser policy restricts > the browser/WebRTC from accessing certain cameras on a system, but > wouldn't we be fine with the same error as there is no camera > (available) then? Having two separate error messages makes it easier to diagnose the problem. I spent 2 hours trying to figure out why the browser was denying access to the camera without prompting me (the user). It's actually a lot harder to differentiate between user, browser or application errors than you'd think. In the case of Chrome, it was denying access to the camera immediately but then showed a camera icon in the top right corner that, when clicked, asked "Continue blocking camera access for this website? Ask next time this website tries accessing the camera?". Meaning, Chrome was misrepresenting what was going on ... as if the user had a choice to grant access or that they were ever prompted to do so (neither of which was the case). A production-ready WebRTC application with a polished UI needs to differentiate and report at least three separate errors: 1. The application failed to run because the user denied camera access (and explain how to re-enable it) 2. The application may not run under this context, regardless of user action (and why) 3. An application bug was detected (and how to report it) Gili
Received on Wednesday, 10 July 2013 16:31:04 UTC