RTCIceCandidateStats
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since February 2020.
* Some parts of this feature may have varying levels of support.
The RTCIceCandidateStats
dictionary of the WebRTC API is used to report statistics related to an RTCIceCandidate
.
The statistics can be obtained by iterating the RTCStatsReport
returned by RTCPeerConnection.getStats()
until you find a report with the type
of local-candidate
.
Instance properties
address
Optional-
A string containing the address of the candidate. This value may be an IPv4 address, an IPv6 address, or a fully-qualified domain name. This property was previously named
ip
and only accepted IP addresses. Corresponds toRTCIceCandidate.address
. candidateType
-
A string matching one of the values in
RTCIceCandidate.type
, indicating what kind of candidate the object provides statistics for. foundation
Optional-
A string that uniquely identifies the candidate across multiple transports. Corresponds to
RTCIceCandidate.foundation
. port
Optional-
The network port number used by the candidate. Corresponds to
RTCIceCandidate.port
. priority
Optional-
The candidate's priority. Corresponds to
RTCIceCandidate.priority
. protocol
Optional-
A string specifying the protocol (
tcp
orudp
) used to transmit data on theport
. Corresponds toRTCIceCandidate.protocol
. transportId
-
A string uniquely identifying the transport object that was inspected in order to obtain the
RTCTransportStats
associated with the candidate corresponding to these statistics. usernameFragment
Optional-
A string containing the ICE username fragment ("ice-ufrag"). Corresponds to
RTCIceCandidate.usernameFragment
.
Common instance properties
The following properties are common to all WebRTC statistics objects.
id
-
A string that uniquely identifies the object that is being monitored to produce this set of statistics.
timestamp
-
A
DOMHighResTimeStamp
object indicating the time at which the sample was taken for this statistics object. type
-
A string with the value
"local-candidate"
, indicating the type of statistics that the object contains.
Examples
Given a variable myPeerConnection
, which is an instance of RTCPeerConnection
, the code below uses await
to wait for the statistics report, and then iterates it using RTCStatsReport.forEach()
.
It then filters the dictionaries for just those reports that have the type of local-candidate
and logs the result.
const stats = await myPeerConnection.getStats();
stats.forEach((report) => {
if (report.type === "local-candidate") {
// Log the ICE candidate information
console.log(report);
}
});
Specifications
Specification |
---|
Identifiers for WebRTC's Statistics API # dom-rtcstatstype-local-candidate |