

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

# Go サーバー SDK for Amazon GameLift Servers -- データ型
<a name="integration-server-sdk-go-datatypes"></a>

サーバー SDK リファレンスを使用して、Amazon GameLift Servers でホスティングするマルチプレイヤーゲームを統合します。統合プロセスのガイダンスについては、「[サーバー SDK を使用して、Amazon GameLift Servers をゲームサーバーに追加します。](gamelift-sdk-server-api.md)」を参照してください。

`GameLiftServerAPI.go` は、Go サーバー SDK アクションを定義します。

[Go サーバー SDK for Amazon GameLift Servers – アクション](integration-server-sdk-go-actions.md)

**Topics**
+ [LogParameters](#integration-server-sdk-go-dataypes-log)
+ [MetricsParameters](#integration-server-sdk-go-dataypes-metrics)
+ [ProcessParameters](#integration-server-sdk-go-dataypes-process)
+ [UpdateGameSession](#integration-server-sdk-go-dataypes-updategamesession)
+ [GameSession](#integration-server-sdk-go-dataypes-gamesession)
+ [ServerParameters](#integration-server-sdk-go-dataypes-serverparameters)
+ [StartMatchBackfillRequest](#integration-server-sdk-go-dataypes-startmatchbackfillrequest)
+ [プレイヤー](#integration-server-sdk-go-dataypes-player)
+ [DescribePlayerSessionsRequest](#integration-server-sdk-go-dataypes-playersessions)
+ [StopMatchBackfillRequest](#integration-server-sdk-go-dataypes-stopmatchbackfillrequest)
+ [GetFleetRoleCredentialsRequest](#integration-server-sdk-go-dataypes-getfleetrolecredentialsrequest)

## LogParameters
<a name="integration-server-sdk-go-dataypes-log"></a>

ゲームセッション中に生成されたファイルを識別するオブジェクトで、ゲームセッション終了時に Amazon GameLift Servers でアップロードして保存します。ゲームサーバーは、[ProcessReady()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processready) 呼び出しで `ProcessParameters` オブジェクトの一部として `LogParameters` を Amazon GameLift Servers に提供します。


|  |  | 
| --- |--- |
| **プロパティ** | 説明 | 
| LogPaths | Amazon GameLift Servers で将来のアクセスに備えて保存するゲームサーバーログファイルへのディレクトリパスのリスト。サーバープロセスは各ゲームセッション中にこれらのファイルを生成します。ファイルのパスと名前はゲームサーバーで定義し､ルートゲームビルドディレクトリに保存します。<br />ログパスは絶対パスである必要があります。例えば、ゲームビルドによって `MyGame\sessionLogs\` などのパスに保存されるゲームセッションログの場合、パスは `c:\game\MyGame\sessionLogs` (Windows インスタンスの場合) となります。<br />**タイプ**: `[]string`<br />**必須:** いいえ | 

## MetricsParameters
<a name="integration-server-sdk-go-dataypes-metrics"></a>

メトリクスシステムを初期化するための設定パラメータを通信するオブジェクト。この設定は、StatsD レポート、クラッシュレポート、メトリクス処理の動作を設定するために使用されます。ゲームサーバーは、[InitMetrics()](integration-server-sdk-go-actions.md#integration-server-sdk-go-initmetrics) の呼び出しの一部として `MetricsParameters` を Amazon GameLift Servers に提供します。


|  |  | 
| --- |--- |
| **プロパティ** | 説明 | 
| StatsdHost | メトリクスレポート用の StatsD サーバーホスト (「localhost」など)。<br />**タイプ**: `string`<br />**必須:** はい | 
| StatsdPort | メトリクスレポートの StatsD サーバーポート (8125 など)。<br />**タイプ**: `int`<br />**必須:** はい | 
| CrashReporterHost | クラッシュ追跡とプロセスモニタリング用のクラッシュレポーターホスト。<br />**タイプ**: `string`<br />**必須:** はい | 
| CrashReporterPort | クラッシュ追跡とプロセスモニタリング用のクラッシュレポーターポート。<br />**タイプ**: `int`<br />**必須:** はい | 
| FlushIntervalMs | メトリクスのフラッシュ間隔はミリ秒単位です。メトリクスが StatsD に送信される頻度を制御します。<br />**タイプ**: `int`<br />**必須:** はい | 
| MaxPacketSize | バイト単位のメトリクスの最大パケットサイズ。StatsD に送信される UDP パケットのサイズを制限します。<br />**タイプ**: `int`<br />**必須:** はい | 

## ProcessParameters
<a name="integration-server-sdk-go-dataypes-process"></a>

サーバープロセスと Amazon GameLift Servers の間の通信を記述するオブジェクト。サーバープロセスは、この情報を Amazon GameLift Servers 呼び出しで [ProcessReady()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processready) に提供します。


|  |  | 
| --- |--- |
| **プロパティ** | 説明 | 
| LogParameters | ゲームセッション中に生成されるファイルへのディレクトリパスを持つオブジェクトです。Amazon GameLift Servers はこれらのファイルをコピーして保存し、後で参照できるようにします。**タイプ**: `LogParameters`<br />**必須:** いいえ | 
| OnHealthCheck | Amazon GameLift Servers がサーバープロセスにヘルスステータスレポートを要求するために呼び出すコールバック関数です。Amazon GameLift Servers はこの関数を 60 秒ごとに呼び出し、応答を最大 60 秒間待機します。サーバープロセスは正常であれば TRUE を返し、正常でない場合は FALSE を返します。応答が返されない場合、Amazon GameLift Servers はサーバープロセスを正常ではないと記録します。**タイプ**: `OnHealthCheck func() bool`<br />**必須:** いいえ | 
| OnProcessTerminate | Amazon GameLift Servers がサーバープロセスを強制的にシャットダウンするために呼び出すコールバック関数です。この関数を呼び出すと、Amazon GameLift Servers はサーバープロセスがシャットダウンするまで最大 5 分間待機し、サーバープロセスがシャットダウンする前に [ProcessEnding()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processending) 呼び出しで応答するのを待ちます。**タイプ**: `OnProcessTerminate func()`<br />**必須:** はい | 
| OnStartGameSession | 更新されたゲームセッションオブジェクトをサーバープロセスに渡すために、Amazon GameLift Servers が呼び出すコールバック関数。Amazon GameLift Servers は、更新されたマッチメーカーデータを提供するために、マッチバックフィルリクエストが処理された際にこの関数を呼び出します。これは、[GameSession](#integration-server-sdk-go-dataypes-gamesession) オブジェクト、ステータス更新 (updateReason) そして、マッチバックフィルチケット ID を渡します。**タイプ**: `OnStartGameSession func (model.GameSession )`<br />**必須:** はい | 
| OnUpdateGameSession | Amazon GameLift Serversが呼び出して更新されたゲームセッション情報をサーバープロセスに渡すコールバック関数。Amazon GameLift Servers は、マッチバックフィルリクエストを処理した後にこの関数を呼び出して、更新されたマッチメーカーデータを提供します。**タイプ**: `OnUpdateGameSession func (model.UpdateGameSession)`<br />**必須:** いいえ | 
| Port | サーバープロセスが新しいプレイヤーの接続をリスンするポート番号。値は、このゲームサーバービルドをデプロイするすべてのフリートで設定されているポート番号の範囲に含まれる必要があります。このポート番号は、ゲームセッションオブジェクトとプレイヤーセッションオブジェクトに含まれ、ゲームセッションがサーバープロセスに接続するときに使用します。**タイプ**: `int`<br />**必須:** はい | 

## UpdateGameSession
<a name="integration-server-sdk-go-dataypes-updategamesession"></a>

ゲームセッションオブジェクトの更新。これには、ゲームセッションが更新された理由と、バックフィルを使用してゲームセッション内のプレイヤーセッションを埋めるための関連するバックフィルチケット ID が含まれます。


| プロパティ | **説明** | 
| --- | --- | 
| GameSession | [GameSession](#integration-server-sdk-go-dataypes-gamesession) オブジェクト。GameSession オブジェクトにはゲームセッションを説明するプロパティが含まれています。**タイプ**: `GameSession GameSession()`<br />**必須:** はい | 
| UpdateReason | ゲームセッションが更新されている理由。**タイプ**: `UpdateReason UpdateReason()`<br />**必須:** はい | 
| BackfillTicketId | ゲームセッションの更新を試みるバックフィルチケットの ID。**タイプ**: `String`<br />**必須:** いいえ | 

## GameSession
<a name="integration-server-sdk-go-dataypes-gamesession"></a>

ゲームセッションの詳細。


| プロパティ | **説明** | 
| --- | --- | 
| GameSessionId | ゲームセッションの一意の識別子。ゲームセッション Amazon リソースネーム (ARN) には `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` 形式があります。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| 名前 | ゲームセッションについて説明するラベル。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| FleetId | ゲームセッションが実行されているフリートの一意の識別子。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| MaximumPlayerSessionCount | ゲームセッションへのプレーヤー接続の最大数。<br />**タイプ**: `Integer`<br />**必須:** いいえ | 
| ポート | ゲームセッションのポート番号。Amazon GameLift Servers ゲームサーバーに接続するには、アプリに IP アドレスとポート番号の両方が必要です。<br />**タイプ**: `Integer`<br />**必須:** いいえ | 
| IpAddress | ゲームセッションの IP アドレス。Amazon GameLift Servers ゲームサーバーに接続するには、アプリに IP アドレスとポート番号の両方が必要です。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| GameSessionData | 単一の文字列値としてフォーマットされたカスタムゲームセッションプロパティのセット。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| MatchmakerData | ゲームセッションの作成に使用されたマッチメーキングプロセスに関する情報。JSON 構文で、文字列としてフォーマットされています。使用されたマッチメーキング設定に加えて、プレイヤー属性やチーム割り当てなど、マッチに割り当てられた全プレイヤーに関するデータが含まれます。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| GameProperties | ゲームセッションのカスタムプロパティのセットで、キーと値のペアとしてフォーマットされます。これらのプロパティは、新しいゲームセッションを開始するリクエストとともに渡されます。<br />**タイプ**: `map[string] string`<br />**必須:** いいえ | 
| DnsName | ゲームセッションを実行しているインスタンスに割り当てられた DNS 識別子。値の形式は次のとおりです。[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/gameliftservers/latest/developerguide/integration-server-sdk-go-datatypes.html)<br />TLS 対応フリートで実行しているゲームセッションに接続する場合、IP アドレスではなく DNS 名を使用する必要があります。<br />**タイプ**: `String`<br />**必須:** いいえ | 

## ServerParameters
<a name="integration-server-sdk-go-dataypes-serverparameters"></a>

Amazon GameLift Servers Anywhere サーバーと Amazon GameLift Servers サービス間の接続を維持するために使用される情報。この情報は、[InitSDK()](integration-server-sdk-go-actions.md#integration-server-sdk-go-initsdk) で新しいサーバープロセスを起動するときに使用されます。Amazon GameLift Servers マネージド EC2 インスタンスでホストされているサーバーには、空のオブジェクトを使用してください。


| プロパティ | **説明** | 
| --- | --- | 
| WebSocketURL | Amazon GameLift Servers Anywhere コンピューティングリソース用に [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html) を実行すると、`GameLiftServerSdkEndpoint` Amazon GameLift Servers が返されます。<br />**タイプ**: `string`<br />**必須:** はい | 
| ProcessID | ゲームをホストするサーバープロセスに登録された固有の識別子。<br />**タイプ**: `string`<br />**必須:** はい | 
| HostID | 新しいサーバープロセスをホストしているコンピュートリソースの一意の識別子。<br />`HostID` はコンピューティングを登録したときに使用される `ComputeName` です。詳細については、「[RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)」を参照してください。<br />**タイプ**: `string`<br />**必須:** はい | 
| FleetID | コンピューティングが登録されているフリートの固有識別子。詳細については、「[RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)」を参照してください。**タイプ**: `string`<br />**必須:** はい | 
| AuthToken | Amazon GameLift Servers によって生成され、サーバーを Amazon GameLift Servers に対して認証するための認証トークン。詳細については、「[GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html)」を参照してください。**タイプ**: `string`<br />**必須:** はい | 

## StartMatchBackfillRequest
<a name="integration-server-sdk-go-dataypes-startmatchbackfillrequest"></a>

マッチメーキングバックフィルリクエストの作成に使用される情報。ゲームサーバーは、この情報を [StartMatchBackfill()](integration-server-sdk-go-actions.md#integration-server-sdk-go-startmatchbackfill) 呼び出しで Amazon GameLift Servers に送信します。


| プロパティ | **説明** | 
| --- | --- | 
| GameSessionArn | 一意のゲームセッション識別子。API オペレーション `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk-go-actions.html#integration-server-sdk-go-getgamesessionid)` は ARN 形式の識別子を返します。<br />**タイプ**: `String`<br />**必須:** はい | 
| MatchmakingConfigurationArn | このリクエストに使用されるマッチメーカーの ARN 形式の一意な識別子。元のゲームセッションののマッチメーカー ARN は、マッチメーカーデータプロパティのゲームセッションオブジェクトにあります。マッチメーカーデータの詳細については「[マッチメーカーデータの処理](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html)」を参照してください。<br />**タイプ**: `String`<br />**必須:** はい | 
| プレイヤー | 現在ゲームセッションに参加しているすべてのプレイヤーを表すデータのセット。マッチメーカーはこの情報を使用して、現在のプレイヤーとマッチする新しいプレイヤーを検索します。<br />**タイプ**: `[]model.Player`<br />**必須:** はい | 
| TicketId | マッチメーキングまたはバックフィルリクエストチケットの一意の識別子。値を指定しない場合、Amazon GameLift Servers が値を生成します。この識別子を使用してマッチバックフィルチケットのステータスを追跡したり、必要に応じてリクエストをキャンセルしたりします。<br />**タイプ**: `String`<br />**必須:** いいえ | 

## プレイヤー
<a name="integration-server-sdk-go-dataypes-player"></a>

マッチメーキングでプレイヤーを表すオブジェクト。マッチメーキングリクエストを開始すると、プレイヤーにはプレイヤー ID、属性、必要に応じてレイテンシーデータが含まれます。マッチが成立すると、Amazon GameLift Servers がチーム情報を追加します。


| プロパティ | **説明** | 
| --- | --- | 
| LatencyInMS | プレイヤーがロケーションに接続したときに発生するレイテンシーの量を示すミリ秒単位の値のセット。<br />このプロパティを使用すると、プレーヤーはリストに表示されている場所でのみマッチングされます。マッチメーカーにプレイヤーレイテンシーを評価するルールがある場合、プレイヤーはレイテンシーを報告しないとマッチングされません。<br />**タイプ**: `map[string] int`<br />**必須:** いいえ | 
| PlayerAttributes | マッチメーキングに使用するプレイヤー情報を含むキーと値のペアの集合。プレイヤー属性キーは、マッチメーキングルールセットで使用されている PlayerAttributes と一致する必要があります。<br />プレイヤー属性の詳細については、「[AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html)」を参照してください。<br />**タイプ**: `map[string] AttributeValue`<br />**必須:** いいえ | 
| PlayerId | プレイヤーを表す一意の識別子。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| チーム | マッチでプレーヤーが割り当てられるチームの名前。チーム名はマッチメーキングルールセットで定義します。<br />**タイプ**: `String`<br />**必須:** いいえ | 

## DescribePlayerSessionsRequest
<a name="integration-server-sdk-go-dataypes-playersessions"></a>

取得するプレイヤーセッションを指定するオブジェクト。サーバープロセスは、この情報を [DescribePlayerSessions()](integration-server-sdk-go-actions.md#integration-server-sdk-go-describeplayersessions) 呼び出しで Amazon GameLift Servers に提供します。


| プロパティ | **説明** | 
| --- | --- | 
| GameSessionID | 一意のゲームセッション識別子。このパラメータを使用して、指定したゲームセッションのすべてのプレイヤーセッションをリクエストします。<br />ゲームセッション ID の形式は `arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>` です。`GameSessionID` はカスタム ID 文字列または生成された文字列です。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| PlayerSessionID | プレイヤーセッションを表す一意の識別子。このパラメータを使用して、特定の 1 つのプレイヤーセッションをリクエストします。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| PlayerID | プレイヤーの一意識別子。このパラメータを使用して、特定の 1 人のプレイヤーに対するすべてのプレイヤーセッションをリクエストします。「[プレイヤー ID を生成する](player-sessions-player-identifiers.md)」を参照してください。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| PlayerSessionStatusFilter | 結果をフィルタリングするプレイヤーセッションステータス。可能なプレイヤーセッションステータスには以下が含まれます。[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/gameliftservers/latest/developerguide/integration-server-sdk-go-datatypes.html)<br />**タイプ**: `String`<br />**必須:** いいえ | 
| NextToken | 結果の次のページの先頭を示すトークン。結果セットの先頭を指定するには、値を指定しないでください。プレイヤーセッション ID を提供する場合、このパラメータは無視されます。<br />**タイプ**: `String`<br />**必須:** いいえ | 
| Limit | 返される結果の最大数。プレイヤーセッション ID を提供する場合、このパラメータは無視されます。<br />**タイプ**: `int`<br />**必須:** いいえ | 

## StopMatchBackfillRequest
<a name="integration-server-sdk-go-dataypes-stopmatchbackfillrequest"></a>

マッチメーキングバックフィルリクエストのキャンセルに使用される情報。ゲームサーバーは、この情報を [StopMatchBackfill()](integration-server-sdk-go-actions.md#integration-server-sdk-go-stopmatchbackfill) 呼び出しで Amazon GameLift Servers サービスに送信します。


| プロパティ | **説明** | 
| --- | --- | 
| GameSessionArn | キャンセルされるリクエストの一意のゲームセッション識別子。<br />**タイプ**: `string`<br />**必須:** いいえ | 
| MatchmakingConfigurationArn | このリクエストが送信されたマッチメーカーの一意の識別子。<br />**タイプ**: `string`<br />**必須:** いいえ | 
| TicketId | キャンセルされるバックフィルリクエストチケットの一意の識別子。<br />**タイプ**: `string`<br />**必須:** いいえ | 

## GetFleetRoleCredentialsRequest
<a name="integration-server-sdk-go-dataypes-getfleetrolecredentialsrequest"></a>

 AWS リソースへの制限付きアクセスをゲームサーバーに拡張するロール認証情報。詳細については、[Amazon GameLift Servers 用に IAM サービスロールをセットアップする](setting-up-role.md) を参照してください。


| プロパティ | **説明** | 
| --- | --- | 
| RoleArn |  AWS リソースへの制限付きアクセスを拡張するサービスロールの ARN。**タイプ**: `string`<br />**必須:** はい | 
| RoleSessionName | ロール認証情報の使用を説明するセッションの名前。**タイプ**: `string`<br />**必須:** はい | 