CVS 2011/webrtc/editor

Update of /sources/public/2011/webrtc/editor
In directory roscoe:/tmp/cvs-serv18296

Modified Files:
	webrtc.html 
Log Message:
Added 20130603 archived version.

--- /sources/public/2011/webrtc/editor/webrtc.html	2013/03/22 20:25:07	1.33
+++ /sources/public/2011/webrtc/editor/webrtc.html	2013/06/03 14:34:24	1.34
@@ -1354,21 +1354,25 @@
 
           <dt>have-local-offer</dt>
 
-          <dd>A local description, of type "offer", has been supplied.</dd>
+          <dd>A local description, of type "offer", has been successfully
+          applied.</dd>
   
           <dt>have-remote-offer</dt>
 
-          <dd>A remote description, of type "offer", has been supplied.</dd>
+          <dd>A remote description, of type "offer", has been successfully
+          applied.</dd>
 
           <dt>have-local-pranswer</dt>
 
-          <dd>A remote description of type "offer" has been supplied and a
-          local description of type "pranswer" has been supplied.</dd>
+          <dd>A remote description of type "offer" has been successfully
+          applied and a local description of type "pranswer" has been
+          successfully applied.</dd>
 
           <dt>have-remote-pranswer</dt>
 
-          <dd>A local description of type "offer" has been supplied and a
-          remote description of type "pranswer" has been supplied.</dd>
+          <dd>A local description of type "offer" has been successfully applied
+          and a remote description of type "pranswer" has been successfully
+          applied.</dd>
 
           <dt>closed</dt>
 
@@ -1879,9 +1883,7 @@
           <p>Creates a new <code><a>RTCDataChannel</a></code> object with the
           given label. The <code><a>RTCDataChannelInit</a></code> dictionary
           can be used to configure properties of the underlying channel such
-          as <!--priority and--> data reliability. A corresponding
-          <code><a>RTCDataChannel</a></code> object is dispatched at the
-          other peer if the channel setup was successful.</p>
+          as <!--priority and--> data reliability.</p>
 
           <p>When the <dfn id="dom-peerconnection-createdatachannel">
           <code>createDataChannel()</code></dfn> method is invoked, the user
@@ -1893,7 +1895,7 @@
               <a href=
               "#dom-peerconnection-signaling-state"><code>RTCPeerConnection</code>
               signalingState</a> is <code>closed</code>, throw an
-              <code>INVALID_STATE</code> exception.</p>
+              <code>INVALID_STATE</code> exception and abort these steps.</p>
             </li>
 
             <li>
@@ -1908,28 +1910,56 @@
             </li>
 
             <li>
-              <p>Initialize <var>channel</var>'s <code><a href=
-              "#dom-datachannel-reliable">reliable</a></code> attribute to
-              true.</p>
+              <p>If the second (dictionary) argument is present, initialize
+              <var>channel</var>'s <code><a href=
+              "#dom-datachannel-ordered">ordered</a></code>, <code><a href=
+              "#dom-datachannel-maxretransmittime">maxRetransmitTime</a></code>,
+              <code><a href=
+              "#dom-datachannel-maxretransmits">maxRetransmits</a></code>,
+              <code><a href="#dom-datachannel-protocol">protocol</a></code>,
+              <code><a href="#dom-datachannel-negotiated">negotiated</a></code>
+              and <code><a href="#dom-datachannel-id">id</a></code> attributes
+              to the values of their corresponding dictionary members (if
+              present in the dictionary).</p>
             </li>
 
             <li>
-              <p>If the second argument is present and it contains a
-              <code><a href=
-              "#widl-RTCDataChannelInit-reliable">reliable</a></code>
-              dictionary member, then set <var>channel</var>'s <code><a href=
-              "#dom-rtcdatachannel-reliable">reliable</a></code> attribute to
-              the dictionary member value.</p>
+              <p>If both the <code><a href=
+              "#dom-datachannel-maxretransmittime">maxRetransmitTime</a></code>
+              and <code><a href=
+              "#dom-datachannel-maxretransmits">maxRetransmits</a></code>
+              attributes are set (not null), then throw a
+              <code>SyntaxError</code> exception and abort these steps.</p>
+            </li>
+
+            <li>
+              <p>If the value of the <code><a href
+              "#dom-datachannel-protocol">protocol</a></code> attribute fails
+              to match the requirements of the WebRTC DataChannel Protocol
+              specification, then throw a <code>SyntaxError</code> exception
+              and abort these steps.</p>
             </li>
 
             <li>
