RTCIceTransport: sự kiện gatheringstatechange
Baseline
2024
Newly available
Since April 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Sự kiện gatheringstatechange được gửi đến RTCIceTransport khi trạng thái thu thập ứng cử viên ICE của nó thay đổi.
Trạng thái thu thập, có thể tìm thấy trạng thái thực trong thuộc tính gatheringState của đối tượng truyền tải, cho biết liệu tác nhân ICE đã bắt đầu thu thập ứng cử viên trên truyền tải này chưa, và nếu có, liệu nó đã hoàn thành chưa.
Sự kiện này không thể hủy và không nổi bong bóng.
Cú pháp
Sử dụng tên sự kiện trong các phương thức như addEventListener(), hoặc đặt thuộc tính trình xử lý sự kiện.
addEventListener("gatheringstatechange", (event) => { })
ongatheringstatechange = (event) => { }
Kiểu sự kiện
Một Event chung.
Ví dụ
Ví dụ này tạo một trình xử lý cho các sự kiện gatheringstatechange trên mỗi RTCRtpSender liên kết với một RTCPeerConnection đã cho. Ở đây, phương thức addEventListener() được gọi để thêm một trình lắng nghe cho các sự kiện gatheringstatechange:
pc.getSenders().forEach((sender) => {
sender.transport.iceTransport.addEventListener(
"gatheringstatechange",
(ev) => {
let transport = ev.target;
if (transport.gatheringState === "complete") {
/* truyền tải này đã hoàn thành thu thập ứng cử viên,
nhưng các truyền tải khác có thể vẫn đang thực hiện */
}
},
);
});
Tương tự, bạn có thể sử dụng thuộc tính trình xử lý sự kiện ongatheringstatechange:
pc.getSenders().forEach((sender) => {
sender.transport.iceTransport.ongatheringstatechange = (ev) => {
let transport = ev.target;
if (transport.gatheringState === "complete") {
/* truyền tải này đã hoàn thành thu thập ứng cử viên,
nhưng các truyền tải khác có thể vẫn đang thực hiện */
}
};
});
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| WebRTC: Real-Time Communication in Browsers> # event-icetransport-gatheringstatechange> |
| WebRTC: Real-Time Communication in Browsers> # dom-rtcicetransport-ongatheringstatechange> |