RTCPeerConnection:getSenders() 方法

Baseline 廣泛可用 *

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2020 年 1 月⁩ 起,所有主流瀏覽器均已支援。

* 此特性的某些部分可能存在不同級別的支援。

RTCPeerConnection 介面的 getSenders() 方法返回一個 RTCRtpSender 物件陣列,每個物件代表負責傳輸一個軌道資料的 RTP 傳送器。傳送器物件提供了檢查和控制軌道資料編碼及傳輸的方法和屬性。

語法

js
getSenders()

引數

無。

返回值

一個 RTCRtpSender 物件陣列,每個物件對應連線上的一個軌道。如果連線上沒有 RTP 傳送器,則陣列為空。

返回值 RTCRtpSender 例項的順序未在規範中定義,並且在每次呼叫 getSenders() 時可能會發生變化。

該陣列不包含與已停止的收發器(在 offer/answer 之後)關聯的傳送器。

示例

在此示例中,展示了一個 setMuting() 函式。該函式接收一個 RTCPeerConnection 物件 pc 和一個布林值 muting 作為輸入。該函式獲取該對等連線的傳送器列表,並遍歷每個傳送器,將相應媒體軌道的 enabled 屬性設定為指定 muting 的反值。

js
function setMuting(pc, muting) {
  let senderList = pc.getSenders();

  senderList.forEach((sender) => {
    sender.track.enabled = !muting;
  });
}

規範

規範
WebRTC:瀏覽器中的即時通訊
# dom-peerconnection-getsenders

瀏覽器相容性

另見