CVS 2011/webrtc/editor

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

Modified Files:
	webrtc.html webrtc.js 
Log Message:
Added 20130830 archived version.

--- /sources/public/2011/webrtc/editor/webrtc.html	2013/06/03 14:34:24	1.34
+++ /sources/public/2011/webrtc/editor/webrtc.html	2013/08/30 12:39:18	1.35
@@ -129,7 +129,7 @@
         <h4>RTCConfiguration Type</h4>
 
         <dl class="idl" title="dictionary RTCConfiguration">
-          <dt>RTCIceServer[] iceServers</dt>
+          <dt>sequence&lt;RTCIceServer&gt; iceServers</dt>
 
           <dd>
             <p>An array containing STUN and TURN servers available to be used
@@ -142,18 +142,27 @@
         <h4>RTCIceServer Type</h4>
 
         <dl class="idl" title="dictionary RTCIceServer">
-          <dt>DOMString url</dt>
+          <dt>(DOMString or sequence&lt;DOMString&gt; urls</dt>
 
           <dd>
-            <p>A STUN or TURN URI as defined in [[!STUN-URI]] and
+            <p>STUN or TURN URI(s) as defined in [[!STUN-URI]] and
             [[!TURN-URI]].</p>
           </dd>
 
+          <dt>DOMString? username = null</dt>
+
+          <dd>
+            <p>If this <code><a>RTCIceServer</a></code> object represents a
+            TURN server, then this attribute specifies the username to use
+            with that TURN server.</p>
+          </dd>
+
           <dt>DOMString? credential</dt>
 
           <dd>
-            <p>If the url element of the internal array is a TURN URI, then
-            this is the credential to use with that TURN server.</p>
+            <p>If this <code><a>RTCIceServer</a></code> object represents a
+            TURN server, then this attribute specifies the credential to use
+            with that TURN server.</p>
           </dd>
         </dl>
 
@@ -163,8 +172,8 @@
 
         <p>An example array of RTCIceServer objects is:</p>
 
-        <p><code>[ { url:"stun:stun.example.net" } , {
-        url:"turn:user@turn.example.org", credential:"myPassword"} ]</code></p>
+        <p><code>[ { urls: "stun:stun1.example.net } , {
+        urls:"turn:turn.example.org", username: "user", credential:"myPassword"} ]</code></p>
       </section>
     </section>
 
@@ -202,9 +211,7 @@
 
         <p>When the <dfn id=
         "dom-peerconnection"><code>RTCPeerConnection()</code></dfn> constructor
-        is invoked, the user agent MUST run the following steps. This algorithm
-        has a synchronous section (which is triggered as part of the event loop
-        algorithm).</p>
+        is invoked, the user agent MUST run the following steps:</p>
 
         <ol>
           <li>
@@ -245,13 +252,7 @@
           </li>
 
           <li>
-            <p>Return <var>connection</var>, but continue these steps
-            asynchronously.</p>
-          </li>
-
-          <li>
-            <p>Await a stable state. The synchronous section consists of the
-            remaining steps of this algorithm.</p>
+            <p>Return <var>connection</var>.</p>
           </li>
         </ol>
 
@@ -531,7 +532,9 @@
         <h3>Interface Definition</h3>
 
         <dl class="idl" title=
-        "[Constructor (RTCConfiguration configuration, optional MediaConstraints constraints)] interface RTCPeerConnection : EventTarget ">
+        "interface RTCPeerConnection : EventTarget ">
+	  <dt>Constructor (RTCConfiguration configuration, optional MediaConstraints constraints)</dt>
+	  <dd>See the <a href="#dom-peerconnection">RTCPeerConnection constructor algorithm</a>.</dd>
         <!--
             <dt>void getCapabilities ( RTCSessionDescriptionCallback
             successCallback )</dt>
@@ -595,6 +598,14 @@
             function. Calling this method is needed to get the ICE user name
             fragment and password.</p>
 
+            <p>If the constraints parameter is malformed, throw a
+            <code>SyntaxError</code> exception and abort these steps.</p>
+
+            <p>If the constraints could not be successfully applied, the user
+            agent MUST queue a task to invoke <var>failureCallback</var> with a
+            <code>DOMError</code> object whose <code>name</code> attribute has
+            the value <code>IncompatibleConstraintsError</code>.</p>
+
             <p>If the <code>RTCPeerConnection</code> is configured to generate
             Identity assertions, then the session description SHALL contain an
             appropriate assertion.</p>
@@ -609,14 +620,8 @@
             representing the generated offer, as its argument.</p>
 
             <p>If the SDP generation process failed for any reason, the user
-            agent MUST queue a task to invoke <var>errorCallback</var> with an
-            <code>RTCError</code> object of type TBD as its argument.</p>
-
-            <p>An exception with an <code>RTCError</code> object of type
-            <code>INVALID_CONSTRAINTS_TYPE</code> is thrown if the constraints
-            parameter is malformed, and an <code>RTCError</code> object of type
-            <code>INCOMPATIBLE_CONSTRAINTS</code> is provided to the failure
-            callback if the constraints could not be successfully applied.</p>
+            agent MUST queue a task to invoke <var>failureCallback</var> with an
+            <code>DOMError</code> object of type TBD as its argument.</p>
 
             <p>To Do: Discuss privacy aspects of this from a fingerprinting
             point of view - it's probably around as bad as access to a canvas
@@ -659,6 +664,14 @@
             "#widl-RTCSessionDescription-type">type</a></code> to
             <code>"pranswer"</code>.</p>
 
+            <p>If the constraints parameter is malformed, throw a
+            <code>SyntaxError</code> exception and abort these steps.</p>
+
+            <p>If the constraints could not be successfully applied, the user
+            agent MUST queue a task to invoke <var>failureCallback</var> with a
+            <code>DOMError</code> object whose <code>name</code> attribute has
+            the value <code>IncompatibleConstraintsError</code>.</p>
+
             <p>If the <code>RTCPeerConnection</code> is configured to generate
             Identity assertions, then the session description SHALL contain an
             appropriate assertion.</p>
@@ -673,14 +686,8 @@
             representing the generated answer, as its argument.</p>
 
             <p>If the SDP generation process failed for any reason, the user
-            agent MUST queue a task to invoke <var>errorCallback</var> with an
-            <code>RTCError</code> object of type TBD as its argument.</p>
-
-            <p>An exception with an <code>RTCError</code> object of type
-            <code>INVALID_CONSTRAINTS_TYPE</code> is thrown if the constraints
-            parameter is malformed, and an <code>RTCError</code> object of type
-            <code>INCOMPATIBLE_CONSTRAINTS</code> is provided to the failure
-            callback if the constraints could not be successfully applied.</p>
+            agent MUST queue a task to invoke <var>failureCallback</var> with an
+            <code>DOMError</code> object of type TBD as its argument.</p>
           </dd>
 
           <dt>void setLocalDescription (RTCSessionDescription description,
@@ -718,9 +725,9 @@
               <li>
                 <p>If this <code><a>RTCPeerConnection</a></code> object's
                 <a href="#dom-peerconnection-signaling-state">signaling state</a> is
-                <code>closed</code>, the user agent MUST throw an exception with
-                an <code>RTCError</code> object of type <code>INVALID_STATE</code>
-                and abort this operation.</p>
+                <code>closed</code>, the user agent MUST throw an
+                <code>InvalidStateError</code> exception and abort this
+                operation.</p>
               </li>
 
               <li>
@@ -763,7 +770,7 @@
                         </p>
 
                         <p>Let <var>errorType</var> be
-                        <code>INVALID_SESSION_DESCRIPTION</code>.</p>
+                        <code>InvalidSessionDescriptionError</code>.</p>
                       </li>
 
                       <li>
@@ -778,9 +785,9 @@
 
                         <p>If rollback was not necessary or was completed
                         successfully, let <var>errorType</var> be
-                        <code>INCOMPATIBLE_SESSION_DESCRIPTION</code>. If
+                        <code>IncompatibleSessionDescriptionError</code>. If
                         rollback was not possible, let <var>errorType</var> be
-                        <code>INTERNAL_ERROR</code> and set
+                        <code>InternalError</code> and set
                         <var>connection</var>'s <a href=
                         "#dom-peerconnection-signaling-state">signaling
                         state</a> to <code>closed</code>.</p>
@@ -790,8 +797,8 @@
 
                   <li>
                     <p>Invoke the <var>failureCallback</var> with an
-                    <code>RTCError</code> object, of type
-                    <var>errorType</var>, as its argument.
+                    <code>DOMError</code> object, whose <code>name</code>
+                    attribute is <var>errorType</var>, as its argument.
                   </li>
                 </ol>
               </li>
@@ -862,7 +869,7 @@
             </ul>
           </dd>
 
-          <dt>readonly attribute RTCSessionDescription localDescription</dt>
+          <dt>readonly attribute RTCSessionDescription? localDescription</dt>
 
           <dd>
             <p>The <dfn id=
@@ -892,6 +899,16 @@
             verifies the identity following the procedures in [XREF
             sec.identity-proxy-assertion-request].</p>
 
+            <p>If any tracks on the PeerConnection have a peerIdentity
+              constraint and either the PeerConnection connection has
+              no peer identity or that identity is not equal to the
+              specified peerIdentity, the user agent MUST queue a task to
+              invoke <var>failureCallback</var> with a <code>DOMError</code>
+              object whose <code>name</code> attribute has the value
+              <code>IncompatibleConstraintsError</code>. Media must
+              not be transmitted to the other side in this case.
+            </p>
+
             <p>When the method is invoked, the user agent must follow the
             <a href="#set-description-model">processing model</a> of
             <code><a href=
@@ -899,7 +916,7 @@
             </code>.</p>
           </dd>
 
-          <dt>readonly attribute RTCSessionDescription remoteDescription</dt>
+          <dt>readonly attribute RTCSessionDescription? remoteDescription</dt>
 
           <dd>
             <p>The <dfn id=
@@ -947,14 +964,22 @@
               document the new procedure in the correct place.
             </div>
 
-            <p>An exception with an <code>RTCError</code> object of type
-            <code>INVALID_CONSTRAINTS_TYPE</code> is thrown if the constraints
-            parameter is malformed, and an <code>RTCError</code> object of type
-            <code>INCOMPATIBLE_CONSTRAINTS</code> is provided to the failure
-            callback if the constraints could not be successfully applied.</p>
+            <p>If the constraints parameter is malformed, throw a
+            <code>SyntaxError</code> exception and abort these steps.</p>
+
+            <div class="note">This method used to refer to a failiureCallback
+            it doesn't have to report IncompatibleConstraintsError. Update this
+            section when the same problem is solved for addStream().</div>
+
+            <!--p>If the constraints could not be successfully applied, the user
+            agent MUST queue a task to invoke <var>failureCallback</var> with a
+            <code>DOMError</code> object whose <code>name</code> attribute has
+            the value <code>IncompatibleConstraintsError</code>.</p-->
           </dd>
 
-          <dt>void addIceCandidate (RTCIceCandidate candidate)</dt>
+          <dt>void addIceCandidate (RTCIceCandidate candidate,
+          VoidFunction successCallback, RTCPeerConnectionErrorCallback
+          failureCallback)</dt>
 
           <dd>
             <p>The <dfn id=
@@ -967,9 +992,20 @@
             state if it results in different connectivity being
             established.</p>
 
-            <p>An exception with an <code>RTCError</code> object of type
-            <code>INVALID_CANDIDATE_TYPE</code> is thrown if candidate
-            parameter is malformed.</p>
+            <p>If the candidate parameter is malformed, throw a
+            <code>SyntaxError</code> exception and abort these steps.</p>
+
+            <p>If the candidate is successfully applied, the user
+            agent MUST queue a task to invoke <var>successCallback</var>.</p>
+
+            <p>If the candidate could not be successfully applied, the user
+            agent MUST queue a task to invoke <var>failureCallback</var> with a
+            <code>DOMError</code> object whose <code>name</code> attribute has
+            the value TBD.</p>
+
+            <div class="note">What errors do we need here? Should we reuse the
+            *SessionDescriptionError names or invent new ones for candidates?
+            Should this method be queued?</div>
           </dd>
 
           <dt>readonly attribute RTCIceGatheringState iceGatheringState</dt>
@@ -1143,9 +1179,9 @@
                 <p>If <var>connection</var>'s
                 <a href=
                 "#dom-peerconnection-signaling-state"><code>RTCPeerConnection</code>
-                signalingState</a> is <code>closed</code>, abort these steps,
-                and throw an exception with an <code>RTCError</code> object of
-                type <code>INVALID_STATE</code>.</p>
+                signalingState</a> is <code>closed</code>, throw an
+                <code>InvalidStateError</code> exception and abort these steps.
+                </p>
               </li>
 
               <li>
@@ -1157,18 +1193,33 @@
               <li>
                 <p>Add <var>stream</var> to <var>connection</var>'s <a href=
                 "#local-streams-set">local streams set</a>.</p>
+
+                <div class="note">This method used to refer to a failureCallback
+                it doesn't have. Discussion on how to report
+                IncompatibleConstraintsError taken to public-webrtc list.</div>
               </li>
 
-              <li>
+              <!--li>
                 <p>Parse the <var>constraints</var> provided by the application
                 and apply them to the MediaStream, if possible. If the
-                constraints could not be successfully applied, provide an
-                <code>RTCError</code> object of type
-                <code>INCOMPATIBLE_CONSTRAINTS</code> to the failure
-                callback.</p>
+                constraints could not be successfully applied, the user agent
+                MUST queue a task to invoke <var>failureCallback</var> with a
+                <code>DOMError</code> object whose <code>name</code> attribute
+                has the value <code>IncompatibleConstraintsError</code>.</p>
               </li>
 
               <li>
+                <p>If the stream has a <var>peerIdentity</var> constraint
+                set and the <code><a>RTCPeerConnection</a></code> is in a
+                connected state, check that the remote identity matches the
+                constraint. If there is no match,  the user agent MUST queue a
+                task to invoke <var>failureCallback</var> with a
+                <code>DOMError</code> object whose <code>name</code> attribute
+                has the value <code>IncompatibleConstraintsError</code>.</p>
+                </p>
+              </li-->
+                                                  
+              <li>
                 <p>If <var>connection</var>'s <a href=
                 "#dom-peerconnection-signaling-state">
                 <code>RTCPeerConnection</code> signalingState</a> is
@@ -1210,7 +1261,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>InvalidStateError</code> exception.</p>
               </li>
 
               <li>
@@ -1247,7 +1298,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>InvalidStateError</code> exception.</p>
               </li>
 
               <li>
@@ -1544,7 +1595,7 @@
         <h4>RTCPeerConnectionErrorCallback</h4>
 
         <dl title='callback RTCPeerConnectionErrorCallback = void' class='idl'>
-          <dt>RTCError error</dt>
+          <dt>DOMError error</dt>
 
           <dd>An error object encapsulating information about what went
           wrong.</dd>
@@ -1559,130 +1610,59 @@
         <h4>General Principles</h4>
 
         <p>Errors are indicated in two ways: exceptions and objects passed to
-        error callbacks. Both forms of error reporting MUST provide an object
-        of type <code>RTCError</code>. An exception MUST be thrown in the
-        following cases:</p>
-
-        <ul>
-          <li>The type of any argument passed to a function did not match what
-          was expected. An appropriate string from the
-          <code>RTCExceptionName</code> enum MUST be used as the error
-          name.</li>
-
-          <li>A function call was made when the RTCPeerConnection is in an
-          invalid state, or a state in which that particular function is not
-          allowed to be executed. In this case, the string
-          <code>INVALID_STATE</code> MUST be used as the error name.</li>
-        </ul>
-
-        <p>In all other cases, an error object MUST be provided to the failure
-        callback. The error name in the object provided MUST be picked from
-        either the <code>RTCExceptionName</code> or <code>RTCErrorName</code>
-        enums.</p>
-      </section>
-
-      <section>
-        <h4>RTCError</h4>
-
-        <div class="note">OPEN ISSUE: Should RTCError extend DOMError?</div>
-
-        <dl class='idl' title='interface RTCError'>
-          <dt>readonly attribute DOMString name</dt>

[451 lines skipped]
--- /sources/public/2011/webrtc/editor/webrtc.js	2013/03/22 20:39:15	1.7
+++ /sources/public/2011/webrtc/editor/webrtc.js	2013/08/30 12:39:18	1.8
@@ -22,7 +22,7 @@
   // copyrightStart: "2005",
 
   // if there is a previously published draft, uncomment this and set its YYYY-MM-DD
-  prevED: "http://dev.w3.org/2011/webrtc/editor/archives/20130322/webrtc.html",
+  prevED: "http://dev.w3.org/2011/webrtc/editor/archives/20130603/webrtc.html",
 
   // if there a publicly available Editor's Draft, this is the link
   edDraftURI: "http://dev.w3.org/2011/webrtc/editor/webrtc.html",

Received on Friday, 30 August 2013 12:39:19 UTC