diff --git a/IFRAME.md b/IFRAME.md index bc9bffb..0b93c64 100644 --- a/IFRAME.md +++ b/IFRAME.md @@ -20,6 +20,8 @@ Adding that iframe to the DOM will reveal a simple page accessing for a user to An example of how this API is used by OBS.Ninja is with its Internet Speedtest, which has two OBS.Ninja IFrames on a single page. One iframe feeds video to the other iframe, and the speed at which it does this is a measure of the system's performance. Detailed stats of the connection are made available to the parent window, which displays the results. https://obs.ninja/speedtest +More community-contributed IFRAME examples can be found here: https://github.com/steveseguin/obsninja/tree/master/examples + A sandbox of options is available at this page, too: https://obs.ninja/iframe You can enter an OBS.Ninja URL in the input box to start using it. For developers, viewing the source of that page will reveal examples of how all the available functions work, along with a way to test and play with each of them. You can also see here for the source-code on GitHub: https://github.com/steveseguin/obsninja/blob/master/iframe.html One thing to note about this iframe API is that it is a mix of URL parameters given to the iframe *src* URL, but also the postMessage and addEventListener methods of the browser. The later is used to dynamically control OBS.Ninja, while the former is used to initiate the instance to a desired state. diff --git a/README.md b/README.md index dec09a1..a51a580 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ MacOS users will face some challenges in using OBS 25/26, but there are workarou This repo contains software for OBS.Ninja, including the HTML landing page for its Electron Capture app offering. A sample config file and instructions for setting up a TURN server (video relay server), is also provided. You may also find the Wiki for the project in this repo, which contains added information on how to use the software. ## How to Deploy this Repo: -To use, just download and host the files on a HTTPS-enabled webserver. You may want to hide the .html extensions within your HTTP server as well, else the generated links will not work. See [here](https://github.com/steveseguin/obsninja/blob/master/install.md) for added details, although I don't really recommend it. +To use, just download and host the files on a HTTPS-enabled webserver. You may want to hide the .html extensions within your HTTP server as well, else the generated links will not work. See [here](https://github.com/steveseguin/obsninja/blob/master/install.md) for added details and alternative install options. Directions on how to deploy a TURN server are listed in the turnserver.md file. You may wish to do so, although not all use cases will not need one. Only about 10% of remote guests, those often connected via 4G LTE, will require a TURN server. While OBS.Ninja does host some TURN servers, they are quite expensive to operate and not really for private deployment use. If you are deploying your own version of OBS.Ninja, I'd ask you use your own TURN servers instead. diff --git a/examples/iframe.outbound-stats.html b/examples/iframe.outbound-stats.html new file mode 100644 index 0000000..e026684 --- /dev/null +++ b/examples/iframe.outbound-stats.html @@ -0,0 +1,264 @@ + + + + OBS.Ninja IFRAME Outgoing Stats Example + + + + + + + + + + +
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+

This example will show all connections to the stream generated from this page using statistics gathered using the iFrame API.

+

Click start to generate a stream using the OBS.Ninja URL shown. If you use the example URL shown, you can click here to connect to this stream as a viewer in a new window/tab, this will then show in the table below. Expired connections will be removed after a short delay.

+
+
+
+
Audio:
+
+ + +
+
+
+
Video:
+
+ + +
+
+
+
Stats:
+
+ + +
+
+
+
Outbound Connections:
+
0
+
+
+
+
+
+ + + + + + + + + + + + + + +
LabelAddedQuality Limit ReasonResolutionPlatformEncoderUser Agent
+
+
+
+ + + + + + + diff --git a/install.md b/install.md index 739dceb..e0b167c 100644 --- a/install.md +++ b/install.md @@ -10,7 +10,7 @@ Those reasons are: wanting custom branding; contributing as a developer to the For a subset of those users even, they might still have better options available. -I offer https://rtc.ninja for those looking for a brand-free experience already. You can also point your domain to the OBS.Ninja IP address (provided on request), which will also rebrand the site automatically to match your domain name. +I offer https://rtc.ninja for those looking for a brand-free experience already. You can also point your domain to the OBS.Ninja IP address (provided on request), which will also rebrand the site automatically to match your domain name. (Requires Cloudflare as DNS server and proxy, Flexible SSL cert on, and HTTPs always on - all free.) For those wanting a private TURN server setup, you can load the settings for those via the URL parameters. If infrequently needing a private TURN, this is a great solution.