配信/視聴をユーザーごとに制限する

Castify プラットフォームへのライブ配信や視聴は、デフォルトの状態では認証されず、第三者が自由にそれらのアクションを行うことができます。

ですが、以下のように Webhookカスタムデータ の仕組みを利用することで、特定の条件を満たしたユーザーにのみアクションを許可するように構成することができます。

  1. カスタムデータにユーザーを認証するデータ(= 認証情報)を格納する

  2. Webhook でカスタムデータの内容をチェックし、認証情報が不正な場合はエラーを返す

サンプルコード

上記に説明した流れを実際にコード化すると以下のようになります。

Webhook

視聴開始 Webhook に以下のような処理の Webhook を登録します。

<?php

$msg = json_decode(file_get_contents("php://input"));

if (!$msg) {
  throw new Exception("Failed to parse a request body.");
}

if (!is_valid_credential($msg["request"]["customData"])) {
  throw new Exception("Invalid credential.");
}

配信アプリ

Broadcaster のコンストラクターのパラメーター customData に認証情報を渡します。

// Assuming that "castifyApp" is of the "CastifyApp" class.
let broadcaster = Broadcaster(castifyApp, customData: userCredential)