RTCIceTransport 'failed' state #199

Closed
robin-raymond opened this Issue May 13, 2015 · 3 comments

Projects

None yet

2 participants

@robin-raymond
Contributor

Spec does not have an RTCIceTransport state of failed which exists both in the ICE RFC and trickle ice. We do have a disconnected state.

@robin-raymond
Contributor

disconnected

The RTCIceTransport has received at least one local and remote candidate, and a local and remote RTCIceCandidateComplete dictionary was not added as the last candidate but all appropriate candidate pairs thus far have been tested and failed (or prior obtained consent was removed). Other other candidate pairs may become available for testing as new candidates are trickled thus the transport is not failed yet.

failed

A local and remote RTCIceCandidateComplete dictionary was added as the last candidate to the RTCIceTransport and all appropriate candidate pairs have been tested and failed.

.
FYI - We could use merge checking and disconnected if we don't need distinction when it's still in the checking process vs all checks possible have completed thus far and failed...

@aboba
Contributor
aboba commented May 19, 2015

Here is a potential new state diagram:
icestate-new

@aboba
Contributor
aboba commented Jun 3, 2015

Here is a revision to the state diagram. Since it is possible to call iceTransport.start() again with a new IceGatherer argument, transitions to "New" are possible from any state other than "closed".

icestates-cont

@aboba aboba closed this Jun 11, 2015
@robin-raymond robin-raymond pushed a commit that referenced this issue Jun 22, 2015
Robin Raymond Addressed Philipp Hancke's review comments, as noted in: Issue #198
Added the "failed" state to RTCIceTransportState, as noted in: Issue #199
Added text relating to handling of incoming media packets prior to remote fingerprint verification, as noted in: Issue #200
Added a complete attribute to the RTCIceCandidateComplete dictionary, as noted in: Issue #207
Updated the description of RTCIceGatherer.close() and the "closed" state, as noted in: Issue #208
Updated Statistics API error handling to reflect proposed changes to the WebRTC 1.0 API, as noted in: Issue #214
Updated Section 10 (RTCDtmfSender) to reflect changes in the WebRTC 1.0 API, as noted in: Issue #215
Clarified state transitions due to consent failure, as noted in: Issue #216
Added a reference to [FEC], as noted in: Issue #217
894b08b
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment