- From: Bernard Aboba <Bernard.Aboba@microsoft.com>
- Date: Mon, 22 Jun 2015 21:26:14 +0000
- To: "public-ortc@w3.org" <public-ortc@w3.org>
- Message-ID: <AE4D0EE7-8BD9-4CDE-B03F-4D29F0E932EB@microsoft.com>
The May Editor's draft contains the following in Section 3.7:
3.7 enum RTCIceTransportState
RTCIceTransportState represents the current state of the ICE transport.
enum RTCIceTransportState {
"new<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransportState.new>",
"checking<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransportState.checking>",
"connected<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransportState.connected>",
"completed<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransportState.completed>",
"disconnected<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransportState.disconnected>",
"closed<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransportState.closed>"
};
Enumeration description
new
The RTCIceTransport<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransport> object is waiting for remote candidates to be supplied. In this state the object can respond to incoming connectivity checks.
checking
The RTCIceTransport<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransport> has received at least one remote candidate, and a local and remote RTCIceCandidateComplete<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceCandidateComplete> dictionary was not added as the last candidate. In this state the RTCIceTransport<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransport> is checking candidate pairs but has not yet found a successful candidate pair, or liveness checks have failed (such as those in [CONSENT<http://ortc.org/wp-content/uploads/2015/05/ortc.html#bib-CONSENT>]) on a previously successful candidate pair.
connected
The RTCIceTransport<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransport> has received a response to an outgoing connectivity check, or has received incoming DTLS/media after a successful response to an incoming connectivity check, but is still checking other candidate pairs to see if there is a better connection. In this state outgoing media is permitted.
completed
A local and remote RTCIceCandidateComplete<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceCandidateComplete> dictionary was added as the last candidate to the RTCIceTransport<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransport> and all appropriate candidate pairs have been tested and at least one functioning candidate pair has been found.
disconnected
A local and remote RTCIceCandidateComplete<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceCandidateComplete> dictionary was added as the last candidate to the RTCIceTransport<http://ortc.org/wp-content/uploads/2015/05/ortc.html#idl-def-RTCIceTransport> and all appropriate candidate pairs have been tested and failed.
closed
The ICE Transport has shut down and is no longer responding to STUN requests.
The non-normative ICE state transitions are:
[The non-normative ICE State Transition Diagram]
As has been noted, this omits the "failed" state as well as the impact of consent failure on states other than "checking". Proposal is to replace with the following:
3.6 enum RTCIceTransportState
RTCIceTransportState represents the current state of the ICE transport.
enum RTCIceTransportState {
"new<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransportState.new>",
"checking<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransportState.checking>",
"connected<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransportState.connected>",
"completed<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransportState.completed>",
"disconnected<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransportState.disconnected>",
"failed<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransportState.failed>",
"closed<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransportState.closed>"
};
Enumeration description
new
The RTCIceTransport<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransport> object is waiting for remote candidates to be supplied. In this state the object can respond to incoming connectivity checks.
checking
The RTCIceTransport<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransport> has received at least one remote candidate, and a local and remote RTCIceCandidateComplete<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceCandidateComplete> dictionary was not added as the last candidate. In this state the RTCIceTransport<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransport> is checking candidate pairs but has not yet found a successful candidate pair, or liveness checks have failed (such as those in [CONSENT<http://ortc.org/wp-content/uploads/2015/06/ortc.html#bib-CONSENT>]) on a previously successful candidate pair.
connected
The RTCIceTransport<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransport> has received a response to an outgoing connectivity check, or has received incoming DTLS/media after a successful response to an incoming connectivity check, but is still checking other candidate pairs to see if there is a better connection. In this state outgoing media is permitted.
completed
A local and remote RTCIceCandidateComplete<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceCandidateComplete> dictionary was added as the last candidate to the RTCIceTransport<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransport> and all appropriate candidate pairs have been tested and at least one functioning candidate pair has been found.
disconnected
The RTCIceTransport<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransport> has received at least one local and remote candidate, and a local and remote RTCIceCandidateComplete<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceCandidateComplete> dictionary was not added as the last candidate, but all appropriate candidate pairs thus far have been tested and failed (or consent checks [CONSENT<http://ortc.org/wp-content/uploads/2015/06/ortc.html#bib-CONSENT>], once successful, have now failed). Other candidate pairs may become available for testing as new candidates are trickled, and therefore the "failed" state has not been reached.
failed
A local and remote RTCIceCandidateComplete dictionary was added as the last candidate to the RTCIceTransport<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransport> and all appropriate candidate pairs have been tested and failed.
closed
The RTCIceTransport<http://ortc.org/wp-content/uploads/2015/06/ortc.html#idl-def-RTCIceTransport> has shut down and is no longer responding to STUN requests.
The non-normative ICE state transitions are:
[The non-normative ICE State Transition Diagram]
Received on Monday, 22 June 2015 21:26:46 UTC