RTCPeerConnection: currentLocalDescription プロパティ
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2020年1月以降、すべてのブラウザーで利用可能です。
currentLocalDescription は RTCPeerConnection インターフェイスの読み取り専用プロパティで、この RTCPeerConnection が最後にリモートピアーとのネゴシエーションおよび接続を完了して以来、最も最近正常にネゴシエーションされたピア接続のローカル側を説明する RTCSessionDescription オブジェクトを返します。
同時に、その記述が表すオファーまたは回答がまずインスタンス化されて以来、ICE エージェントによってすでに生成されている可能性のある ICE 候補の一覧も含まれています。
currentLocalDescription を変更するには、RTCPeerConnection.setLocalDescription() を呼び出します。これにより一連のイベントが開始され、この値が設定されます。
具体的にどのような処理が現れるのか、また変更が必ずしも即座に反映されない理由の詳細については、WebRTC 接続ページの待機中および現在のディスクリプションを参照してください。
メモ:
RTCPeerConnection.localDescription とは異なり、この値は接続のローカル側の実際の現在の状態を表します。
localDescription には、接続が現在切り替え中の状態に関するディスクリプションが指定されることがあります。
値
接続のローカル側の現在のディスクリプション(設定されている場合)。
正常に設定されていない場合、この値は null になります。
例
この例では、currentLocalDescription を見ていき、RTCSessionDescription オブジェクトの type および
sdp フィールドを含むアラートを表示させます。
const pc = new RTCPeerConnection();
// …
const sd = pc.currentLocalDescription;
if (sd) {
alert(`Local session: type='${sd.type}'; sdp description='${sd.sdp}'`);
} else {
alert("No local session yet.");
}
仕様書
| 仕様書 |
|---|
| WebRTC: Real-Time Communication in Browsers> # dom-peerconnection-currentlocaldesc> |
ブラウザーの互換性
メモ:
WebRTC 仕様へ currentLocalDescription および pendingLocalDescription が追加されたのは、比較的最近のことです。
これらに対応していないブラウザーでは、単に localDescription を使用してください。