

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

# Amazon GameLift Streams でストリームセッションを開始する
<a name="stream-sessions"></a>

このセクションでは、ストリームセッション、エンドユーザーまたはプレイヤーがアプリケーションとやり取りしたりゲームをプレイしたりできるストリームの実際のインスタンスについて説明します。独自のストリームセッションをテストし、ストリームセッションのライフサイクルを理解する方法について説明します。

 エンドユーザーにストリームセッションを起動するには、Amazon GameLift Streams を独自のサービスに統合する必要があります。詳細については、[Amazon GameLift Streams バックエンドサービスとウェブクライアント](sdk.md) を参照してください。

## ストリームセッションについて
<a name="stream-sessions-about"></a>

 ストリームセッションを開始するための前提条件は、**準備完了**ステータスのアプリケーション、ストリーミングする場所で使用可能な容量を持つストリームグループ、およびストリーミングする場所にレプリケートされたアプリケーションです。ストリームセッションは、ストリームグループが割り当てたコンピューティングリソースのいずれかで実行されます。ストリームを開始するときは、ARN または ID 値を使用してストリーミングするストリームグループとアプリケーションを指定する必要があります。

 ストリームセッションを正常に開始すると、そのストリームセッションの一意の識別子を受け取ります。次に、その ID を使用してストリームセッションをエンドユーザーに接続します。詳細については、Amazon GameLift Streams API リファレンスの[StartStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_StartStreamSession.html)」を参照してください。 * GameLift * 

## コンソールでのストリームのテスト
<a name="stream-sessions-testing"></a>

 Amazon GameLift Streams コンソールを使用してアプリケーションストリームがどのようにであるかをテストする最も直接的な方法。ストリームを開始すると、Amazon GameLift Streams はストリームグループが割り当てるコンピューティングリソースのいずれかを使用します。そのため、ストリームグループで使用可能な容量が必要です。

**Amazon GameLift Streams コンソールでストリームをテストするには**

