Re: Issue 188: Priority calculation not possible without knowing component

Submitted by Robin Raymond:
https://github.com/openpeer/ortc/issues/188


https://tools.ietf.org/html/rfc5245#section-4.1.2.1

   priority = (2^24)*(type preference) +

              (2^8)*(local preference) +

              (2^0)*(256 - component ID)

The trouble is that the gatherer will start gathering on construction and reporting candidates. The trouble is the priority cannot be calculated as per recommendation because the component ID is not known upon construction. Associated RTCP based gatherers are passed into the start method for a transport created by "createAssociatedTransport()" but the gatherer is not specifically an RTCP based gatherer:

[BA] Proposed resolution is to add a component attribute as well as an createAssociatedGatherer() method as follows:
Partial interface RTCIceGatherer : RTCStatsProvider {
    readonly    attribute RTCIceComponent     component<http://internaut.com:8080/~baboba/ortc/ortc-5-01-2015.html#widl-RTCIceGatherer-component>;
    RTCIceGatherer            createAssociatedGatherer ();

};
Section 5.3.2:

createAssociatedGatherer
Create an associated RTCIceGatherer for RTCP. If state is "closed", throw an InvalidStateError exception. If called more than once for the same component or if component is "RTCP", throw an InvalidStateError exception.
No parameters.
Return type: RTCIceGatherer

Received on Friday, 1 May 2015 17:29:57 UTC