View a markdown version of this page

ストリーム URLs でストリームセッションを共有する - Amazon GameLift Streams

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ストリーム URLs でストリームセッションを共有する

ストリーム URLs を使用すると、ストリームセッションを他のユーザーとすばやく共有できます。受信者は、サポートされているウェブブラウザで AWS アカウント または クライアントの統合を必要とせずにストリームセッションにアクセスし、有効期限、使用状況、失効を制御します。ストリーム URL を作成した後、それにアクセスするすべてのユーザーは、認証情報を必要とせずに独自のストリームセッションを開始します。ストリーム URLsは、デモ、プレイテスト、ステークホルダーレビュー、ゲストアクセスを迅速かつ簡単にセットアップするのに最適です。

重要

完全な URL を持つユーザーは、ストリーム URL の有効期限が切れるか、使用制限に達するか、取り消されるまで、ストリームセッションを開始できます。ストリーム URL を認証情報として扱います。信頼できるチャネルを介してのみ共有し、使用可能な最短の有効期限と使用制限を優先し、漏洩した場合はすぐに取り消します。

ストリーム URLs仕組み

ストリーム URL は、ストリームグループ (ストリームを実行する容量) と、そのストリームグループ内の 1 つのアプリケーション (実行するコンテンツ) を結び付けます。ストリーム URL を作成すると、Amazon GameLift Streams は次の形式のストリーム URL を返します。

https://gameliftstreams.aws.com/su-1AB2C3De4/stream?token=EXAMPLETOKEN

ワークフローには 4 つのステップがあります。

  • 作成します。ストリームグループとアプリケーションの CreateStreamUrl を呼び出し、ストリーム URL が有効である期間 (UrlExpiresAfterMinutes) と使用できる回数 () を設定しますUsageLimit。起動引数、環境変数、セッション長、表示解像度などのストリームセッション設定は、作成時にストリーム URL にフリーズされます。

  • 共有します。ストリーム URL は、E メール、チャット、イベントページなどの独自のチャネルを通じて配信します。

  • アクティブ化します。ユーザーがストリーム URL を開いてストリーミングを開始するたびに、Amazon GameLift Streams はストリーム URL の使用を 1 回消費し、フリーズ設定を使用してまったく新しいストリームセッションを開始します。すべてのアクティベーションは独立したセッションであり、同じストリーム URL を使用するユーザー間で共有状態はありません。

  • 終了。ストリーム URL から開始されたセッションは短期間であり、再接続をサポートしていません。セッションが終了すると、その使用は既にカウントされています。ストリーム URL を再度開くと、新しいセッションが開始され、別の使用が消費されます。

ストリーム URL は認証されていないため、エンドユーザーが AWS 認証情報を表示したり必要としたりすることはありません。このサービスは、作成時に設定したストリーミングロケーション設定に基づいて、各エンドユーザーを近くの場所にルーティングします。Amazon GameLift Streams は、希望するストリーミングロケーションを近接で並べ替えますが、含めなかったロケーションを追加することはありません。

エンドユーザーエクスペリエンス

ストリーム URL を共有するユーザーには、 AWS アカウント やソフトウェアのインストールは必要ありません。サポートされているウェブブラウザで URL を開き、Amazon GameLift Streams がホストするウェブページからストリーミングします。ストリーミングは WebRTC を使用し、ブラウザとデバイスの要件は Amazon GameLift Streams Web SDK クライアントと同じです。サポートされているブラウザと最小バージョンについては、「」を参照してくださいAmazon GameLift Streams 互換デバイスとブラウザ。エンドユーザーが URL を開くときにストリームグループに使用可能な容量がない場合、このページにはストリームが一時的に容量に達しており、エンドユーザーは再試行できるというメッセージが表示されます。エンドユーザーがタブを閉じたり再ロードしようとすると、ページを離れるとセッションが終了するため、確認を求められます。

注記

ストリーム URL から開始されたセッションは、短いシングルビューワー再生用に調整されます。エンドユーザーが接続を失ったり、ページを再ロードしたりすると、セッションは終了し、ストリーム URL を再度開くと、別の使用を消費する新しいセッションが開始されます。「StartStreamSession で開始するセッションとの違い」を参照してください。

前提条件

