From 9bdd58d73a1b3b2ee5ef151b98c8d3fd2ce7534a Mon Sep 17 00:00:00 2001 From: Isaac Schemm Date: Mon, 16 Apr 2018 12:03:35 -0500 Subject: [PATCH] Update README.md --- README.md | 53 ++++++++++++++++++++++++++++++----------------------- 1 file changed, 30 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index 2e13798..32e9e26 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,26 @@ WebRTC Permissions UI Toggle ============================ -This is an extension for [SeaMonkey](http://www.seamonkey-project.org/) that -toggles the **media.navigator.permission.disabled** setting on and off. +This extension provides a UI to enable the WebRTC support in SeaMonkey. When +you activate it (from a toolbar button or from the Tools menu in the browser), +it does three things: + +* Enables WebRTC (if currently disabled) +* Turns on the setting `media.navigator.permission.disabled`, which allows + all WebRTC connections without prompting +* Checks the status of [OpenH264](http://www.openh264.org/); if it's enabled + but not installed, the user will be asked if they want to install or disable it + SeaMonkey does not have a permissions dialog to let the user select a camera and microphone (see [bug 956854](https://bugzilla.mozilla.org/show_bug.cgi?id=956854)), -so using this setting to override the dialog is the only way to enable WebRTC -support. +so using `media.navigator.permission.disabled` to override the dialog is the +only way to enable WebRTC support. Of course, leaving this setting on is insecure, since any web site that's open will be able to get access to your microphone, camera, and screen! So be sure to only turn it on when you need to use WebRTC, and turn it off once you're done with it. -Some versions of SeaMonkey might ship with WebRTC disabled by default. -WebRTC Permissions UI Toggle 1.3.0+ will enable WebRTC while toggled on, and -reset it to its original value when toggled off. - Instructions ------------ @@ -25,19 +29,30 @@ Instructions After you install the extension, you will need to restart SeaMonkey. 2. Before visiting a website that needs to use WebRTC, open the Tools menu and -select "WebRTC Override." A box will appear asking if you want to share your +select "Enable WebRTC." A box will appear asking if you want to share your camera, microphone, and screen with all open websites. Clicking OK will enable the override until you turn it off or close your browser. -3. If you are on a page that uses WebRTC and you have just enabled the +3. If you do not have OpenH264 installed yet (and you haven't disabled it), +the extension will offer to install it for you. + +4. If you are on a page that uses WebRTC and you have just enabled the override, you may need to refresh the page for it to work. -Known Bugs ----------- +Notes for Web Developers +------------------------ -* If toggling the override is configured to trigger a standard notification -(the default), and you have windows open that were launched from JavaScript, -the notification may appear outside of the top edge of the monitor. +In SeaMonkey (2.49.1 and later), WebRTC is typically disabled, which means the +`navigator.mediaDevices` object will be undefined. When this extension is +activated, `navigator.mediaDevices` will be present. + +In Firefox, the user is prompted to select a camera/microphone device. In +SeaMonkey, however, the user's default camera/microphone will always be used +unless you specify a device. `navigator.mediaDevices.enumerateDevices` will +get you a list of devices, but the device labels will only be included if +there is already an active `MediaStream` from `getUserMedia`. One possible +workaround is to start a stream, grab the list of devices, and then stop the +stream. Notes ----- @@ -46,12 +61,4 @@ Closing the entire application, or disabling or removing the extension, will always turn off the override. If you want, you can also have it turn off whenever a new browser window is opened. -Your first camera/screen/etc. will be chosen automatically. If you need to -select a particular camera, mic, screen, or window to share, you'll -have to use another web browser (like Firefox.) - -Sites that use H.264 as a video codec instead of VP8 might not work properly -in SeaMonkey 2.49.x. This problem is not specific to SeaMonkey; Firefox 52 ESR -has the same issue. - If the SeaMonkey Add-ons site is down, check the [Releases](https://github.com/IsaacSchemm/webrtc-permissions-ui-toggle/releases) section on GitHub for the most recent .xpi file.