-              <p>Return <var>channel</var> and continue these steps in the
-              background.</p>
+              <p>If the value of the <code><a href=
+              "#dom-datachannel-id">id</a></code> attribute is null, initialize
+              it to a value generated by the user agent, according to the
+              WebRTC DataChannel Protocol specification, and skip to the next
+              step. Otherwise, if the value of the <code><a href=
+              "#dom-datachannel-id">id</a></code> attribute is taken by an
+              existing <code><a>RTCDataChannel</a></code>, throw a
+              <code>TBD</code> exception and abort these steps.</p>
+            </li>
+
+            <li>
+              <p>Return <var>channel</var> and continue the following steps in
+                the background.</p>
             </li>
 
             <li>
               <p>Create <var>channel</var>'s associated <a>underlying data
-              transport</a>.</p>
+              transport</a> and configure it according to the relevant
+              properties of <var>channel</var>.</p>
             </li>
           </ol>
         </dd>
@@ -1937,7 +1967,7 @@
         <dt>attribute EventHandler ondatachannel</dt>
 
         <dd>This event handler, of type <code><a href=
-        "#event-peerconnection-datachannel">datachannel</a></code> , MUST be
+        "#event-datachannel">datachannel</a></code>, MUST be
         supported by all objects implementing the
         <code><a>RTCPeerConnection</a></code> interface.</dd>
       </dl>
@@ -1949,24 +1979,54 @@
       <p>The <code><a>RTCDataChannel</a></code> interface represents a
       bi-directional data channel between two peers. A
       <code><a>RTCDataChannel</a></code> is created via a factory method on an
-      <code><a>RTCPeerConnection</a></code> object. The corresponding
-      <code><a>RTCDataChannel</a></code> object is then dispatched at the other
-      peer if the channel setup was successful.</p>
+      <code><a>RTCPeerConnection</a></code> object.</p>
+
+      <p>There are two ways to establish a connection with <code>
+      <a>RTCDataChannel</a></code>. The first way is to simply create a <code>
+      <a>RTCDataChannel</a></code> at one of the peers with the <code><a href=
+      "#widl-RTCDataChannelInit-negotiated">negotiated</a></code> <code>
+      <a>RTCDataChannelInit</a></code> dictionary member unset or set to its
+      default value true. This will negotiate the new channel in-band and
+      trigger a <code><a>RTCDataChannelEvent</a></code> with the corresponding
+      <code><a>RTCDataChannel</a></code> object at the other peer. The second
+      way is to create a <code><a>RTCDataChannel</a></code> object with the
+      <code><a href="#widl-RTCDataChannelInit-negotiated">negotiated</a></code>
+      <code><a>RTCDataChannelInit</a></code> dictionary member set to false,
+      and signal out-of-band (e.g. via a web server) to the other side that it
+      should create a <code><a>RTCDataChannel</a></code> with a matching
+      <code><a href="#dom-datachannel-id">id</a></code>. This will connect the
+      two separately created <code><a>RTCDataChannel</a></code> objects. The
+      second way makes it possible to create channels with asymmetric
+      properties and to create channels in a declarative way by specifying
+      matching <code><a href="#widl-RTCDataChannelInit-id">ids</a></code>.</p>
 
       <p>Each <code><a>RTCDataChannel</a></code> has an associated
       <dfn>underlying data transport</dfn> that is used to transport actual
       data to the other peer. The transport properties of the <a>underlying
-      data transport</a>, such as reliability mode, are configured by the peer
-      taking the initiative to create the channel. The other peer cannot change
-      any transport properties of an offered data channel. The actual wire
-      protocol between the peers is out of the scope for this
-      specification.</p>
-
-      <p>A <code><a>RTCDataChannel</a></code> created with <code><a href=
-      "#dom-peerconnection-createdatachannel">createDataChannel()</a></code>
-      MUST initially be in the <code>connecting</code> state. If the
+      data transport</a>, such as in order delivery settings and reliability
+      mode, are configured by the peer as the channel is created. The
+      properties of a channel cannot change after the channel has been created.
+      The actual wire protocol between the peers is specified by the WebRTC
+      DataChannel Protocol specification (TODO: reference needed).</p>
+
+      <p>A <code><a>RTCDataChannel</a></code> can be configured to operate in
+      different reliability modes. A reliable channel ensures that the data
+      is delivered at the other peer through retransmissions. An unreliable
+      channel is configured to either limit the number of retransmissions
+      (<code><a href=
+      "#widl-RTCDataChannelInit-maxRetransmits">maxRetransmits</a></code>) or
+      set a time during which retransmissions are allowed (<code><a href=
+      "#widl-RTCDataChannelInit-maxRetransmitTime">maxRetransmitTime</a></code>).
+      These properties can not be used simultaneously and an attempt to do so
+      will result in an error. Not setting any of these properties results in a
+      reliable channel.
+
+      <p>A <code><a>RTCDataChannel</a></code>, created with <code><a href=
+      "#dom-peerconnection-createdatachannel">createDataChannel()</a></code> or
+      dispatched via a <code><a>RTCDataChannelEvent</a></code>,
+      MUST initially be in the <code>connecting</code> state. When the
       <code><a>RTCDataChannel</a></code> object’s <a>underlying data