ストリーム URL を作成する前に、以下が必要です。

  • アクティブで、セッションを実行する容量があるストリームグループ。

  • そのストリームグループにリンクされているアプリケーション。

  • ストリーム URL アクションの IAM アクセス許可。ストリーム URL をアクティブ化すると、そのアプリケーションを実行するストリームセッションが開始されるため、ストリーム URL の作成には、それが指すアプリケーションのgameliftstreams:StartStreamSessionアクセス許可も必要です。ストリーム URLs の作成と管理 ポリシーの例を参照してください。

  • で IAM ロールを渡す場合はRoleArn、そのロールに対するiam:PassRoleアクセス許可も必要です。

ストリーム URL の作成

注記

ストリーム URL は、Amazon GameLift Streams コンソール、、 AWS CLIまたは API で作成できます。次の例では、 を使用します AWS CLI。

次の の AWS CLI 例では、ストリームグループ内のアプリケーションのストリーム URL を作成します。ストリーム URL は 2 時間有効で、最大 5 回使用できます。 us-west-2us-east-1の場所が優先されます。

aws gameliftstreams create-stream-url \ --identifier sg-1AB2C3De4 \ --application-identifier a-9ZY8X7Wv6 \ --protocol WebRTC \ --url-expires-after-minutes 120 \ --usage-limit 5 \ --locations us-west-2 us-east-1 \ --description "Preview build - reviewer invites"

呼び出しが成功すると、ストリーム URL リソースが返されます。これには、StreamUrlId(プレフィックス su-)、ARN、共有可能な 全体StreamUrl、計算された有効期限、および残りの最初の の使用が含まれます。

{ "StreamUrlId": "su-1AB2C3De4", "Arn": "arn:aws:gameliftstreams:us-west-2:111122223333:streamurl/sg-1AB2C3De4/su-1AB2C3De4", "StreamUrl": "https://gameliftstreams.aws.com/su-1AB2C3De4/stream?token=EXAMPLETOKEN", "Status": "ACTIVE", "UsageLimit": 5, "RemainingUses": 5, "ExpiresAt": "2026-07-31T20:00:00+00:00" }

以下のパラメータは必須です。

パラメータ 説明
Identifier (ストリームグループ) キャパシティがセッションを実行するストリームグループ。ストリームグループ ID または ARN を指定します。
ApplicationIdentifier ストリーミングするストリームグループ内のアプリケーション。アプリケーション ID または ARN を指定します。
Protocol ストリームプロトコル。 WebRTCはサポートされている唯一の値です。
UrlExpiresAfterMinutes ストリーム URL が作成から数分で有効のままになる期間。最小 1、最大 1,440 (24 時間)。このウィンドウの後、ストリーム URL は になりますEXPIRED
Locations などの AWS リージョン コードなどの任意の場所を優先順位us-west-2で指定します。Amazon GameLift Streams は、エンドユーザーの近接性でこれらを並べ替えますが、リストにない場所を追加することはありません。

以下のパラメータはオプションです。指定したセッション設定は、作成時にストリーム URL にフリーズされ、ストリーム URL から開始されたすべてのセッションに適用されます。

パラメータ 説明
UsageLimit ストリーム URL がセッションを開始できる回数。デフォルトは 1、最大は 50 です。
Description ストリーム URL のラベル。1~80 文字です。
SessionLengthSeconds ストリーム URL から開始された各セッションの最大長。
AdditionalLaunchArgs 起動時にアプリケーションに渡されるコマンドライン引数。
AdditionalEnvironmentVariables 起動時にアプリケーションに設定された環境変数。
DisplayConfiguration (Resolution) ストリームの表示解像度。必須WidthでピクセルHeight単位Resolutionの として指定します。各ディメンションは 320~4096 である必要があります。省略すると、サービスはデフォルトの解像度を使用します。
RoleArn 各セッション中にアプリケーションが使用できる認証情報を持つ IAM ロール。ロールは、ストリーム URL が開始するすべてのセッションでフリーズされます。ロールを渡すには、そのロールに対するiam:PassRoleアクセス許可が必要です。
ClientToken 作成リクエストをべき等にする一意の大文字と小文字を区別する識別子。したがって、同じトークンで再試行しても、重複するストリーム URL は作成されません。

ストリーム URLs のモニタリング

GetStreamUrl を使用して 1 つのストリーム URL を取得します。でストリームグループを指定--identifierし、 --stream-url-identifier (ストリーム URL ID または ARN) でストリーム URL を指定します。ストリーム URL の設定、現在の Status、および に加えてRemainingUses、レスポンスにはそこから開始されたセッションStreamSessionsのリストが含まれているため、誰がアクティブにストリーミングしているかを確認できます。

