Skip to content

Commit

Permalink
Minor fixes to docs requested by Doug.
Browse files Browse the repository at this point in the history
Split the table on the demos index page into "easy" and "technical" tables.
Added a note to the demos index page about starting two different windows.
  • Loading branch information
EricDavies committed Dec 25, 2013
1 parent 9f12df7 commit 1258d2c
Show file tree
Hide file tree
Showing 4 changed files with 61 additions and 33 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Installation In A Nutshell
4. Start EasyRTC by running `node server.js`
5. Browse the examples using a WebRTC enabled browser. *(defaults to port `8080`)*

Step by step instructions including additional setup options can be found in `/docs/easyrtc_installing.md`
Step by step instructions including additional setup options can be found in `/docs/easyrtc_server_install.md`


Documentation
Expand Down
77 changes: 53 additions & 24 deletions demos/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,13 @@
<!-- Main Content -->
<h1>EasyRTC Landing Page</h1>
<p>Congratulations! With EasyRTC installed you are on the road to creating your own WebRTC enabled applications.</p>
<p>The easiest way to run these demos to create two browser windows and open an instance of a particular demo
in each window. Please make sure that Skype or other programs aren't using your webcam before
starting the video chat demos.
</p>
<h2>Local EasyRTC Demos</h2>

<h3> These are the easy very basic demos.</h3>
<table class="demo_table">
<tr>
<th>Demo</th>
Expand All @@ -40,19 +46,33 @@ <h2>Local EasyRTC Demos</h2>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
</tr>

<tr>
<td><a href="demo_instant_messaging_rooms.html">Instant Messaging Demo ROOMS</a></td>
<td><a href="demo_data_channel_messaging.html">Data Channel Messaging Demo</a></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Warn" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
</tr>

<tr>
<td><a href="demo_audio_video_simple.html">Simple Video+Audio Demo</a></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
</tr>

<tr>
<td><a href="demo_audio_video_simple.html">Simple Video+Audio Demo</a></td>
<td><a href="demo_multiparty.html">Multiparty Chatroom Demo</a></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_pass.png" /></td>
Expand All @@ -62,6 +82,35 @@ <h2>Local EasyRTC Demos</h2>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
</tr>

</table>

<h3> More technical demos that illustrate particular capabilities.</h3>
<table class="demo_table">
<tr>
<th>Demo</th>
<th><a href="http://www.google.com/chrome"><img title="Chrome" alt="Chrome" height="32" width="32" src="images/br_chrome.png" /></a></th>
<th><a href="http://www.chromium.org/getting-involved/dev-channel"><img title="Chrome Canary" alt="Chrome Canary" height="32" width="32" src="images/br_chrome_canary.png" /></a></th>
<th><a href="http://www.mozilla.org/en-US/firefox/"><img title="Firefox" alt="Firefox" height="32" width="32" src="images/br_ff.png" /></a></th>
<th><a href="http://www.mozilla.org/en-US/firefox/aurora/"><img title="Firefox Aurora" alt="Firefox Aurora" height="32" width="32" src="images/br_ff_aurora.png" /></a></th>
<th><a href="http://nightly.mozilla.org/"><img title="Firefox Nightly" alt="Firefox Nightly" height="32" width="32" src="images/br_ff_nightly.png" /></a></th>
<th><a href="http://www.opera.com/"><img title="Opera" alt="Opera" height="32" width="32" src="images/br_opera.png" /></a></th>
<th><a href="http://windows.microsoft.com/en-US/internet-explorer/download-ie"><img title="Internet Explorer" alt="Internet Explorer" height="32" width="32" src="images/br_ie.png" /></a></th>
<th><a href="http://www.apple.com/safari/"><img title="Safari" alt="Safari" height="32" width="32" src="images/br_safari.png" /></a></th>
</tr>

<tr>
<td><a href="demo_instant_messaging_rooms.html">Instant Messaging Demo ROOMS</a></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
</tr>

<tr>
<td><a href="demo_audio_video_simple_hd.html">Video+Audio HD 720p Demo</a></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
Expand Down Expand Up @@ -119,17 +168,7 @@ <h2>Local EasyRTC Demos</h2>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
</tr>
<tr>
<td><a href="demo_data_channel_messaging.html">Data Channel Messaging Demo</a></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Warn" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
</tr>


<tr>
<td><a href="demo_data_channel_filesharing.html">Data Channel File-sharing Demo</a></td>
Expand All @@ -143,17 +182,7 @@ <h2>Local EasyRTC Demos</h2>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
</tr>

