4.1.20. onicecandidate Event (イベント)
4.1.20. onicecandidate Event (イベント)
onicecandidate イベントは, 2 つの状況でアプリケーションにディスパッチされます。(1) ICE エージェントが ICE 収集中に新しい許可されたローカル ICE 候補を発見したとき (セクション 3.5.1 で概説され, セクション 3.5.3 で説明されている制限の対象), または (2) ICE 収集フェーズが完了したとき。イベントには, セクション 3.5.2.1 で定義されているように, 単一の IceCandidate オブジェクトが含まれます。
最初のケースでは, 新しく発見された候補が IceCandidate オブジェクトに反映され, そのすべてのフィールドは非 null でなければなりません。この候補は, Trickle ICE に対して定義されたルールに従って, 現在および/または保留中のローカル記述にも追加されます。
2 番目のケースでは, イベントの IceCandidate オブジェクトの candidate フィールドを null に設定して, 現在の収集フェーズが完了したこと, つまりこのフェーズではこれ以上 onicecandidate イベントがないことを示さなければなりません。ただし, IceCandidate の ufrag フィールドを指定して, どの ICE 候補生成が終了しているかを示さなければなりません。IceCandidate の "m=" セクションインデックスと MID フィールドを指定して, イベントが特定の "m=" セクションに適用されることを示すか, null に設定して現在の ICE 候補生成のすべての "m=" セクションに適用されることを示すことができます。このイベントは, [RFC8838] のセクション 13 で定義されているように, アプリケーションが候補終了指示を生成するために使用できます。