これらのガイドは、業種の概念を、プラットフォームに現在あるオブジェクト(ブーケ、回線、パッケージ、パートナーアカウント、ノード、API)に対応づけるものです。概念上の対応づけであり、業種専用の機能ではありません。また、パートナーアカウントは委任アカウントであり、分離されたテナントではありません。
概念の対応づけ
パネルに番組やサポーターという名前のものはありません。どのオブジェクトがどの役割を担うかを表で示し、以降の章ではその順にセットアップします。
| あなたの業種では | プラットフォームでは | パネル内の場所 |
|---|---|---|
| スタジオのチャンネル | ライブチャンネル:ソース、EPG、出力フォーマットを持つストリーム | Streams → ライブストリームを追加(ソース URL または RTMP プッシュ) |
| 番組ライブラリ | VOD カタログ:シーズンとエピソードを持つ映画とシリーズ、カテゴリ、メタデータ | Movies と Series、または VOD インジェストジョブ |
| 購読ティア | ブーケ:パッケージが付与する、チャンネル・映画・シリーズの名前付きセット | Bouquets。Streams と Movies / Series から作成 |
| サポーターのアクセス | 回線:パッケージ、ブーケ、有効期限、接続数の上限、出力を持つ1件のアクセス | Lines → 追加、またはアクティベーションコード、または Reseller API |
| 請求期間 | 回線の有効期限。パッケージ、クレジット、API で更新されます | 回線の有効期限とパッケージの期間 |
| アフィリエイターまたはリセラーのアカウント | パートナーアカウント(リセラー):クレジット、権限、専用回線を持つ委任ダッシュボード | Users → リセラーを追加。権限は Groups で設定 |
| ショップまたは会員制サービスとの連携 | Reseller API と Webhook:ご自身のシステムからパネルの操作を行う手段 | リセラーのダッシュボードにある Reseller API キーと Webhook |
前提条件
インストール前に用意するもの。
- 公開アドレスまたはドメインを持つサーバー(Ubuntu 22.04 または 24.04)と、想定する視聴者数に十分なアップストリーム帯域。
- 完成したエピソード、チャンネル用のスタジオのプレイアウトまたはエンコーダー、コネクターのあるプラットフォーム上のショップ、または HTTP API を呼び出せる環境。
- ティアとアフィリエイターの方針。各購読が何を付与するか、誰が販売できるかを決めておきます。
インフラの導入
まず 1 台のサーバー、視聴者が増えたらノード。
- 管理サーバーでインストーラーを実行し、パネルを TLS 付きのリバースプロキシの背後に置きます。信頼するプロキシを設定して、IP ルールが視聴者の実際のアドレスを認識できるようにします。
- 再生のベース URL を、視聴者がアクセスする公開アドレスに設定します。
- サポーターが多く視聴する地域に Servers からノードを登録します。パネルが SSH でインストールし、その地域の視聴者をノードへ振り分けます。
- カタログやサポーターを運営するスタッフごとに、専用の権限グループを持つパートナーアカウント(リセラー)を作成します。
コンテンツの整理
番組はシリーズ、ティアはブーケ。
- ジャンルごとにカテゴリを作成し、番組ごとに 1 つのシリーズ、リリースのまとまりごとに 1 シーズン、動画ごとに 1 エピソードを作ります。
- ライブチャンネル用のブーケ、無料または入門コンテンツ用のブーケ、上位ティアごとのブーケを作成します。
- ティアごとに請求期間を期間とするパッケージを 1 つ作成し、必要なら新規訪問者向けの体験パッケージと、アフィリエイター向けのクレジット価格も設定します。
- バックカタログは専用カテゴリに置き、シリーズに触れずにティア間を移せるようにします。
パートナー(リセラー)の設定
アフィリエイターとリセラー。
- アフィリエイター用に、回線の権限だけを持つグループを作成し、カタログを変更できないようにします。
- 各アフィリエイターをそのグループとクレジット残高を持つリセラーとして追加します。そのパッケージ価格はスタジオが決めます。
- サブアフィリエイターを持つリセラーは、自分のアカウントの下にサブリセラーを最大 5 階層まで作成できます。
サポーターのアクセス設定
サポーターごとに 1 つの回線。
- ショップのコネクター(たとえば WooCommerce)をインストールし、Reseller API キーと、各商品に対応するパッケージを入力します。
- 購読時にコネクターがパッケージとリクエスト ID を指定して create_line を呼び出します。請求期間がパッケージの期間になります。
- 最大接続数をサポーターが使えるデバイスの数(通常は 2〜3 台)に設定します。
- プレゼント企画やローンチでは、アクティベーションコードを一括生成するか、Lines → 追加 から体験パッケージで回線を追加します。
番組ライブラリ
エピソードをオンデマンドで。
- 各エピソードをソースとしてアップロードするか、VOD 取り込みジョブで取り込みます。タイトル、シーズン、エピソード番号、番組に TMDB のメタデータがあればそれも入力します。
- 各シリーズを、視聴できるティアのブーケに紐づけます。
- リリースを告知する前に、各ティアのテスト用回線で再生を確認します。
スタジオのチャンネル
24 時間のチャンネル。
- スタジオのプレイアウト用にライブストリーム(RTMP プッシュ)を追加し、チャンネルを含むすべてのティアのブーケに入れます。
- チャンネルの番組表を XMLTV として読み込み、サポーターが放送内容を見られるようにし、再視聴する価値のある番組ではキャッチアップを有効にします。
- リリースの合間も、スタジオ自身の編成コンテンツでプレイアウトを動かし続けます。パネルはストリームを中継するだけです。
契約の有効期限
アクセスは支払いに連動する。
- 回線はパッケージの期間の終了時に失効します。次の支払いが届くと、ショップが renew_line で更新します。
- ショップを Webhook に登録し、line.expiring でリマインダーを送り、line.expired でサポーターのティアを下げます。
- 解約したサポーターは、ショップが disable_line で無効にします。回線は新しいアカウントなしで後から更新できます。
ショップとの連携
ショップが販売し、プレーヤーが再生する。
- コネクターは注文に合わせて回線を作成・更新・無効化します。それ以外のショップは Reseller API と Webhook を使います。
- アフィリエイターは自分のダッシュボードで自分の回線を確認でき、Reseller API で自動化もできます。
- 視聴者向けのシングルサインオンはありません。サポーターは、ショップから送られた回線の認証情報でプレーヤーにログインします。
セキュリティ上の考慮事項
サーバーだけでなく、購読を守る。
- パネルと再生のベース URL は TLS で提供し、TRUSTED_PROXIES をリバースプロキシに設定します。
- すべてのパネルアカウントに二要素認証を使い、アフィリエイターがカタログを変更できないよう権限グループを設定します。
- 署名付きで期限のある再生リンクと回線ごとの同時接続数制限を使い、ライセンスが地域限定の場合は回線を国に紐づけます。
- オフサイトコピー付きの暗号化データベースバックアップと、回線とカタログのすべての変更を記録する監査ログ。
トラブルシューティング
最初に確認する一般的なポイント。
- 新しいサポーターが支払い後に視聴できない:Reseller API ログでショップコネクターの呼び出しと、回線の有効期限を確認します。
- サポーターに上位ティアのコンテンツが見える:回線のパッケージと、それが付与するブーケを確認します。
- プレイアウトの周期の終わりでチャンネルが止まる:エンコーダーからライブストリームへのプッシュと、ストリームのプローブ状況を確認します。
- アフィリエイターの販売が表示されない:クレジットと、使用したパッケージがそのグループに属しているかを確認します。