主要な概念 key-concepts
同時視聴数モニタリングのコアコンセプトを理解することは、導入を成功させるために不可欠です。 このガイドでは、基本的な構成要素とその仕組みについて説明します。
コアコンセプト core-concepts
セッション
セッションは、アクティブなビデオ ストリーミング インスタンスを表します。 それは、ユーザーがコンテンツを視聴できる「チケット」だと考えてください。
セッションのライフサイクル
- 作成 - ユーザーがコンテンツの視聴を開始したとき
- アクティブ - ユーザーが視聴中(ハートビートによって維持)
- 終了 - ユーザーが視聴を停止するか、セッションの有効期限が切れる場合
セッションのプロパティ
{
"sessionId": "unique-session-identifier",
"idp": "identity-provider",
"subject": "user-identifier",
"startTime": "2024-01-15T10:30:00Z",
"expiresAt": "2024-01-15T10:40:00Z",
"metadata": {
"deviceId": "device-123",
"channel": "Channel1",
"contentType": "live"
}
}
ポリシー
ポリシーは、同時ストリーミングの制限と制限を定義するビジネス ルールです。 ユーザーが新しいストリームを開始できるタイミングを決定します。
ポリシーコンポーネント
- ルール – 特定の制限と条件
- メタデータ要件 – 必要なデータ
- 評価ロジック - ポリシーの適用方法
ポリシー例
{
"name": "basic_stream_limit",
"description": "Maximum 3 concurrent streams per user",
"rules": [
{
"type": "maxstreams",
"limit": 3,
"message": "You have reached your maximum of 3 concurrent streams"
}
]
}
メタデータ
メタデータは、各セッションに関するコンテキストを提供します。 デバイス、コンテンツ、ユーザー、アプリケーションに関する情報が含まれます。
メタデータカテゴリー
カテゴリ
例
目的
デバイス
deviceId, deviceType, osNameデバイスの特定と分類
コンテンツ
channel, contentType, assetId監視している情報を記述する
ユーザー
subject, subscriptionTierユーザー固有の情報
アプリケーション
applicationName, applicationPlatformアプリ固有の詳細
場所
country, hba地域とネットワークの情報
必須メタデータと任意メタデータ
- 必要なメタデータ - セッション作成に提供する必要があります
- オプションのメタデータ – 強化されたポリシーに対して指定できます
- 標準メタデータ – すべてのアプリケーションで使用可能な定義済みフィールド
- カスタムメタデータ – 定義したアプリケーション固有のフィールド
IDと認証 identity-and-authentication
ID プロバイダー(IdP)
ID プロバイダーは、ユーザーを認証し、ID情報を提供するサービスです。 Adobe Passとの統合では、通常、MVPDを使用します。
IdPの例
- ケーブル会社(Comcast、Charterなど)
- 衛星プロバイダー(DirecTV、Dish)
- ストリーミングサービス(Netflix、Hulu)
- 携帯電話会社(Verizon、AT&T)
件名
件名は、ID プロバイダー内のユーザーの一意のIDです。 これは通常、ユーザーのアカウント IDまたはサブスクライバーIDです。
セッション管理 session-management
ハートビート
ハートビートは、セッションをアクティブに保つ定期的なAPI呼び出しです。 「このユーザーはまだ見ている」とシステムに伝えます。
ハートビート要件
- 頻度 - 60秒ごと(推奨)
- 目的 - セッションを維持し、メタデータを更新します
- 終了 - ハートビートが停止すると、セッションは期限切れになります
セッションの終了
セッションは、次の方法で終了できます。
- ユーザーが視聴を停止します - アプリケーションがDELETE エンドポイントを呼び出します
- セッションの有効期限 - タイムアウト内にハートビートが受信されませんでした
- ポリシー違反 – 新しいセッションは古いセッションを終了します(FIFO)
- リモート終了 – 別のデバイスがセッションを終了します
ポリシー評価 policy-evaluation
ポリシーの仕組み
- ユーザーが新しいストリームを要求
- システムは、現在の使用状況に対してポリシーを評価します
- 決定 – 許可または拒否
- 応答が送信されました – 成功または競合の情報
対立の解消 conflict-resolution
対立とは?
競合は、ユーザーが新しいストリームを開始しようとしたが、その制限を超えた場合に発生します。
対立への対応
競合が発生すると、システムは詳細な情報を含む409 Conflict応答を返します。
{
"status": "error",
"error": {
"code": "POLICY_VIOLATION",
"message": "Concurrent usage limit exceeded"
},
"evaluationResult": {
"decision": "DENY",
"associatedAdvice": [
{
"adviceType": "rule-violation",
"attributes": {
"rule": "max_streams",
"threshold": 3,
"current": 4,
"conflicts": [
{
"sessionId": "session-123",
"terminationCode": "term-456",
"metadata": {...}
}
]
}
}
]
}
}
解決戦略
LIFO (後入れ先出し)
- 古いセッションは保護されています
- 新しいセッションがブロックされています
- よりシンプルなUI
- 拡大表示に適しています
FIFO (先入れ先出し)
- 新しいセッションは既存のセッションを終了します
- ユーザーが停止するセッションを選択します
- より複雑なUIが必要
- コンテンツ切り替え機能のメリット
アプリケーションとテナント applications-and-tenants
アプリケーション
アプリケーションは、同時視聴数モニタリングと統合するソフトウェア プログラムです。 各アプリケーションには一意のIDがあり、独自のポリシーを持つことができます。
アプリケーション例
- モバイルアプリ(iOS/Android)
- Web アプリケーション
- スマートテレビアプリ
- セットトップボックスアプリケーション
テナント
テナントは、1つ以上のアプリケーションを所有する組織です。 テナントはアプリケーション間でポリシーを共有できます。
テナント構造
Tenant: "Streaming Company"
├── Application: "Mobile App"
├── Application: "Web App"
└── Application: "TV App"
環境 environments
ステージング環境
- 目的 – 開発とテスト
- URL -
https://streams-stage.adobeprimetime.com/v2/ - 資格情報 - アプリケーション IDのテスト
- データ - テスト データのみ
本番環境
- 目的 - ライブユーザートラフィック
- URL -
https://streams.adobeprimetime.com/v2/ - 資格情報 – 実稼動アプリケーション ID
- データ – 実際のユーザーデータ
統合フロー integration-flow
基本フロー
- User Authentication - Adobe Passによる認証
- セッション作成 - ユーザーメタデータを使用したCM セッションの作成
- ハートビート管理 – 定期的なハートビートの送信
- セッション終了 - ユーザーが視聴を停止すると終了する
エラー処理
- 404が見つかりません - CM サービスによって生成されていないセッション IDを持つリクエストを処理します
- 409件の競合 - ポリシー違反の処理
- 410 Gone - セッション終了の処理
- ネットワークエラー – 接続の問題を処理します
- 認証エラー – 資格情報の問題を処理します
一般的な用語 common-terminology
条件
定義
セッション
アクティブ動画ストリーミングインスタンス
ポリシー
使用制限を定義するビジネスルール
メタデータ
セッションに関するコンテキスト情報
IDP
ID プロバイダー(認証サービス)
件名
IDP内のユーザーID
ハートビート
セッションをアクティブに保つための定期呼び出し
競合
新しいストリームを開始する際のポリシー違反
LIFO
後入れ先出し競合の解決
FIFO
先入れ先出し競合解決
テナント
アプリケーションを所有する組織
アプリケーション
CMを使用したソフトウェアプログラム
recommendation-more-help
pass-help-concurrency-monitoring