aws gameliftstreams get-stream-url \ --identifier sg-1AB2C3De4 \ --stream-url-identifier su-1AB2C3De4

ListStreamUrls を使用して、アカウントのストリーム URLs を列挙します。ストリームグループStatusとストリームグループでフィルタリングし、 MaxResults (1~100、デフォルト 25) と で結果をページスルーできますNextToken

aws gameliftstreams list-stream-urls \ --status ACTIVE \ --stream-group-identifier sg-1AB2C3De4

CloudTrail でストリーム URL 管理アクティビティを監査することもできます。CloudTrail は、CreateStreamUrl、、ListStreamUrls、および GetStreamUrlへの呼び出しをデータイベントRevokeStreamUrlとして記録します。ストリーム URL を開いてセッションを開始するエンドユーザーは、API コールの 1 つではなく、顧客の CloudTrail アクティビティとして記録されません。詳細については、「を使用した Amazon GameLift Streams API コールのログ記録 AWS CloudTrail」を参照してください。

ストリーム URL の取り消し

ストリーム URL は、プレビュー期間が終了したときや意図せず共有されたときなど、それ以上のセッションの開始を停止するときに取り消します。

RevokeStreamUrl は を取りますRevocationMode

RevocationMode 効果
REVOKE_URL (デフォルト) ストリーム URL は新しいセッションを開始できなくなります。すでに進行中のセッションは、単独で終了するまで続行されます。
REVOKE_AND_TERMINATE_SESSIONS ストリーム URL は新しいセッションを開始できなくなり、そこから現在実行されているすべてのセッションが終了します。この方法で実行中のセッションが終了すると、エンドユーザーは切断され、ストリームが利用できなくなるというメッセージが表示されます。
aws gameliftstreams revoke-stream-url \ --identifier sg-1AB2C3De4 \ --stream-url-identifier su-1AB2C3De4 \ --revocation-mode REVOKE_AND_TERMINATE_SESSIONS

取り消されたストリーム URL は REVOKEDステータスに移行し、再アクティブ化することはできません。共有を再開する必要がある場合は、新しいストリーム URL を作成します。

Amazon GameLift Streams は、依存するリソースが削除されると、ストリーム URL を自動的に取り消します。ストリームグループを削除すると、そのストリームグループのすべてのストリーム URLs が取り消され、アプリケーションを削除すると、そのアプリケーションを参照するすべてのストリーム URLs が取り消されます。どちらの場合も、ストリーム URL は削除されたリソースを識別するステータスの理由REVOKEDで に移動します。

注記

ストリーム URL が依存するリソースを削除することは、削除とは異なり、ストリーム URL は自動的に取り消されません。ストリーム URL は のままですがACTIVE、セッションを開始しようとするたびに失敗します。これは、ストリーム URL のアプリケーションをストリームグループからリンク解除するか、ストリーム URL が作成されたすべてのストリームグループの場所を削除した場合に発生します。ストリームグループまたはアプリケーションを削除すると、自動失効がトリガーされます。

ストリーム URL のライフサイクルとステータス

ストリーム URL は、作成ACTIVE時に になり、有効期限が切れるか、使用期限切れになるか、取り消されるまでそのように維持されます。その状態を離れたACTIVE後に に戻ることはありません。

ステータス 意味
ACTIVE ストリーム URL は新しいセッションを開始できます。
EXPIRED UrlExpiresAfterMinutes ウィンドウが経過しました。
REVOKED ストリーム URL は、ストリームグループRevokeStreamUrlまたはアプリケーションが削除されたときに、 で明示的に、または自動的に取り消されました。
LIMIT_REACHED ストリーム URL はすべての を使用していますUsageLimit

ストリーム URL が の場合REVOKEDGetStreamUrl は理由を説明するステータスの理由ListStreamUrlsも返します。

ステータス理由 原因
userRevoked RevokeStreamUrl を使用して で取り消されましたREVOKE_URL
revokedAndTerminatingSessions で取り消されましたREVOKE_AND_TERMINATE_SESSIONS。実行中のセッションは終了中です。
revokedAndSessionsTerminated で取り消されましたREVOKE_AND_TERMINATE_SESSIONS。実行中のセッションは終了しました。
streamGroupDeleted ストリームグループが削除されました。
applicationDeleted 参照されたアプリケーションが削除されました。

StartStreamSession で開始するセッションとの違い

