カスタム ウェブ レシーバーにコア機能を追加する

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

このページでは、カスタム Web Receiver アプリで使用できるコード スニペットと機能について説明します。

  1. Web Receiver に備えられた組み込みのプレーヤー UI を表す cast-media-player 要素。
  2. cast-media-player 要素のカスタム CSS のようなスタイル設定。background-imagesplash-imagefont-family などのさまざまな UI 要素のスタイルを設定します。
  3. Web Receiver フレームワークを読み込むスクリプト要素。
  4. メッセージをインターセプトしてイベントを処理する JavaScript コード。
  5. 自動再生のキュー。
  6. 再生を設定するオプション。
  7. Web Receiver コンテキストを設定するオプション。
  8. Web Receiver アプリでサポートされているコマンドを設定するオプション。
  9. Web Receiver アプリケーションを起動する JavaScript 呼び出し。

アプリケーションの構成とオプション

CastReceiverContext はデベロッパーに公開される最も外側のクラスであり、基盤となるライブラリの読み込みを管理し、Web Receiver SDK の初期化を処理します。

Web Receiver API で送信者が切断されたことを検出すると、SENDER_DISCONNECTED イベントが発生します。maxInactivity で説明したとおり、ウェブ レシーバが送信者と通信できなかった場合は、SENDER_DISCONNECTED イベントが発生します。開発時に、Chrome リモート デバッガでアプリをデバッグするときに Web Receiver アプリが閉じないように、maxInactivity に高い値を設定することをおすすめします。

const context = cast.framework.CastReceiverContext.getInstance();
const options = new cast.framework.CastReceiverOptions();
options.maxInactivity = 3600; //Development only
context.start(options);

ただし、公開されている Web Receiver アプリケーションの場合、maxInactivity は設定せず、デフォルト値を使用することをおすすめします。Web Receiver オプションは、アプリケーションで 1 回だけ設定されます。

もう 1 つの構成は cast.framework.PlaybackConfig です。これは次のように設定できます。

const playbackConfig = new cast.framework.PlaybackConfig();
playbackConfig.manifestRequestHandler = requestInfo => {
  requestInfo.withCredentials = true;
};
context.start({playbackConfig: playbackConfig});

この構成は各コンテンツ再生に影響を与え、実質的にオーバーライド動作を指定します。デベロッパーがオーバーライドできる動作のリストについては、cast.framework.PlaybackConfig の定義をご覧ください。コンテンツ間の構成を変更するには、PlayerManager を使用して現在の playbackConfig を取得します。オーバーライドを変更または追加して、次のように playbackConfig をリセットします。

const playerManager =
    cast.framework.CastReceiverContext.getInstance().getPlayerManager();
const playbackConfig = (Object.assign(
            new cast.framework.PlaybackConfig(), playerManager.getPlaybackConfig()));
playbackConfig.autoResumeNumberOfSegments = 1;
playerManager.setPlaybackConfig(playbackConfig);

PlaybackConfig がオーバーライドされていない場合、getPlaybackConfig() は null オブジェクトを返します。PlaybackConfig that のプロパティはすべて undefined で、デフォルト値が使用されます。

イベント リスナー

Web Receiver SDK を使用すると、Web Receiver アプリからプレーヤーのイベントを処理できます。イベント リスナーは、リスナーをトリガーするイベントを指定する cast.framework.events.EventType パラメータ(またはこれらのパラメータの配列)を受け取ります。デバッグに役立つ事前構成済みの cast.framework.events.EventType の配列は、cast.framework.events.category にあります。イベント パラメータは、イベントに関する追加情報を提供します。

たとえば、mediaStatus の変更がブロードキャストされたタイミングを把握するには、次のロジックを使用してイベントを処理します。