1.  にサインイン AWS マネジメントコンソール し、[Amazon GameLift Streams コンソール](https://console.aws.amazon.com/gameliftstreams/)を開きます。

1. ストリームは、いくつかの方法でテストできます。**ストリームグループ**ページまたは**テストストリーム**ページから開始し、以下の手順に従います。

   1. ストリーミングに使用するストリームグループを選択します。

   1. **ストリームグループ**ページから開始する場合は、**ストリームのテスト**を選択します。**テストストリーム**ページから開始する場合は、**選択**を選択します。これにより、選択した**ストリームグループのストリーム設定のテスト**ページが開きます。

   1. **リンクされたアプリケーションで**、アプリケーションを選択します。

   1. **Location** で、使用可能な容量がある場所を選択します。

   1. (オプション) **プログラム設定**で、起動時にアプリケーションに渡すコマンドライン引数または環境変数を入力します。

   1. 選択内容を確認し、**ストリームのテスト**を選択します。

1. ストリームがロードされたら、ストリームで次のアクションを実行できます。

   1. マウス、キーボード、ゲームパッド (**テストストリーム**ではサポートされていないマイクを除く) などの入力を接続するには、**入力をア**タッチを選択します。ストリームウィンドウにカーソルを移動すると、マウスが自動的にアタッチされます。

   1. ストリーミングセッション中に作成されたファイルをセッションの終了時に Amazon S3 バケットにエクスポートするには、**ファイルのエクスポート**を選択し、バケットの詳細を指定します。エクスポートされたファイルは、**セッションページ**にあります。

   1. ストリームを全画面で表示するには、**全画面表示**を選択します。**Escape** を押して、このアクションを元に戻します。

1. ストリームを終了するには、**セッションの終了**を選択します。ストリームが切断されると、ストリーム容量が別のストリームを開始できるようになります。

**注記**  
Amazon GameLift **Streams コンソールのテスト**ストリーム機能はマイクをサポートしていません。

## ストリームセッションのライフサイクル
<a name="stream-sessions-lifecycle"></a>

Amazon GameLift Streams でストリームセッションを操作する場合、この図は、ストリームセッションがライフサイクル全体で移行するさまざまな状態を理解するのに役立ちます。
+ [StartStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_StartStreamSession.html) は、 `ACTIVATING`状態から始まる新しいストリームセッションを作成します。Amazon GameLift Streams がストリームをホストするために利用可能なリソースを検出すると、ストリームセッションは に移行します`ACTIVE`。クライアントがアクティブなストリームに接続すると、ストリームセッションは に移行します`CONNECTED`。
+ クライアントがストリームから切断すると、ストリームセッションは `PENDING_CLIENT_RECONNECTION`状態に移行します。[CreateStreamSessionConnection](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_CreateStreamSessionConnection.html) はストリームセッションを に移行し`RECONNECTING`、クライアントがストリームに再接続するか、新しいストリームセッションを作成します。ストリームセッションがクライアントに再接続する準備ができたら、 に移行します`ACTIVE`。クライアントが再接続すると、 に戻ります`CONNECTED`。クライアントが より長く切断された場合`ConnectionTimeoutSeconds`、ストリームセッションは終了します。
+ クライアントが で指定された期間内に `ACTIVE`または `PENDING_CLIENT_RECONNECTION`状態のストリームセッションに接続しない場合`ConnectionTimeoutSeconds`、 に移行します`TERMINATED`。
+ [TerminateStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_TerminateStreamSession.html) はストリームの終了を開始し、ストリームセッションは `TERMINATING`状態に移行します。ストリームセッションが正常に終了すると、 に移行します`TERMINATED`。
+ を除く任意の状態のストリームセッションは`TERMINATED`、 に移行できます`ERROR`。API コールが Status 値`ERROR`として を返す場合は、StatusReason の値でエラーの原因の簡単な説明を確認します。[GetStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_GetStreamSession.html) を呼び出して、これらの値を確認することもできます。

![\[この図は、ストリームセッションがライフサイクル全体で移行するさまざまな状態を示しています。\]](http://docs.aws.amazon.com/ja_jp/gameliftstreams/latest/developerguide/images/stream_session_lifecycle.png)


## ストリームセッションに影響するタイムアウト値
<a name="stream-sessions-lifecycle-timeouts"></a>

ストリームセッションは、セッションライフサイクルのさまざまな側面を制御する複数のタイムアウト値によって管理されます。ストリームセッションのライフサイクル中に通常発生する可能性のある のほぼ時系列の順序で、以下が含まれます。

**配置タイムアウト**  
Amazon GameLift Streams が利用可能な容量を使用してストリームセッションをホストするコンピューティングリソースを見つけるための制限時間。配置タイムアウトは、ストリームリクエストを満たすために使用される容量タイプによって異なります。  
+ 常時オン容量: 75 秒
+ オンデマンドキャパシティ:
  + Linux/Proton ランタイム: 90 秒
  + Windows ランタイム: 10 分
+ 動作: Amazon GameLift Streams がこの時間内に利用可能なリソースを識別できない場合、ストリームセッションは `StatusReason`の `ERROR`で に`Status`変わります`placementTimeout`。

**接続タイムアウト**  
Amazon GameLift Streams がクライアントがストリームセッションに接続または再接続するまで待機する時間の長さ。  
+ パラメータ: `ConnectionTimeoutSeconds` [StartStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_StartStreamSession.html)
+ 範囲: 1～3600 秒 (1 時間)
+ デフォルト: 120 秒 (2 分)
+ 動作: ストリームセッションが `ACTIVE`または `PENDING_CLIENT_RECONNECTION`ステータスに達するとタイマーが開始されます。タイムアウト前に接続するクライアントがない場合、セッションは `Status`に移行します`TERMINATED`。

**セッションの長さのタイムアウト**  
Amazon GameLift Streams の最大期間は、ストリームセッションを開いたままにします。  
+ パラメータ: `SessionLengthSeconds` [StartStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_StartStreamSession.html)
+ 範囲: 1～86400 秒 (24 時間)
+ デフォルト: 43200 秒 (12 時間)
+ 動作: 制限時間に達したときに、既存のクライアント接続に関係なくストリームセッションを終了します。

## ストリームセッションの終了
<a name="stream-sessions-terminate"></a>

ストリームセッションを強制終了する必要がある場合は、次のオプションがあります。
+ **TerminateStreamSession API を使用する:** [TerminateStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_TerminateStreamSession.html) を使用するには、ストリームグループ ID とストリームセッション ID が必要です。[ListStreamSessions](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_ListStreamSessions.html) または [ListStreamSessionsByAccount](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_ListStreamSessionsByAccount.html) を `--status CONNECTED`パラメータとともに使用して、クライアントが接続されているストリームセッションのリストを取得できます。
+ **ストリームグループからセッションの場所を削除する:** セッションがストリーミングされているストリームグループから場所を削除すると、その場所内のすべてのアクティブなストリームセッションが終了します。ストリームグループ内の場所は、コンソールから削除するか、[RemoveStreamGroupLocations](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_RemoveStreamGroupLocations.html) API を使用して削除できます。
+ **セッションのストリームグループを削除する:** ストリームグループを削除すると、ストリームグループのすべての場所ですべてのアクティブなストリームセッションが終了します。ストリームグループは、コンソールから、または [DeleteStreamGroup](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_DeleteStreamGroup.html) API を使用して削除できます。クライアント接続は突然終了するため、注意が必要です。

## ストリームセッションへの再接続
<a name="stream-sessions-reconnection"></a>

クライアントがセッションを終了せずにストリームセッションから切断された場合、ストリームセッションが開始され`ConnectionTimeoutSeconds`たときに指定された時間内にセッションに再接続できます。セッションに再接続するには、ストリームセッションの ID が必要です。詳細については、Amazon GameLift Streams API リファレンスの「[CreateStreamSessionConnection](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_CreateStreamSessionConnection.html)」を参照してください。 * GameLift * [React Starter Sample ](https://github.com/aws-samples/sample-amazon-gamelift-streams-react-app)でストリームセッションに再接続する例を確認できます。