-      transport</a> is successfully set up, the user agent MUST <a href=
+      transport</a> is ready, the user agent MUST <a href=
       "#announce-datachannel-open">announce the <code>RTCDataChannel</code> as
       open</a>.</p>
 
@@ -1999,9 +2059,11 @@
         </li>
       </ol>
 
-      <p>When an <a>underlying data transport</a> has been established, the
-      user agent of the peer that did not initiate the creation process MUST
-      queue a task to run the following steps:</p>
+      <p>When an <a>underlying data transport</a> has been negotiated (see
+      <code><a href=
+      "#widl-RTCDataChannelInit-negotiated">negotiated</a></code> ), the user
+      agent of the peer that did not initiate the creation process MUST queue a
+      task to run the following steps:</p>
 
       <ol>
         <li>
@@ -2012,45 +2074,34 @@
         </li>
 
         <li>
-          <p>Let <var>configuration</var> be an information bundle with
-          key-value pairs, received from the other peer as a part of the
-          process to establish the <a>underlying data channel</a>.</p>
-        </li>
-
-        <li>
           <p>Let <var>channel</var> be a newly created
           <code><a>RTCDataChannel</a></code> object.</p>
         </li>
 
         <li>
-          <p>Initialize <var>channel</var>'s <code><a href=
-          "#dom-datachannel-label">label</a></code> attribute to value that
-          corresponds to the "<code>label</code>" key in
-          <var>configuration</var>.</p>
+          <p>Let <var>configuration</var> be an information bundle received
+          from the other peer as a part of the process to establish the
+          <a>underlying data channel</a> described by the WebRTC DataChannel
+          Protocol specification.</p>
         </li>
 
         <li>
           <p>Initialize <var>channel</var>'s <code><a href=
-          "#dom-datachannel-reliable">reliable</a></code> attribute to
-          true.</p>
+          "#dom-datachannel-label">label</a></code>, <code><a href=
+          "#dom-datachannel-ordered">ordered</a></code>, <code><a href=
+          "#dom-datachannel-maxretransmittime">maxRetransmitTime</a></code>,
+          <code><a href=
+          "#dom-datachannel-maxretransmits">maxRetransmits</a></code>, <code>
+          <a href="#dom-datachannel-protocol">protocol</a></code>, <code>
+          <a href="#dom-datachannel-negotiated">negotiated</a></code> and
+          <code><a href="#dom-datachannel-id">id</a></code> attributes to their
+          corresponding values in <var>configuration</var>.</p>
         </li>
 
         <li>
-          <p>If <var>configuration</var> contains a key named
-          "<code>reliable</code>", set <var>channel</var>'s <code><a href=
-          "#dom-datachannel-reliable">reliable</a></code> attribute to the
-          corresponding value.</p>
-        </li><!--
-          <li>
-          <p>Have the user agent <a href="#announce-datachannel-open">announce
-          <var>connection</var> as open</a>.</p>
-          </li>
-          -->
-
-        <li>
           <p>Set <var>channel</var>'s <code><a href=
           "#dom-datachannel-readystate">readyState</a></code> attribute to
-          <code>open</code>.</p>
+          <code>connecting</code>.</p>
         </li>
 
         <li>
@@ -2126,15 +2177,73 @@
           <code><a>RTCDataChannel</a></code> object was created.</p>
         </dd>
 
-        <dt>readonly attribute boolean reliable</dt>
+        <dt>readonly attribute boolean ordered</dt>
 
         <dd>
           <p>The <dfn id=
-          "dom-datachannel-reliable"><code>RTCDataChannel.reliable</code></dfn>
+          "dom-datachannel-ordered"><code>RTCDataChannel.ordered</code></dfn>
           attribute returns true if the <code><a>RTCDataChannel</a></code> is
