StreamEvent は、「streamCreated」または「streamDestroyed」という型を持つイベントです。 これらのイベントは、別のクライアントがストリームの配信を開始または 停止した際に、Session オブジェクトによってディスパッチされます。 セッション. ローカルクライアントのストリームについては、 Publisher オブジェクトがイベントをディスパッチします。
例 — Session オブジェクトによって発信される streamCreated イベント
以下のコードは、セッションに接続し、別のクライアントによってパブリッシュされたストリームが作成された際の イベントリスナーを設定します:
session.on("streamCreated", function(event) {
subscriber = session.subscribe(event.stream, targetElement);
}).connect(token);
例 — Session オブジェクトによって発信される streamDestroyed イベント
以下のコードは、セッションに接続し、 他のクライアントのストリームが終了した際のイベントリスナーを設定します:
session.on("streamDestroyed", function(event) {
console.log("Stream " + event.stream.name + " ended. " + event.reason);
}).connect(token);
例 — Publisher オブジェクトによって発信される streamCreated イベント
以下のコードは、ストリームを公開し、ストリーミングが 開始された際のイベントリスナーを追加します
var publisher = session.publish(targetElement)
.on("streamCreated", function(event) {
console.log("Publisher started streaming.");
});
例 — Publisher オブジェクトによって発信される streamDestroyed イベント
以下のコードはストリームを配信し、配信が停止した際に PublisherをHTML DOMに残します:
var publisher = session.publish(targetElement)
.on("streamDestroyed", function(event) {
event.preventDefault();
console.log("Publisher stopped streaming.");
});
プロパティ
| 名称 | タイプ | 説明 |
|---|---|---|
cancelable |
ブーリアン | そのイベントに、キャンセル可能なデフォルトの挙動があるかどうか(true)または(false). 以下の関数を呼び出すことで、デフォルトの動作を無効にすることができます。 preventDefault() イベントリスナー関数内のStreamEventオブジェクトのメソッド。その streamDestroyed イベントはキャンセル可能です。(参照: preventDefault().) |
reason |
ストリング | の場合 streamDestroyed イベント、ストリームが破棄された理由の説明。このプロパティには、以下のいずれかの値が設定できます: - "clientDisconnected" — クライアントが を呼び出してセッションから切断しました。 disconnect() Session オブジェクトのメソッドを使用するか、ブラウザを閉じることで。 (参照: Session.disconnect().) - "forceDisconnected" — モデレーターが、 forceDisconnect() Session オブジェクトのメソッド。(参照: Session.forceDisconnect().) - "forceUnpublished" — モデレーターが、ストリームの配信者に対し、以下の措置を講じるよう求め、配信の中止を強制した。 forceUnpublish() Session オブジェクトのメソッド。(参照: Session.forceUnpublish().) - "mediaStopped" — ストリームを配信しているユーザーがメディアの共有を停止しました。 たとえば、ユーザーが画面共有ストリームのソースとなっているウィンドウを閉じた場合や、音声のみのストリームの音声ソースとなっていたマイクを取り外した場合、あるいは動画および音声のソースが MediaStreamTrack 要素であり、メディアのソースが停止または破棄された場合などが挙げられます。 - "networkDisconnected" — ネットワーク接続が突然切断され(たとえば、クライアントのインターネット接続が切断された場合など)、Vonage Video API プラットフォームによってそれが検出されました。 - "reset" — ある出版社のストリームは、その出版社への呼びかけを受けて、 Publisher.destroy() メソッド。 - "serverRotation" — パブリッシャーのストリームが破棄されたのは、クライアントが以下の理由によりセッションから切断されたためです。 Video API サーバーのローテーション. 状況によっては、この説明により、開発者はイベントへの対応策を微調整できる場合があります。 例えば、 streamCreated イベントの場合、この文字列は未定義となります。 |
stream |
ストリーム | 追加されたストリームに対応する Stream オブジェクト( streamCreated イベント)または削除される(の場合には streamDestroyed イベント)。 |
streams |
配列 | 非推奨です。代わりに stream プロパティ。A streamCreated または streamDestroyed ストリームが追加または破棄されるたびに、このイベントがディスパッチされます。 |
方法
| 名称 | 説明 |
|---|---|
isDefaultPrevented() → {Boolean} |
デフォルトのイベント動作が、以下の呼び出しによって阻止されたかどうか preventDefault() (true)または(false). |
preventDefault() |
そのイベントに関連するデフォルトの動作が行われるのを防ぎます。 |
isDefaultPrevented() →{Boolean}
デフォルトのイベント動作が、以下の呼び出しによって阻止されたかどうか
preventDefault() (true)または(false).
参照 preventDefault().
リターンズ
preventDefault()
そのイベントに関連するデフォルトの動作が行われるのを防ぎます。
については streamDestroyed Session オブジェクトによってディスパッチされたイベントの場合、
デフォルトの動作として、そのストリームを購読しているすべての Subscriber オブジェクトの
購読が解除され、HTML DOM から削除されます。各 Subscriber オブジェクトは、
destroyed 要素がHTML DOMから削除されたときに発生するイベントです。もし
preventDefault() のイベントリスナー内のメソッド streamDestroyed
イベントが発生すると、デフォルトの動作が抑制され、独自のコードを使用して
Subscriber オブジェクトをクリーンアップできるようになります。詳しくは
Session.getSubscribersForStream().
については streamDestroyed Publisher オブジェクトによってディスパッチされたイベントの場合、デフォルトの
動作として、その Publisher オブジェクトは HTML DOM から削除されます。Publisher オブジェクトは
イベントをディスパッチします。 destroyed 要素がHTML DOMから削除された際のイベント。
もし preventDefault() のイベントリスナー内のメソッド
streamDestroyed イベントが発生すると、デフォルトの動作が抑制され、
パブリッシャーを再利用するために保持したり、独自のコードを使用してクリーンアップしたりすることができます。
イベントにデフォルトの動作があるかどうかを確認するには、 cancelable イベントオブジェクトの
プロパティ。
に電話する。 preventDefault() そのイベントのイベントリスナー関数内のメソッド。