

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

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

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

**참고**  
본 페이지는 Amazon GameLift Servers의 서버 SDK의 이전 버전에 대한 참조입니다. 최신 버전은 [Amazon GameLift Servers용 C\$1\$1 서버 SDK 5.x - 데이터 유형](integration-server-sdk5-cpp-datatypes.md) 페이지를 참조하세요.

이 API는 `GameLiftServerAPI.h`, `LogParameters.h` 및 `ProcessParameters.h`에 정의되어 있습니다.

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

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

이 데이터 유형은 검색할 플레이어 세션을 지정하는 데 사용됩니다. 다음과 같이 사용할 수 있습니다.
+ 특정 플레이어 세션을 요청하려면 PlayerSessionId를 제공합니다.
+ 지정한 게임 세션의 모든 플레이어 세션을 요청하려면 GameSessionId를 제공합니다.
+ 지정한 플레이어의 모든 플레이어 세션을 요청하려면 PlayerId를 제공합니다.

플레이어 세션이 대량일 경우 페이지 매김 파라미터를 사용하여 결과를 순차적 블록으로 검색합니다.

### 내용
<a name="integration-server-sdk-cpp-ref-dataypes-playersessions-contents"></a>

**GameSessionId**  
고유한 게임 세션 식별자입니다. 지정한 게임 세션의 모든 플레이어 세션을 요청하려면 이 파라미터를 사용합니다. 게임 세션 ID 형식은 다음과 같습니다. `arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. <ID string> 값은 사용자 지정 ID 문자열(게임 세션을 만들 때 지정한 경우) 또는 생성 문자열입니다.  
유형: 문자열  
필수 항목 여부: 아니요

**Limit**  
반환할 최대 결과 수입니다. 결과를 순차적인 일련의 페이지로 가져오려면 이 파라미터를 *NextToken*과 함께 사용합니다. 플레이어 세션 ID가 지정된 경우 이 파라미터가 무시됩니다.  
유형: 정수  
필수 항목 여부: 아니요

**NextToken**  
결과의 다음 순차 페이지의 시작을 나타내는 토큰입니다. 반환된 토큰을 이 작업에 대한 이전 호출과 함께 사용합니다. 결과 집합의 시작을 지정하려면 값을 지정하지 마세요. 플레이어 세션 ID가 지정된 경우 이 파라미터가 무시됩니다.  
유형: 문자열  
필수 항목 여부: 아니요

**PlayerId**  
사용자의 고유 식별자입니다. 플레이어 ID는 개발자에 의해 정의됩니다. [플레이어 ID 생성](player-sessions-player-identifiers.md)을(를) 참조하세요.  
유형: 문자열  
필수 항목 여부: 아니요

**PlayerSessionId**  
플레이어 세션의 고유 식별자입니다.  
유형: 문자열  
필수 항목 여부: 아니요

**PlayerSessionStatusFilter**  
결과를 필터링하는 기준이 되는 플레이어 세션 상태입니다. 다음과 같은 플레이어 세션 상태가 가능합니다.  
+ RESERVED - 플레이어 세션 요청이 수신되었지만, 플레이어가 서버 프로세스에 연결되지 않았거나 확인되지 않았습니다.
+ ACTIVE - 플레이어가 서버 프로세스에 의해 확인되고 현재 연결되어 있습니다.
+ COMPLETED - 플레이어 연결이 끊어졌습니다.
+ TIMEDOUT - 플레이어 세션 요청이 수신되었지만 플레이어가 제한 시간(60초) 이내에 연결하지 않았거나 확인되지 않았습니다.
유형: 문자열  
필수 항목 여부: 아니요

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

이 데이터 유형은 게임 세션 중에 생성된 파일 가운데 게임 세션 종료 시 Amazon GameLift Servers가 업로드 및 저장할 파일을 식별합니다. 이 정보는 [ProcessReady()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-processready) 호출을 통해 Amazon GameLift Servers 서비스에 전달됩니다.

### 내용
<a name="integration-server-sdk-cpp-ref-dataypes-log-contents"></a>

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

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

이 데이터 유형에는 [ProcessReady()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-processready) 호출을 통해 Amazon GameLift Servers 서비스로 보낸 파라미터 집합이 포함됩니다.

### 내용
<a name="integration-server-sdk-cpp-ref-dataypes-process-contents"></a>

**포트**  
서버 프로세스가 새 플레이어 연결을 수신 대기하는 포트 번호입니다. 이 값은 이 게임 서버 빌드를 전개하는 플릿에 대해 구성된 포트 범위에 속해야 합니다. 이 포트 번호는 게임 세션 및 플레이어 세션 객체에 포함되며, 게임 세션이 서버 프로세스에 연결할 때 이 포트 번호를 사용합니다.  
유형: 정수   
필수 항목 여부: 예

**logParameters**  
게임 세션 로그 파일의 디렉터리 경로 목록을 포함하는 객체입니다.  
유형: Aws::GameLift::Server::[LogParameters](#integration-server-sdk-cpp-ref-dataypes-log)  
필수 여부: 아니요

**onStartGameSession**  
Amazon GameLift Servers 서비스가 새 게임 세션을 활성화하기 위해 간접 호출하는 콜백 함수의 이름입니다. Amazon GameLift Servers는 클라이언트 요청 [CreateGameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreateGameSession.html)에 대한 응답으로 이 함수를 호출합니다. 콜백 함수는 [GameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html) 객체를 전달합니다(*Amazon GameLift Servers Service API Reference*에서 정의함).  
유형: `const std::function<void(Aws::GameLift::Model::GameSession)> onStartGameSession`   
필수 항목 여부: 예

**onProcessTerminate**  
Amazon GameLift Servers 서비스가 서버 프로세스를 강제로 종료하기 위해 간접 호출하는 콜백 함수의 이름입니다. 이 함수를 호출한 후 Amazon GameLift Servers는 서버 프로세스가 종료될 때까지 5분을 기다렸다가 [ProcessEnding()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-processending) 호출로 응답합니다. 응답이 수신되지 않으면 서버 프로세스를 종료합니다.  
유형: `std::function<void()> onProcessTerminate`  
필수 항목 여부: 아니요

**onHealthCheck**  
Amazon GameLift Servers 서비스가 서버 프로세스에서 상태 보고서를 요청하기 위해 간접 호출하는 콜백 함수의 이름입니다. Amazon GameLift Servers는 60초 간격으로 이 기능을 호출합니다. 이 함수를 호출한 후 Amazon GameLift Servers는 60초 동안 응답을 기다립니다. 아무 것도 수신되지 않으면 프로세스를 비정상으로 기록합니다.  
유형: `std::function<bool()> onHealthCheck`  
필수 항목 여부: 아니요

**onUpdateGameSession**  
Amazon GameLift Servers 서비스가 업데이트된 게임 세션 객체를 전달하기 위해 간접 호출하는 콜백 함수의 이름입니다. [매치 채우기](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html) 요청이 처리되면 업데이트된 매치메이커 데이터를 제공하기 위해 Amazon GameLift Servers에서 이 함수를 호출합니다. [GameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html) 객체, 상태 업데이트(`updateReason`) 및 매치 채우기 티켓 ID를 전달합니다.  
유형: `std::function<void(Aws::GameLift::Server::Model::UpdateGameSession)> onUpdateGameSession`   
필수 항목 여부: 아니요

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

이 데이터 유형은 매치메이킹 채우기 요청을 보내는 데 사용됩니다. 해당 정보는 [StartMatchBackfill()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-startmatchbackfill) 호출을 통해 Amazon GameLift Servers 서비스에 전달됩니다.

### 내용
<a name="integration-server-sdk-cpp-ref-dataypes-startbackfill-contents"></a>

**GameSessionArn**  
 고유한 게임 세션 식별자입니다. [GetGameSessionId()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-getgamesessionid) API 작업은 ARN 형식의 식별자를 반환합니다.  
유형: 문자열  
필수 항목 여부: 예

**MatchmakingConfigurationArn**  
매치메이커가 이 요청에 사용할 ARN 형식의 고유 식별자입니다. 원본 게임 세션을 만드는 데 사용된 매치메이커를 찾으려면 게임 세션 객체에서 매치메이커 데이터 속성을 확인합니다. 매치메이커 데이터에 대한 자세한 내용은 [매치메이커 데이터를 사용하는 작업](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-server.html#match-server-data)을 참조하세요.  
유형: 문자열  
필수 항목 여부: 예

**Players**  
현재 게임 세션에 있는 모든 플레이어를 나타내는 데이터 세트입니다. 매치메이커는 이 정보를 사용하여 현재 플레이어와 적절하게 일치하는 새로운 플레이어를 검색합니다. 플레이어 객체 형식에 대한 자세한 내용은 *Amazon GameLift Servers API 참조 가이드*를 참조하세요. 플레이어 속성, ID 및 팀 배정을 찾으려면 매치메이커 데이터 속성에서 게임 세션 객체를 확인합니다. 매치메이커에서 지연 시간을 사용하는 경우 현재 리전에 대한 업데이트 지연 시간을 수집하여 각 플레이어의 데이터에 포함합니다.  
유형: std:vector[<player>](https://docs.aws.amazon.com/gamelift/latest/apireference/API_Player.html)  
필수 항목 여부: 예

**TicketId**  
매치메이킹 또는 매치 채우기 요청 티켓의 고유 식별자입니다. 여기에 값이 제공되지 않으면 Amazon GameLift Servers는 UUID 형식으로 값을 생성합니다. 이 식별자를 사용하여 매치 채우기 티켓 상태를 추적하거나 필요한 경우 요청을 취소합니다.  
유형: 문자열  
필수 항목 여부: 아니요

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

이 데이터 형식은 매치메이킹 채우기 요청을 취소하는 데 사용됩니다. 해당 정보는 [StopMatchBackfill()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-stopmatchbackfill) 호출을 통해 Amazon GameLift Servers 서비스에 전달됩니다.

### 내용
<a name="integration-server-sdk-cpp-ref-dataypes-stopbackfill-contents"></a>

**GameSessionArn**  
취소 중인 요청과 연결된 고유한 게임 세션 식별자입니다.  
유형: 문자열  
필수 항목 여부: 예

**MatchmakingConfigurationArn**  
이 요청을 보낸 매치메이커의 고유 식별자입니다.  
유형: 문자열  
필수 항목 여부: 예

**TicketId**  
취소할 채우기 요청 티켓의 고유 식별자입니다.  
유형: 문자열  
필수 항목 여부: 예