-          reliable, and false otherwise. The attribute MUST return the value to
-          which it was set when the <code><a>RTCDataChannel</a></code> was
-          created.</p>
+          ordered, and false if other of order delivery is allowed. The
+          attribute MUST return the value to which it was set when the <code>
+          <a>RTCDataChannel</a></code> was created.</p>
+        </dd>
+
+        <dt>readonly attribute unsigned short? maxRetransmitTime</dt>
+
+        <dd>
+          <p>The <dfn id=
+          "dom-datachannel-maxretransmittime"><code
+          >RTCDataChannel.maxRetransmitTime</code></dfn> attribute returns
+          the length of the time window (in milliseconds) during which
+          retransmissions may occur in unreliable mode, or null if unset. The
+          attribute MUST return the value to which it was set when the
+          <code><a>RTCDataChannel</a></code> was created.</p>
+        </dd>
+
+        <dt>readonly attribute unsigned short? maxRetransmits</dt>
+
+        <dd>
+          <p>The <dfn id=
+          "dom-datachannel-maxretransmits"><code
+          >RTCDataChannel.maxRetransmits</code></dfn> attribute returns
+          the maximum number of retransmissions that are attempted in
+          unreliable mode, or null if unset. The attribute MUST return the
+          value to which it was set when the <code><a>RTCDataChannel</a></code>
+          was created.</p>
+        </dd>
+
+        <dt>readonly attribute DOMString protocol</dt>
+
+        <dd>
+          <p>The <dfn id=
+          "dom-datachannel-protocol"><code>RTCDataChannel.protocol</code></dfn>
+          attribute returns the name of the sub-protocol used with this <code>
+          <a>RTCDataChannel</a></code> if any, or the empty string otherwise.
+          The attribute MUST return the value to which it was set when the
+          <code><a>RTCDataChannel</a></code> was created.</p>
+        </dd>
+
+        <dt>readonly attribute boolean negotiated</dt>
+
+        <dd>
+          <p>The <dfn id=
+          "dom-datachannel-negotiated"><code>RTCDataChannel.negotiated</code>
+          </dfn> attribute returns true if this <code><a>RTCDataChannel</a>
+          </code> was automatically negotiated, or false otherwise. The
+          attribute MUST return the value to which it was set when the <code>
+          <a>RTCDataChannel</a></code> was created.</p>
+        </dd>
+
+        <dt>readonly attribute unsigned short? id</dt>
+
+        <dd>
+          <p>The <dfn id=
+          "dom-datachannel-id"><code>RTCDataChannel.id</code>
+          </dfn> attribute returns the id for this <code><a>RTCDataChannel</a>
+          </code>. The id was either assigned by the user agent at channel
+          creation time or selected by the script. The attribute MUST return
+          the value to which it was set when the <code><a>RTCDataChannel</a>
+          </code> was created.</p>
         </dd>
 
 <!--
@@ -2308,7 +2417,53 @@
       </dl>
 
       <dl class="idl" title="dictionary RTCDataChannelInit">
-        <dt>boolean reliable</dt>
+
+        <dt>boolean ordered = true</dt>
+
+        <dd>
+          <p>If set to false, data is allowed to be delivered out of order. The
+            default value of true, guarantees that data will be delivered in
+            order.</p>
+        </dd>
+
+        <dt>unsigned short? maxRetransmitTime = null</dt>
+
+        <dd>
+          <p>Limits the time during which the channel will retransmit data if
+            not successfully delivered.</p>
+        </dd>
+
+        <dt>unsigned short? maxRetransmits = null</dt>
+
+        <dd>
+          <p>Limits the number of times a channel will retransmit data if not
+            successfully delivered.</p>
+        </dd>
+
+        <dt>DOMString protocol = ""</dt>
+
+        <dd>
+          <p>Subprotocol name used for this channel.</p>
+        </dd>
+
+        <dt>boolean negotiated = true</dt>
+
+        <dd>
+          <p>The default value of true tells the user agent to negotiate the
+          channel and instruct the other peer to dispatch a corresponding
+          <code><a>RTCDataChannel</a></code> object. If set to false, the
+          negotiation is omitted and it is up to the script to create the
+          corresponding <code><a>RTCDataChannel</a></code> object at the
+          other peer.</p>
+        </dd>
+
+        <dt>unsigned short? id = null</dt>

[95 lines skipped]

Received on Monday, 3 June 2013 14:34:26 UTC