RTCIceTransport
Baseline 2024 *
新推出
RTCIceTransport 介面提供了訪問資料傳送和接收所經過的 ICE 傳輸層的資訊。如果您需要訪問連線的狀態資訊,這將特別有用。
例項屬性
RTCIceTransport 介面繼承了其父介面 EventTarget 的屬性。它還提供了以下屬性:
component只讀-
傳輸所使用的 ICE 元件。該值是
RTCIceTransport列舉型別中的一個字串:"RTP"或"RTSP"。 gatheringState只讀-
指示 ICE 代理當前收集狀態的字串:
"new"、"gathering"或"complete"。 role只讀-
返回一個字串,其值為
"controlling"或"controlled";這表示 ICE 代理是否是最終決定使用哪個候選對的一方。 state只讀-
指示 ICE 代理當前狀態的字串。
state的值可用於確定 ICE 代理是否已使用可行的候選對建立初始連線("connected")、已完成候選對的最終選擇("completed")或處於錯誤狀態("failed"),以及其他狀態。
例項方法
還包括來自父介面 EventTarget 的方法。
getLocalCandidates()-
返回一個
RTCIceCandidate物件陣列,每個物件描述了迄今為止為本地裝置收集到的 ICE 候選。這些與透過向RTCPeerConnection傳送icecandidate事件以進行傳輸的候選是相同的。 getLocalParameters()-
返回一個
RTCIceParameters物件,描述了透過呼叫RTCPeerConnection.setLocalDescription()方法建立的 ICE 引數。如果尚未收到引數,則返回null。 getRemoteCandidates()-
返回一個
RTCIceCandidate物件陣列,每個物件代表本地RTCPeerConnection已接收並呼叫addIceCandidate()將其傳遞給 ICE 的遠端裝置的一個 ICE 候選。 getRemoteParameters()-
返回一個
RTCIceParameters物件,其中包含遠端裝置的 ICE 引數,該引數是透過呼叫RTCPeerConnection.setRemoteDescription()設定的。如果尚未呼叫setRemoteDescription(),則返回值是null。 getSelectedCandidatePair()-
返回一個
RTCIceCandidatePair物件,該物件標識迄今為止已選定的兩個候選對——每個連線端一個。之後可能找到並選擇更好的候選對;如果您需要跟蹤這一點,請留意selectedcandidatepairchange事件。如果尚未選擇任何候選對,則返回值為null。
事件
使用 addEventListener() 監聽這些事件,或透過將事件監聽器分配給此介面的 oneventname 屬性。
gatheringstatechange-
傳送到
RTCIceTransport物件,表示gatheringState屬性的值已更改,表明此傳輸的 ICE 候選協商過程發生了變化。也可透過ongatheringstatechange事件處理程式屬性訪問。 selectedcandidatepairchange-
當已選擇一個新的、更好的候選對來描述兩個對等點之間的連線性時,傳送到
RTCIceTransport。這發生在協商或重新協商期間,包括在 ICE 重啟後,ICE 重啟會重用現有的RTCIceTransport物件。當前候選對可以使用getSelectedCandidatePair()獲取。也可透過onselectedcandidatepairchange事件處理程式屬性訪問。 statechange-
當
state屬性的值發生更改時,傳送到RTCIceTransport例項,表明 ICE 收集過程的狀態已更改。也可透過onstatechange事件處理程式屬性訪問。
示例
待定
規範
| 規範 |
|---|
| WebRTC:瀏覽器中的即時通訊 # dom-rtcicetransport |
瀏覽器相容性
載入中…