[webrtc-pc] Missing definition for obtaining list of all RTCIceTransport and RTCDtlsTransport

soareschen has just created a new issue for https://github.com/w3c/webrtc-pc:

== Missing definition for obtaining list of all RTCIceTransport and RTCDtlsTransport ==
The computation for appropriate states for `RTCIceGatheringState`, `RTCPeerConnectionState`, and `RTCIceConnectionState` require obtaining a list of all `RTCIceTransport` and `RTCDtlsTransport` of a peer connection. However it is not well defined on how to obtain such lists. 

As of now, the only public approach that I am aware of is:

- For `RTCDtlsTransport`, for each transceivers in _CollectTransceivers_, for each sender and receiver in transceiver, add sender's and receiver's `transport` and `rtcpTransport` value to the result set if not null. Also add the `transport` value in `peerconnection.sctp` to result set if not null.
- For `RTCIceTransport`, for each dtls transport in the peer connection, add the `transport` value of the dtls transport to the result set.

This is a very verbose and expensive way of getting list of available `RTCIceTransport` and `RTCDtlsTransport`. While browsers could have internal mechanism to compute such list, it is better to specify that in the spec so that we can be confident that all browsers always compute the same list in a given scenario.

For testing and diagnostic purpose, it would also be helpful to have public methods to retrieve the lists directly, instead of having to iterate through all transceivers to get them.

Please view or discuss this issue at https://github.com/w3c/webrtc-pc/issues/1306 using your GitHub account

Received on Thursday, 1 June 2017 10:07:10 UTC