

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon GameLift Servers용 C\$1\$1 서버 SDK 5.x - 데이터 유형
<a name="integration-server-sdk5-cpp-datatypes"></a>

Amazon GameLift Servers C\$1\$1 서버 SDK 5.x 참조를 사용하여 Amazon GameLift Servers와 함께 호스팅할 멀티플레이어 게임을 통합합니다. 통합 프로세스에 대한 지침은 [서버 SDK를 사용하여 게임 서버에 Amazon GameLift Servers를 추가합니다.](gamelift-sdk-server-api.md) 페이지를 참조하세요.

**참고**  
이 주제에서는 C\$1\$1 Standard Library(`std`)로 빌드할 때 사용할 수 있는 Amazon GameLift Servers C\$1\$1 API에 대해 설명합니다. 특히, 이 설명서는 `-DDGAMELIFT_USE_STD=1` 옵션을 사용하여 컴파일하는 코드에 적용됩니다.

[Amazon GameLift Servers용 C\$1\$1 서버 SDK 5.x - 작업](integration-server-sdk5-cpp-actions.md)

**Topics**
+ [LogParameters](#integration-server-sdk5-cpp-dataypes-log)
+ [MetricsParameters](#integration-server-sdk5-cpp-datatypes-metricsparameters)
+ [ProcessParameters](#integration-server-sdk5-cpp-dataypes-process)
+ [UpdateGameSession](#integration-server-sdk5-cpp-dataypes-updategamesession)
+ [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession)
+ [ServerParameters](#integration-server-sdk5-cpp-dataypes-serverparameters)
+ [StartMatchBackfillRequest](#integration-server-sdk5-cpp-dataypes-startmatchbackfillrequest)
+ [Player](#integration-server-sdk5-cpp-dataypes-player)
+ [DescribePlayerSessionsRequest](#integration-server-sdk5-cpp-dataypes-playersessions)
+ [StopMatchBackfillRequest](#integration-server-sdk5-cpp-dataypes-stopmatchbackfillrequest)
+ [AttributeValue](#integration-server-sdk5-cpp-dataypes-attributevalue)
+ [GetFleetRoleCredentialsRequest](#integration-server-sdk5-cpp-dataypes-getfleetrolecredentialsrequest)
+ [AwsLongOutcome](#integration-server-sdk5-cpp-datatypes-awslongoutcome)
+ [AwsStringOutcome](#integration-server-sdk5-cpp-datatypes-awsstringoutcome)
+ [DescribePlayerSessionsOutcome](#integration-server-sdk5-cpp-datatypes-describeplayersessionsoutcome)
+ [DescribePlayerSessionsResult](#integration-server-sdk5-cpp-datatypes-describeplayersessionsresult)
+ [GenericOutcome](#integration-server-sdk5-cpp-datatypes-genericoutcome)
+ [GenericOutcomeCallable](#integration-server-sdk5-cpp-datatypes-genericoutcomecallable)
+ [PlayerSessions](#integration-server-sdk5-cpp-datatypes-playersession)
+ [StartMatchBackfillOutcome](#integration-server-sdk5-cpp-datatypes-startmatchbackfilloutcome)
+ [StartMatchBackfillResult](#integration-server-sdk5-cpp-datatypes-startmatchbackfillresult)
+ [GetComputeCertificateOutcome](#integration-server-sdk5-cpp-datatypes-getcomputecertificateoutcome)
+ [GetComputeCertificateResult](#integration-server-sdk5-cpp-datatypes-getcomputecertificateresult)
+ [GetFleetRoleCredentialsOutcome](#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsoutcome)
+ [GetFleetRoleCredentialsResult](#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsresult)
+ [InitSDKOutcome](#integration-server-sdk5-cpp-datatypes-initsdkoutcome)
+ [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror)
+ [Enums](#integration-server-sdk5-cpp-dataypes-enums)

## LogParameters
<a name="integration-server-sdk5-cpp-dataypes-log"></a>

Amazon GameLift Servers가 게임 세션 종료 후 업로드하고 저장하기를 원하는 게임 세션 중에 생성된 파일을 식별하는 객체입니다. 게임 서버는 [ProcessReady()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processready) 호출 시 `ProcessParameters` 객체의 일부로 `LogParameters`를 Amazon GameLift Servers에 제공합니다.


|  |  | 
| --- |--- |
|  **속성**  | 설명 | 
| LogPaths |  Amazon GameLift Servers가 향후 사용을 위해 저장하도록 하려는 게임 서버 로그 파일의 디렉터리 경로의 목록입니다. 서버 프로세스는 각 게임 세션 중에 이러한 파일을 생성합니다. 게임 서버에서 파일 경로와 이름을 정의하고 이를 루트 게임 빌드 디렉터리에 저장합니다. 로그 경로는 절대값이어야 합니다. 예를 들어, 게임 빌드가 `MyGame\sessionLogs\`와 같은 경로에서 게임 세션 로그를 저장하면 이 경로는 Windows 인스턴스에서 `c:\game\MyGame\sessionLogs`가 됩니다. **유형**: `std:vector<std::string>` **필수 항목 여부**: 아니요  | 

## MetricsParameters
<a name="integration-server-sdk5-cpp-datatypes-metricsparameters"></a>

이 데이터 유형을 사용하여 게임 서버에 대한 지표 수집 및 충돌 보고를 구성합니다. 게임 서버는 [InitMetrics()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initmetrics) 호출을 통해 `MetricsParameters`를 Amazon GameLift Servers에 전달합니다.


|  |  | 
| --- |--- |
|  **속성**  | 설명 | 
| StatsdHost |  지표 수집을 위한 StatsD 서버의 호스트 이름 또는 IP 주소. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| StatsdPort |  지표 수집을 위한 StatsD 서버의 포트 번호. **유형**: `int` **필수 항목 여부**: 아니요  | 
| CrashReporterHost |  충돌 리포터 서버의 호스트 이름 또는 IP 주소. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| CrashReporterPort |  충돌 리포터 서버의 포트 번호. **유형**: `int` **필수 항목 여부**: 아니요  | 
| FlushIntervalMs |  지표 데이터 플러시에 대한 밀리초 단위의 간격. **유형**: `int` **필수 항목 여부**: 아니요  | 
| MaxPacketSize |  서버로 전송되는 지표 패킷의 최대 크기(바이트 단위). **유형**: `int` **필수 항목 여부**: 아니요  | 

## ProcessParameters
<a name="integration-server-sdk5-cpp-dataypes-process"></a>

이 데이터 유형에는 [ProcessReady()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processready)에서 Amazon GameLift Servers로 보낸 파라미터 집합이 포함됩니다.


|  |  | 
| --- |--- |
|  **속성**  | 설명 | 
| LogParameters | 게임 세션 중에 생성되는 파일에 대한 디렉터리 경로가 있는 객체입니다. Amazon GameLift Servers는 나중에 액세스할 수 있도록 파일을 복사하고 저장합니다.**유형**: `Aws::GameLift::Server::LogParameters`**필수 항목 여부**: 아니요 | 
| OnHealthCheck | Amazon GameLift Servers가 서버 프로세스에서 상태 보고서를 요청하기 위해 간접 호출하는 콜백 함수입니다. Amazon GameLift Servers는 60초 간격으로 이 기능을 호출하고 60초 동안 응답을 기다립니다. 서버 프로세스가 정상이면 TRUE를 반환하고, 정상이 아니면 FALSE를 반환합니다. 응답이 반환되지 않으면 Amazon GameLift Servers는 서버 프로세스를 정상이 아닌 것으로 기록합니다.**유형**: `std::function<bool()> onHealthCheck`**필수 항목 여부**: 아니요 | 
| OnProcessTerminate | Amazon GameLift Servers가 서버 프로세스를 강제로 종료하기 위해 간접 호출하는 콜백 함수입니다. 이 함수를 호출한 후 Amazon GameLift Servers는 서버 프로세스가 종료될 때까지 5분을 기다렸다가 [ProcessEnding()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processending) 호출로 응답한 후 서버 프로세스를 종료합니다.**유형**: `std::function<void()> onProcessTerminate`**필수 항목 여부**: 예 | 
| OnStartGameSession | Amazon GameLift Servers가 새 게임 세션을 활성화하기 위해 간접 호출하는 콜백 함수의 이름입니다. Amazon GameLift Servers는 클라이언트 요청 [CreateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateGameSession.html)에 대한 응답으로 이 함수를 호출합니다. 콜백 함수가 [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession) 객체를 전달합니다.**유형**: `const std::function<void(Aws::GameLift::Model::GameSession)> onStartGameSession`**필수 항목 여부**: 예 | 
| OnUpdateGameSession | Amazon GameLift Servers가 업데이트된 게임 세션 객체를 전달하기 위해 간접 호출하는 콜백 함수입니다. 매치 채우기 요청이 처리되면 업데이트된 매치메이커 데이터를 제공하기 위해 Amazon GameLift Servers에서 이 함수를 호출합니다. [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession) 객체, 상태 업데이트(updateReason) 및 매치 채우기 티켓 ID를 전달합니다.**유형**: `std::function<void(Aws::GameLift::Server::Model::UpdateGameSession)> onUpdateGameSession`**필수 항목 여부**: 아니요 | 
| Port | 서버 프로세스가 새 플레이어 연결을 수신 대기하는 포트 번호입니다. 이 값은 이 게임 서버 빌드를 전개하는 플릿에 대해 구성된 포트 범위에 속해야 합니다. 이 포트 번호는 게임 세션 및 플레이어 세션 객체에 포함되며, 게임 세션이 서버 프로세스에 연결할 때 이 포트 번호를 사용합니다.**유형**: `Integer`**필수 항목 여부**: 예 | 

## UpdateGameSession
<a name="integration-server-sdk5-cpp-dataypes-updategamesession"></a>

이 데이터 유형은 게임 세션 객체로 업데이트되며, 여기에는 게임 세션이 업데이트된 이유와 게임 세션의 플레이어 세션을 채우기 위해 backfill을 사용하는 경우 관련된 백필 티켓 ID가 포함됩니다.


| 속성 | **설명** | 
| --- | --- | 
| GameSession | [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession) 객체입니다. GameSession 객체에는 게임 세션을 설명하는 속성이 포함되어 있습니다.**유형**: `Aws::GameLift::Server::GameSession`**필수 항목 여부**: 예 | 
| UpdateReason | 게임 세션이 업데이트되는 이유입니다.**유형**: `Aws::GameLift::Server::UpdateReason`**필수 항목 여부**: 예 | 
| BackfillTicketId | 게임 세션 업데이트를 시도하는 채우기 티켓의 ID입니다.**유형**: `std::string`**필수 항목 여부**: 아니요 | 

## GameSession
<a name="integration-server-sdk5-cpp-dataypes-gamesession"></a>

이 데이터 유형은 게임 세션의 세부 정보를 제공합니다.


| 속성 | **설명** | 
| --- | --- | 
| GameSessionId |  게임 세션에 대한 고유 식별자입니다. 게임 세션 ARN의 형식은 다음과 같습니다. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>`  **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| 이름 |  게임 세션을 설명하는 레이블입니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| FleetId |  게임 세션이 실행 중인 플릿의 고유 식별자입니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| MaximumPlayerSessionCount |  게임 세션에 연결된 최대 플레이어 수입니다. **유형**: `int` **필수 항목 여부**: 아니요  | 
| Port |  게임 세션의 포트 번호입니다. Amazon GameLift Servers 게임 서버에 연결하려면 앱에 IP 주소와 포트 번호가 모두 필요합니다. **유형**: `in` **필수 항목 여부**: 아니요  | 
| IpAddress |  게임 세션의 IP 주소입니다. Amazon GameLift Servers 게임 서버에 연결하려면 앱에 IP 주소와 포트 번호가 모두 필요합니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| GameSessionData |  단일 문자열 값으로 포맷된 사용자 지정 게임 세션 속성의 집합입니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| MatchmakerData |  게임 세션을 생성하는 데 사용된 매치메이킹 프로세스에 대한 정보(JSON 구문 사용, 문자열 형식). 사용된 매치메이킹 구성 외에도 플레이어 속성 및 팀 배정을 포함하여 경기에 배정된 모든 플레이어에 대한 데이터가 포함됩니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| GameProperties |  키:값 페어로 포맷된 게임 세션에 대한 사용자 정의 속성 집합입니다. 이러한 속성은 새 게임 세션을 시작하라는 요청과 함께 전달됩니다. **유형**: `std :: vector < GameProperty >` **필수 항목 여부**: 아니요  | 
| DnsName |  게임 세션을 실행하는 인스턴스에 할당된 DNS 식별자입니다. 값은 다음 형식을 사용합니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) TLS 지원 플릿에서 실행되는 게임 세션에 연결할 때는 IP 주소가 아닌 DNS 이름을 사용해야 합니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 

## ServerParameters
<a name="integration-server-sdk5-cpp-dataypes-serverparameters"></a>

게임 서버 프로세스가 Amazon GameLift Servers 서비스와의 연결을 설정하는 데 사용하는 정보입니다. Amazon GameLift Servers 에이전트 없이 게임 서버 빌드가 Anywhere 플릿 또는 컨테이너 플릿에 배포되는 경우에만 [InitSDK()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk-anywhere)를 호출할 때 이러한 파라미터를 포함합니다. 다른 모든 배포 시나리오에서는 파라미터 없이 [InitSDK()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk)를 호출합니다.


| 속성 | **설명** | 
| --- | --- | 
| 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가 반환됩니다. **유형**: `std::string` **필수 항목 여부**: 예   | 
| processId |  게임을 호스팅하는 서버 프로세스에 등록된 고유 식별자입니다. **유형**: `std::string` **필수 항목 여부**: 예  | 
| hostId | HostID는 컴퓨터를 등록할 때 사용되는 ComputeName입니다. 자세한 내용은 [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)를 참조하세요.**유형**: `std::string`**필수 항목 여부**: 예 | 
| fleetId | 컴퓨팅이 등록된 플릿의 고유 식별자입니다. 자세한 내용은 [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)를 참조하세요.**유형**: `std::string`**필수 항목 여부**: 예 | 
| authToken | Amazon GameLift Servers에서 생성한 인증 토큰으로, Amazon GameLift Servers에 서버를 인증합니다. 자세한 내용은 [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html)을 참조하세요.**유형**: `std::string`**필수 항목 여부**: 예 | 

## StartMatchBackfillRequest
<a name="integration-server-sdk5-cpp-dataypes-startmatchbackfillrequest"></a>

매치메이킹 채우기 요청을 생성하는 데 사용되는 정보입니다. 게임 서버는 [StartMatchBackfill()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-startmatchbackfill) 호출을 통해 이 정보를 Amazon GameLift Servers에 전달합니다.


| 속성 | **설명** | 
| --- | --- | 
| GameSessionArn |  고유한 게임 세션 식별자입니다. API 작업 `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-actions.html#integration-server-sdk5-cpp-getgamesessionid)`는 ARN 형식의 식별자를 반환합니다. **유형**: `std::string` **필수 항목 여부**: 예  | 
| MatchmakingConfigurationArn |  매치메이커가 이 요청에 사용할 ARN 형식의 고유 식별자입니다. 원본 게임 세션에 대한 매치메이커 ARN은 매치메이커 데이터 속성의 게임 세션 객체에 있습니다. 매치메이커 데이터에 대한 자세한 내용은 [매치메이커 데이터를 사용하는 작업](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html)을 참조하세요. **유형**: `std::string` **필수 항목 여부**: 예  | 
| Players |  게임 세션에 있는 모든 플레이어를 나타내는 데이터 세트입니다. 매치메이커는 이 정보를 사용하여 현재 플레이어와 적절하게 일치하는 새로운 플레이어를 검색합니다. **유형**: `std::vector<Player>` **필수 항목 여부**: 예  | 
| TicketId |  매치메이킹 또는 매치 채우기 요청 티켓의 고유 식별자입니다. 값을 제공하지 않으면 Amazon GameLift Servers에서 값을 생성합니다. 이 식별자를 사용하여 매치 채우기 티켓 상태를 추적하거나 필요한 경우 요청을 취소합니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 

## Player
<a name="integration-server-sdk5-cpp-dataypes-player"></a>

이 데이터 유형은 매치메이킹 중인 플레이어를 나타냅니다. 매치메이킹 요청을 시작할 때 플레이어는 플레이어 ID, 속성, 지연 시간 데이터를 가지고 있을 수 있습니다. Amazon GameLift Servers는 매치가 성사된 후 팀 정보를 추가합니다.


| 속성 | **설명** | 
| --- | --- | 
| LatencyInMS |  플레이어가 특정 위치에 연결되었을 때 발생하는 지연 시간을 나타내는 값 집합으로, 밀리초 단위로 표시됩니다. 이 속성을 사용하는 경우 플레이어는 나열된 위치에서만 매칭됩니다. 매치메이커에 플레이어 지연 시간을 평가하는 규칙이 있는 경우 플레이어는 지연 시간을 보고해야 매칭됩니다. **유형**: `Dictionary<string,int>` **필수 항목 여부**: 아니요  | 
| PlayerAttributes |  매치메이킹에 사용할 플레이어 정보가 포함된 키:값 페어의 모음입니다. 플레이어 속성 키는 매치메이킹 규칙 세트에 사용되는 PlayerAttributes와 일치해야 합니다. 플레이어 속성에 대한 자세한 내용은 [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html)를 참조하세요. **유형**: `std::map<std::string,AttributeValue>` **필수 항목 여부**: 아니요  | 
| PlayerId |  플레이어의 고유 식별자입니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| Team |  매치에서 플레이어가 배정되는 팀의 이름입니다. 매치메이킹 규칙 세트에 팀 이름을 정의합니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 

## DescribePlayerSessionsRequest
<a name="integration-server-sdk5-cpp-dataypes-playersessions"></a>

검색할 플레이어 세션을 지정하는 객체입니다. 서버 프로세스는 Amazon GameLift Servers로 [DescribePlayerSessions()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-describeplayersessions) 호출을 통해 이 정보를 제공합니다.


| 속성 | **설명** | 
| --- | --- | 
| GameSessionId |  고유한 게임 세션 식별자입니다. 지정한 게임 세션의 모든 플레이어 세션을 요청하려면 이 파라미터를 사용합니다. 게임 세션 ID 형식은 `arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>` 입니다. `GameSessionID`는 다음입니다. 사용자 지정 ID 문자열 또는 **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| PlayerSessionId |  플레이어 세션의 고유 식별자입니다. 이 파라미터를 사용하여 단일 특정 플레이어 세션을 요청합니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| PlayerId |  플레이어의 고유 식별자입니다. 이 파라미터를 사용하여 특정 플레이어에 대한 모든 플레이어 세션을 요청합니다. [플레이어 ID 생성](player-sessions-player-identifiers.md)을(를) 참조하세요. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| PlayerSessionStatusFilter |  결과를 필터링하는 기준이 되는 플레이어 세션 상태입니다. 다음과 같은 플레이어 세션 상태가 가능합니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| NextToken |  결과의 다음 페이지의 시작을 나타내는 토큰입니다. 결과 집합의 시작을 지정하려면 값을 제공하지 않습니다. 플레이어 세션 ID가 제공된 경우 이 파라미터가 무시됩니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| Limit |  반환할 최대 결과 수입니다. 플레이어 세션 ID가 제공된 경우 이 파라미터가 무시됩니다. **유형**: `int` **필수 항목 여부**: 아니요  | 

## StopMatchBackfillRequest
<a name="integration-server-sdk5-cpp-dataypes-stopmatchbackfillrequest"></a>

매치메이킹 채우기 요청을 취소하는 데 사용되는 정보입니다. 게임 서버는 [StopMatchBackfill()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-stopmatchbackfill) 호출을 통해 이 정보를 Amazon GameLift Servers 서비스에 전달합니다.


| 속성 | **설명** | 
| --- | --- | 
| GameSessionArn |  취소 중인 요청의 고유한 게임 세션 식별자입니다. **유형**: `char[]` **필수 항목 여부**: 아니요  | 
| MatchmakingConfigurationArn |  이 요청을 보낸 매치메이커의 고유 식별자입니다. **유형**: `char[]` **필수 항목 여부**: 아니요  | 
| TicketId |  취소할 채우기 요청 티켓의 고유 식별자입니다. **유형**: `char[]` **필수 항목 여부**: 아니요  | 

## AttributeValue
<a name="integration-server-sdk5-cpp-dataypes-attributevalue"></a>

[Player](#integration-server-sdk5-cpp-dataypes-player) 속성 키-값 페어에 이러한 값을 사용합니다. 이 객체를 사용하면 문자열, 숫자, 문자열 배열 또는 데이터 맵과 같은 유효한 데이터 유형을 사용하여 속성 값을 지정할 수 있습니다. 각 `AttributeValue` 객체는 사용 가능한 속성 `S`, `N`, `SL`, 또는 `SDM` 중 정확히 하나를 사용해야 합니다.


| 속성 | 설명 | 
| --- | --- | 
| AttrType |  속성 값의 유형을 지정합니다. 가능한 속성 값 유형은 다음과 같습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **필수 항목 여부**: 아니요  | 
| S |  문자열 속성 값을 나타냅니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| N |  숫자 속성 값을 나타냅니다. **유형**: `double` **필수 항목 여부**: 아니요  | 
| SL |  문자열 속성 값의 배열을 나타냅니다. **유형**: `std::vector<std::string>` **필수 항목 여부**: 아니요  | 
| SDM |  문자열 키와 이중 값의 사전을 나타냅니다. **유형**: `std::map<std::string, double>` **필수 항목 여부**: 아니요  | 

## GetFleetRoleCredentialsRequest
<a name="integration-server-sdk5-cpp-dataypes-getfleetrolecredentialsrequest"></a>

이 데이터 유형은 게임 서버에 다른 AWS 리소스에 대한 제한된 액세스 권한을 부여합니다. 자세한 내용은 단원을 참조하십시오[Amazon GameLift Servers의 IAM 서비스 역할 설정](setting-up-role.md).


| 속성 | **설명** | 
| --- | --- | 
| RoleArn | 리소스에 대한 제한된 액세스를 확장하는 서비스 역할의 Amazon AWS 리소스 이름(ARN)입니다.**유형**: `std::string`**필수 항목 여부**: 아니요 | 
| RoleSessionName |  AWS Security Token Service [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) 세션을 고유하게 식별하는 데 사용할 수 있는 역할 세션 이름입니다. 이 이름은 CloudTrail의 감사 로그와 같은 감사 로그에 표시됩니다.**유형**: `std::string`  **필수 항목 여부**: 아니요  | 

## AwsLongOutcome
<a name="integration-server-sdk5-cpp-datatypes-awslongoutcome"></a>

이 데이터 유형은 작업의 결과이며 다음과 같은 속성을 가진 객체를 생성합니다.


| 속성 | 설명 | 
| --- | --- | 
| Result |  작업 결과입니다. **유형**: `long` **필수 항목 여부**: 아니요  | 
| ResultWithOwnership |   호출 코드가 객체의 소유권을 가질 수 있도록 작업 결과를 rvalue로 변환합니다. **유형**: `long&&` **필수 항목 여부**: 아니요  | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## AwsStringOutcome
<a name="integration-server-sdk5-cpp-datatypes-awsstringoutcome"></a>

이 데이터 유형은 작업의 결과이며 다음과 같은 속성을 가진 객체를 생성합니다.


| 속성 | 설명 | 
| --- | --- | 
| Result |  작업 결과입니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| ResultWithOwnership |   호출 코드가 객체의 소유권을 가질 수 있도록 작업 결과를 rvalue로 변환합니다. **유형**: `long&&` **필수 항목 여부**: 아니요  | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## DescribePlayerSessionsOutcome
<a name="integration-server-sdk5-cpp-datatypes-describeplayersessionsoutcome"></a>

이 데이터 유형은 작업의 결과이며 다음과 같은 속성을 가진 객체를 생성합니다.


| 속성 | 설명 | 
| --- | --- | 
| Result |  작업 결과입니다. **유형**: [DescribePlayerSessionsResult](#integration-server-sdk5-cpp-datatypes-describeplayersessionsresult) **필수 항목 여부**: 아니요   | 
| ResultWithOwnership |   호출 코드가 객체의 소유권을 가질 수 있도록 작업 결과를 rvalue로 변환합니다. **유형**: `Aws::GameLift::Server::Model::DescribePlayerSessionsResult&&` **필수 항목 여부**: 아니요  | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## DescribePlayerSessionsResult
<a name="integration-server-sdk5-cpp-datatypes-describeplayersessionsresult"></a>

요청과 일치하는 각 플레이어 세션의 속성을 포함하는 객체 모음입니다.


| 속성 | 설명 | 
| --- | --- | 
| NextToken |  결과의 다음 순차 페이지의 시작을 나타내는 토큰입니다. 반환된 토큰을 이 작업에 대한 이전 호출과 함께 사용합니다. 결과 집합의 시작 부분에서 시작하려면 값을 지정하지 않습니다. 플레이어 세션 ID가 지정된 경우 이 파라미터가 무시됩니다. **유형**: `std::string` **필수 항목 여부**: 예  | 
| PlayerSessions |  **유형**: `IList<PlayerSessions>` **필수 항목 여부:**   | 
| ResultWithOwnership |   호출 코드가 객체의 소유권을 가질 수 있도록 작업 결과를 rvalue로 변환합니다. **유형**: `std::string&&` **필수 항목 여부**: 아니요  | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## GenericOutcome
<a name="integration-server-sdk5-cpp-datatypes-genericoutcome"></a>

이 데이터 유형은 작업의 결과이며 다음과 같은 속성을 가진 객체를 생성합니다.


| 속성 | 설명 | 
| --- | --- | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## GenericOutcomeCallable
<a name="integration-server-sdk5-cpp-datatypes-genericoutcomecallable"></a>

이 데이터 유형은 비동기식 일반 결과입니다. 여기에는 다음과 같은 속성이 있습니다.


| 속성 | 설명 | 
| --- | --- | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## PlayerSessions
<a name="integration-server-sdk5-cpp-datatypes-playersession"></a>

이 데이터 유형은 Amazon GameLift Servers가 게임 서버로 전달하는 플레이어 세션을 나타냅니다. 자세한 내용은 [PlayerSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_PlayerSession.html)을 참조하세요.


| 속성 | 설명 | 
| --- | --- | 
| CreationTime |  **유형**: `long` **필수 항목 여부**: 아니요  | 
| FleetId |  **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| GameSessionId |  **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| IpAddress |  **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| PlayerData |  **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| PlayerId |  **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| PlayerSessionId |  **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| Port |  **유형**: `int` **필수 항목 여부**: 아니요  | 
| Status |  결과를 필터링하는 기준이 되는 플레이어 세션 상태입니다. PlayerSessionId 또는 PlayerId가 제공되면 PlayerSessionStatusFilter는 응답에 영향을 주지 않습니다. **유형**: `PlayerSessionStatus` 열거형. 가능한 값은 다음을 포함합니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **필수 항목 여부**: 아니요  | 
| TerminationTime |  **유형**: `long` **필수 항목 여부**: 아니요  | 
| DnsName |  **유형**: `std::string` **필수 항목 여부**: 아니요  | 

## StartMatchBackfillOutcome
<a name="integration-server-sdk5-cpp-datatypes-startmatchbackfilloutcome"></a>

이 데이터 유형은 작업의 결과이며 다음과 같은 속성을 가진 객체를 생성합니다.


| 속성 | 설명 | 
| --- | --- | 
| Result |  작업 결과입니다. **유형**: [StartMatchBackfillResult](#integration-server-sdk5-cpp-datatypes-startmatchbackfillresult) **필수 항목 여부**: 아니요  | 
| ResultWithOwnership |   호출 코드가 객체의 소유권을 가질 수 있도록 작업 결과를 rvalue로 변환합니다. **유형**: `StartMatchBackfillResult&&` **필수 항목 여부**: 아니요  | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## StartMatchBackfillResult
<a name="integration-server-sdk5-cpp-datatypes-startmatchbackfillresult"></a>

이 데이터 유형은 작업의 결과이며 다음과 같은 속성을 가진 객체를 생성합니다.


| 속성 | 설명 | 
| --- | --- | 
| TicketId |  매치메이킹 티켓의 고유 식별자입니다. 여기에 티켓 ID가 지정되지 않으면 Amazon GameLift Servers는 UUID 형식으로 값을 생성합니다. 이 식별자를 사용하여 매치 채우기 티켓 상태를 추적하고 매치 결과를 검색할 수 있습니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 

## GetComputeCertificateOutcome
<a name="integration-server-sdk5-cpp-datatypes-getcomputecertificateoutcome"></a>

이 데이터 유형은 작업의 결과이며 다음과 같은 속성을 가진 객체를 생성합니다.


| 속성 | 설명 | 
| --- | --- | 
| Result |  작업 결과입니다. **유형**: [GetComputeCertificateResult](#integration-server-sdk5-cpp-datatypes-getcomputecertificateresult) **필수 항목 여부**: 아니요   | 
| ResultWithOwnership |   호출 코드가 객체의 소유권을 가질 수 있도록 작업 결과를 rvalue로 변환합니다. **유형**: `Aws::GameLift::Server::Model::GetComputeCertificateResult&&` **필수 항목 여부**: 아니요  | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## GetComputeCertificateResult
<a name="integration-server-sdk5-cpp-datatypes-getcomputecertificateresult"></a>

컴퓨팅의 TLS 인증서 경로 및 컴퓨팅 호스트 이름입니다.


| 속성 | 설명 | 
| --- | --- | 
| CertificatePath |  컴퓨팅 리소스에 있는 TLS 인증서의 경로입니다. Amazon GameLift Servers 관리형 플릿을 사용하는 경우 이 경로에는 다음이 포함됩니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **유형**: `std::string` **필수 항목 여부**: 아니요  | 
| ComputeName |  컴퓨팅 리소스의 이름입니다. **유형**: `std::string` **필수 항목 여부**: 아니요  | 

## GetFleetRoleCredentialsOutcome
<a name="integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsoutcome"></a>

이 데이터 유형은 작업의 결과이며 다음과 같은 속성을 가진 객체를 생성합니다.


| 속성 | 설명 | 
| --- | --- | 
| Result |  작업 결과입니다. **유형**: [GetFleetRoleCredentialsResult](#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsresult) **필수 항목 여부**: 아니요   | 
| ResultWithOwnership |   호출 코드가 객체의 소유권을 가질 수 있도록 작업 결과를 rvalue로 변환합니다. **유형**: `Aws::GameLift::Server::Model::GetFleetRoleCredentialsResult` **필수 항목 여부**: 아니요  | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## GetFleetRoleCredentialsResult
<a name="integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsresult"></a>


| 속성 | 설명 | 
| --- | --- | 
| AccessKeyId |  인증하고 AWS 리소스에 액세스를 제공하기 위한 액세스 키 ID입니다. **유형**: `string` **필수 항목 여부**: 아니요  | 
| AssumedRoleId |  서비스 역할이 속한 사용자의 ID입니다. **유형**: `string` **필수 항목 여부**: 아니요  | 
| AssumedRoleUserArn |  사용자가 맡을 서비스 역할의 Amazon 리소스 이름(ARN)입니다. **유형**: `string` **필수 항목 여부**: 아니요  | 
| Expiration |  세션 자격 증명이 만료될 때까지 남은 시간입니다. **유형**: `DateTime` **필수 항목 여부**: 아니요  | 
| SecretAccessKey |  인증에 대한 비밀 액세스 키 ID를 지정합니다. **유형**: `string` **필수 항목 여부**: 아니요  | 
| SessionToken |   AWS 리소스와 상호 작용하는 현재 활성 세션을 식별하기 위한 토큰입니다. **유형**: `string` **필수 항목 여부**: 아니요  | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## InitSDKOutcome
<a name="integration-server-sdk5-cpp-datatypes-initsdkoutcome"></a>

**참고**  
`InitSDKOutcome`은 `std` 플래그를 사용하여 SDK를 빌드하는 경우에만 반환됩니다. `nostd` 플래그를 사용하여 빌드하면 [GenericOutcome](#integration-server-sdk5-cpp-datatypes-genericoutcome)이 대신 반환됩니다.


| 속성 | 설명 | 
| --- | --- | 
| Success |  작업의 성공 여부입니다. **유형**: `bool` **필수 항목 여부**: 예  | 
| Error |  작업이 실패한 경우 발생되는 오류입니다. **유형**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **필수 항목 여부**: 아니요  | 

## GameLiftError
<a name="integration-server-sdk5-cpp-datatypes-gamelifterror"></a>


| 속성 | 설명 | 
| --- | --- | 
| ErrorType |  오류의 유형입니다. **유형**: `GameLiftErrorType` [열거형](#integration-server-sdk5-cpp-dataypes-enums). **필수 항목 여부**: 아니요   | 
| ErrorName |  오류 유형 이름입니다.  **유형**: `std::string`  **필수 항목 여부**: 아니요   | 
| ErrorMessage |  오류 메시지입니다.  **유형**: `std::string`  **필수 항목 여부**: 아니요   | 

## Enums
<a name="integration-server-sdk5-cpp-dataypes-enums"></a>

Amazon GameLift Servers용 서버 SDK(C\$1\$1)에 대해 정의된 Enums는 다음과 같이 정의됩니다.

**GameLiftErrorType**  
오류 유형을 나타내는 문자열 값입니다. 유효한 값으로는 다음이 포함됩니다.  
+ **BAD\$1REQUEST\$1EXCEPTION** 
+ **GAMESESSION\$1ID\$1NOT\$1SET** - 게임 세션 ID가 설정되지 않았습니다.
+ **INTERNAL\$1SERVICE\$1EXCEPTION** 
+ **LOCAL\$1CONNECTION\$1FAILED** - Amazon GameLift Servers에 대한 로컬 연결이 실패했습니다.
+ **NETWORK\$1NOT\$1INITIALIZED** - 네트워크가 초기화되지 않았습니다.
+ **SERVICE\$1CALL\$1FAILED** - AWS 서비스에 대한 호출이 실패했습니다.
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1FORBIDDEN** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1INVALID\$1URL** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **ALREADY\$1INITIALIZED** - Amazon GameLift Servers 서버 또는 클라이언트는 이미 Initialize()를 사용하여 초기화되었습니다.
+ **FLEET\$1MISMATCH** - 대상 플릿이 gameSession 또는 playerSession의 플릿과 일치하지 않습니다.
+ **GAMELIFT\$1CLIENT\$1NOT\$1INITIALIZED** - Amazon GameLift Servers 클라이언트가 초기화되지 않았습니다.
+ **GAMELIFT\$1SERVER\$1NOT\$1INITIALIZED** – Amazon GameLift Servers 서버가 초기화되지 않았습니다.
+ **GAME\$1SESSION\$1ENDED\$1FAILED** - Amazon GameLift Servers용 서버 SDK가 서비스에 연락하여 게임 세션이 종료되었음을 보고할 수 없습니다.
+ **GAME\$1SESSION\$1NOT\$1READY** – Amazon GameLift Servers 서버 게임 세션이 활성화되지 않았습니다.
+ **GAME\$1SESSION\$1READY\$1FAILED** - Amazon GameLift Servers용 서버 SDK가 서비스에 연락하여 게임 세션이 준비되었음을 보고할 수 없습니다.
+ **INITIALIZATION\$1MISMATCH** - 클라이언트 메서드는 Server::Initialize() 이후에 호출되었으며 그 반대의 경우도 마찬가지입니다.
+ **NOT\$1INITIALIZED** - Amazon GameLift Servers 서버 또는 클라이언트는 Initialize()를 사용하여 초기화되었습니다.
+ **NO\$1TARGET\$1ALIASID\$1SET** - 대상 aliasId가 설정되지 않았습니다.
+ **NO\$1TARGET\$1FLEET\$1SET** - 대상 플릿이 설정되지 않았습니다.
+ **PROCESS\$1ENDING\$1FAILED** – Amazon GameLift Servers용 서버 SDK가 서비스에 연락하여 프로세스가 종료되었음을 보고할 수 없습니다.
+ **PROCESS\$1NOT\$1ACTIVE** - 서버 프로세스가 아직 활성화되지 않았고, GameSession에 바인딩되지 않았으며, PlayerSessions를 수락하거나 처리할 수 없습니다.
+ **PROCESS\$1NOT\$1READY** - 서버 프로세스를 아직 활성화할 준비가 되지 않았습니다.
+ **PROCESS\$1READY\$1FAILED** – Amazon GameLift Servers용 서버 SDK가 서비스에 연락하여 프로세스가 준비되었음을 보고할 수 없습니다.
+ **SDK\$1VERSION\$1DETECTION\$1FAILED** - SDK 버전 감지에 실패했습니다.
+ **STX\$1CALL\$1FAILED** - XStx 서버 백엔드 구성 요소에 대한 호출이 실패했습니다.
+ **STX\$1INITIALIZATION\$1FAILED** - XStx 서버 백엔드 구성 요소를 초기화하지 못했습니다.
+ **UNEXPECTED\$1PLAYER\$1SESSION** - 서버에서 등록되지 않은 플레이어 세션을 발견했습니다.
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1FORBIDDEN** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1INVALID\$1URL** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **WEBSOCKET\$1RETRIABLE\$1SEND\$1MESSAGE\$1FAILURE** - GameLift Service WebSocket에 메시지를 보내는 재시도에 실패했습니다.
+ **WEBSOCKET\$1SEND\$1MESSAGE\$1FAILURE** - GameLift Service WebSocket에 메시지를 보내는 데 실패했습니다.
+ **MATCH\$1BACKFILL\$1REQUEST\$1VALIDATION** - 요청 검증에 실패했습니다.
+ **PLAYER\$1SESSION\$1REQUEST\$1VALIDATION** - 요청 검증에 실패했습니다.

**PlayerSessionCreationPolicy**  
게임 세션이 새 플레이어를 수락하는지 여부를 나타내는 문자열 값입니다. 유효한 값으로는 다음이 포함됩니다.  
+ **ACCEPT\$1ALL** - 모든 새 플레이어 세션을 수락합니다.
+ **DENY\$1ALL** - 모든 새 플레이어 세션을 거부합니다.
+ **NOT\$1SET** - 게임 세션이 새 플레이어 세션을 수락하거나 거부하도록 설정되지 않았습니다.