<tr>
<td><a href="demo_multiparty.html">Multiparty Chatroom Demo</a></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Pass" height="32" width="32" src="images/br_status_pass.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
<td><img alt="Fail" height="32" width="32" src="images/br_status_fail.png" /></td>
</tr>

<tr>
<td colspan="9" id="browser_note"><em>Note: Browser compatability subject to change.</em></td>
</tr>
Expand Down
13 changes: 6 additions & 7 deletions docs/easyrtc_client_tutorial.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ EasyRTC is a framework built on top of WebRTC, an emerging W3C/IETF standard for

The EasyRTC framework consists of a client or browser-side Javascript library and a backend Javascript server built on top of a node.js. Because the WebRTC libraries is built into each browser there is no need for a browser plug-in.

Google's Chrome browser has the broadest support for the WebRTC API. Opera is now using the same engine as Chrome and hence mimics it's behavior. Firefox provides decent support for video chats and data communications.
Google's Chrome browser has the broadest support for the WebRTC API. Opera is now using the same engine as Chrome and hence mimics it's behavior. Firefox provides excellent support for data communications but only basic support for video chats (it lacks the ability to set the camera resolution, programmatically allow screen sharing, or do statistics gathering).


WebRTC has the potential once it is fully standardized to support audio and video chats and conferencing, multiplayer games and many other audio, video and data-based applications.
Expand Down Expand Up @@ -72,7 +72,7 @@ The second video tag should be in a &lt;div> block with a CSS _position_ value o
...
</body>

If you don't have the muted flag in the self video tag, you'll get a feedback look from your speakers to your microphone.
If you don't have the muted flag in the self video tag, you'll get a feedback loop from your speakers to your microphone.

Now we have to start writing some application logic for the application.js file,
starting with an initialization function that will be called when the page gets loaded.
Expand Down Expand Up @@ -145,8 +145,7 @@ to more permanent identifiers like name, job title, and profile picture.
To actually initiate a call to a person, all we need to do is call the easyrtc.call method,
passing it the easyrtcid of the person, and three callbacks:

+ function successCallback(easyrtcid) - called when the initiated succeeded.
+
+ function successCallback(easyrtcid) - called when the initiation succeeds.
+ function errorCallback(errorCode, errorText) - called on error.
+ function accepted(wasAccepted,easyrtcid) - called to indicate whether the call was accepted or not.

Expand All @@ -163,7 +162,7 @@ Here is some code for the actual call initiation:
);
}

Now we just have to modify the &lt;body tag of our html file to actually call the my_init function.
Now we just have to modify the body tag of our html file to actually call the my_init function.

<body onload="my_init()">

Expand Down Expand Up @@ -299,7 +298,7 @@ We'll need two more calls for the involved version:
});


The entire "involved" version of the Javascript looks like the below:
The entire Javascript looks like the below code:

The mylogic2.js file:
easyrtc.setStreamAcceptor( function(callerEasyrtcid, stream) {
Expand Down Expand Up @@ -498,7 +497,7 @@ You can send data (via websockets) to someone by calling easyrtc.sendDataWS as b
console.log(ackMesg.msgData.errorText);
}
});
The destination is either a peers easyrtcId or an object that may specify one or more of targetEasyrtcid, targetGroup, and targetRoom.
The destination is either a peer's easyrtcId or an object that may specify one or more of targetEasyrtcid, targetGroup, and targetRoom.
The messageType is a short string you chose. The ackHandler gets called when the server receives your message, and does not
constitute a reply from the other peer.

Expand Down
2 changes: 1 addition & 1 deletion docs/easyrtc_server_ice.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ EasyRTC: ICE Configuration

WebRTC utilizes a technique called [ICE, Interactive Connectivity Establishment](http://en.wikipedia.org/wiki/Interactive_Connectivity_Establishment), to traverse NAT's and firewalls. As part of the ICE process, the browser may utilize [STUN](http://en.wikipedia.org/wiki/STUN) and [TURN](http://en.wikipedia.org/wiki/Traversal_Using_Relays_around_NAT) servers. The addresses to STUN and TURN servers are sent to the browser via an ICE configuration.

STUN generally require very little bandwidth, thus there are many free servers available. On the other hand, TURN does incur significant processing and bandwidth costs. There are some free TURN services for development, but for production you will need a commercial or self-hosted solution.
STUN servers generally require very little bandwidth, thus there are many free servers available. On the other hand, TURN does incur significant processing and bandwidth costs. There are some free TURN services for development, but for production you will need a commercial or self-hosted solution.

It is estimated that 85-90% of connections do not require TURN, however that still leaves a significant percentage which does require it.

Expand Down

0 comments on commit 1258d2c

Please sign in to comment.