ストリーム URL から開始されたセッションは、自分で開始したセッションと同じインフラストラクチャで実行されますが、短いハンドオフのシングルビューワー再生用に調整されます。これらの違いに注意してください。

  • 再接続なし。エンドユーザーが接続を失ったり、ページを再ロードしたりすると、セッションは終了します。

  • 再アクセスは別の使用を消費します。再接続がないため、ストリーム URL を再度開くと、まったく新しいセッションが開始され、その から別の使用が消費されますUsageLimit

  • データチャネルはありません。ストリーム URL から開始されたストリームは、アプリケーションデータチャネルを公開しません。必要に応じて、Amazon GameLift Streams Web SDK を使用して独自のクライアントを構築します。

トラブルシューティング

Amazon GameLift Streams は、ストリーム URL のアクティベーションが失敗した特定の理由をエンドユーザーから意図的に非表示にします。ストリームを開始できないストリーム URL を開くエンドユーザーは、根本的な原因に関係なく、常に一般的な「見つからない」ページまたは「容量」メッセージを表示します。実際の原因を診断するには、作成者側のストリーム URL を GetStreamUrlと で検査しListStreamUrlsStatusステータスの理由と を確認し、CloudTrail でストリーム URL API アクティビティを確認します。

  • ストリーム URL には、「見つからない」または一般的なエラーページが表示されます。Status で を確認しますGetStreamUrlEXPIREDREVOKED、またはそれぞれが起動不可能なストリーム URL LIMIT_REACHEDについて説明します。ステータスが ACTIVEであってもアクティベーションが失敗した場合、ストリーム URL が依存するリソースは削除された (削除されていない) 可能性が最も高いです。アプリケーションがストリームグループからリンク解除されたか、ストリーム URL が作成されたすべてのストリームグループの場所が削除されました。アプリケーションを再リンクするか、場所を復元するか、有効なリソースに対して新しいストリーム URL を作成します。

  • エンドユーザーには「at capacity」というメッセージが表示されます。ストリームグループには、エンドユーザーの最も近い場所に新しいセッションを配置するための容量がありません。各アクティベーションは新しいセッションを開始し、 のような容量を消費しますStartStreamSession。最小容量 (常時オン) または最大容量を増やすか、ターゲットアイドル容量 (事前ウォーミング) を使用して、特にタイムボックスイベントの場合に、容量を需要の前に準備します。

  • エンドユーザーが更新または移動すると、セッションは終了します。これは通常の動作です。URL がアクティブ化されたセッションは再接続されず、各アクセスは使用を消費する新しいセッションを開始します。エンドユーザーに更新しないようにアドバイスし、時折の再ロードを許容するのに十分なUsageLimit高さを設定します。

  • エンドユーザーはセッション中に切断され、「このエクスペリエンスは利用できなくなりました」と表示されます。エンドユーザーは、セッションがサーバー側で終了するたびに、この汎用メッセージを表示します。ストリーム URL の最も一般的な原因は、 で取り消すことです。これによりREVOKE_AND_TERMINATE_SESSIONS、実行中のセッションはすぐに終了しますが、セッションが設定された長さ制限に達した場合、またはサービスによって終了された場合は、同じメッセージが表示されます。これは通常の動作です。新しいストリーム URL を作成して共有を再開します。

  • ストリームがロードされないか、エンドユーザーの起動に失敗します。エンドユーザーのブラウザがストリーミング要件を満たしていない可能性があります。ストリーミングには、WebRTC と H.264 (AVC) をサポートするブラウザが必要です。サポートされているブラウザと最小バージョンAmazon GameLift Streams 互換デバイスとブラウザについては、「」を参照してください。一般的な原因は、モバイルデバイスのチャット、E メール、ソーシャルアプリ内でタップされたリンクなど、アプリ内ブラウザビューでストリーム URL を開くことです。これにより、WebRTC が無効になる可能性があります。Chrome、Edge、Safari などのスタンドアロンブラウザでストリーム URL を開くように受信者にアドバイスします。

  • CreateStreamUrl は を返しますServiceQuotaExceededExceptionリクエストは、アクティブ数の制限 (アカウントあたり 20 個のアクティブストリーム URLsまたはストリームグループあたり 5 個のアクティブストリーム URL) を超えます。ヘッドルームを解放する必要がなくなったストリーム URLs を取り消し、 を Status に設定してListStreamUrlsフィルタリングACTIVEして現在の数を確認します。

  • CreateStreamUrl は を返しますValidationException入力値が範囲外です。UsageLimit を 1 ~ 50、 UrlExpiresAfterMinutesを 1 ~ 1,440 に設定します。