Realtime 서버 인터페이스 - Amazon GameLift

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

Realtime 서버 인터페이스

Realtime 스크립트가 초기화되면 Realtime 서버 인터페이스가 반환됩니다. 이 주제는 인터페이스를 통해 사용할 수 있는 속성과 메서드를 설명합니다. Realtime 스크립트 작성에 대해 자세히 알아보고 Realtime 스크립트 생성에서 자세한 스크립트 예제를 살펴봅니다.

Realtime 인터페이스를 통해 다음과 같은 객체에 액세스합니다.

  • 세션

  • 플레이어

  • gameMessage

  • 구성

Realtime 세션 객체

이러한 메서드를 사용하여 서버 관련 정보에 액세스하고 서버 관련 작업을 실시합니다.

getPlayers()

현재 게임 세션에 연결된 플레이어의 피어 IDs 목록을 검색합니다. 플레이어 객체의 배열을 반환합니다.

구문

rtSession.getPlayers()

broadcastGroupMembership업데이트 ()

업데이트된 그룹 구성원 자격 목록을 플레이어 그룹으로 전송합니다. 브로드캐스트 (groupIdTo브로드캐스트) 할 멤버십과 업데이트를 받을 그룹을 지정합니다 (targetGroupId). 그룹은 양의 정수이거나 모든 그룹을 나타내려면 “IDs-1"이어야 합니다. 사용자 정의 그룹의 예는 을 Realtime 서버 스크립트 예제 참조하십시오. IDs

구문

rtSession.broadcastGroupMembershipUpdate(groupIdToBroadcast, targetGroupId)

getServerId()

메시지를 서버로 라우팅할 때 사용되는 서버의 고유한 피어 ID 식별자를 검색합니다.

구문

rtSession.getServerId()

getAllPlayersGroupId()

현재 게임 세션에 연결되어 있는 모든 플레이어가 속한 기본 그룹의 그룹 ID를 검색합니다.

구문

rtSession.getAllPlayersGroupId()

processEnding()

Realtime 서버가 게임 서버를 종료하게 합니다. 이 기능은 게임 세션에서 명확하게 종료하도록 Realtime 스크립트에서 호출해야 합니다.

구문

rtSession.processEnding()

getGameSessionId ()

현재 실행 중인 게임 세션의 고유한 ID를 검색합니다.

구문

rtSession.getGameSessionId()

getLogger()

로깅할 인터페이스를 검색합니다. 이것을 사용하여 게임 세션 로그에 캡처될 문을 기록합니다. 로거는 “정보”, “경고” 및 “오류” 문 사용을 지원합니다. 예: logger.info("<string>").

구문

rtSession.getLogger()

sendMessage()

newTextGameMessage또는 newBinaryGameMessage 를 사용하여 만든 메시지를 실시간 서버에서 UDP 채널을 사용하는 플레이어 수신자에게 보냅니다. 플레이어의 피어 ID를 사용하여 수신자를 식별합니다.

구문

rtSession.sendMessage(gameMessage, targetPlayer)

sendGroupMessage()

실시간 서버에서 newTextGameMessage 또는 newBinaryGameMessage 를 사용하여 만든 메시지를 채널을 사용하는 플레이어 그룹의 모든 플레이어에게 보냅니다. UDP 그룹은 양의 정수이거나 모든 그룹을 나타내려면 “IDs-1"이어야 합니다. 사용자 정의 그룹의 예는 을 Realtime 서버 스크립트 예제 참조하십시오. IDs

구문

rtSession.sendGroupMessage(gameMessage, targetGroup)

sendReliableMessage()

실시간 서버에서 newTextGameMessage 또는 newBinaryGameMessage 를 사용하여 만든 메시지를 채널을 사용하는 플레이어 수신자에게 보냅니다. TCP 플레이어의 피어 ID를 사용하여 수신자를 식별합니다.

구문

rtSession.sendReliableMessage(gameMessage, targetPlayer)

sendReliableGroup메시지 ()

실시간 서버에서 newTextGameMessage 또는 newBinaryGameMessage 를 사용하여 만든 메시지를 TCP 채널을 사용하는 플레이어 그룹의 모든 플레이어에게 보냅니다. 그룹은 IDs 양의 정수이거나 모든 그룹을 나타내려면 “-1"이어야 합니다. 사용자 정의 그룹의 예는 을 Realtime 서버 스크립트 예제 참조하십시오. IDs

구문

rtSession.sendReliableGroupMessage(gameMessage, targetGroup)

newTextGame메시지 ()

SendMessage 함수를 사용하여 서버에서 플레이어 수신자에게 보낼 텍스트가 포함된 새 메시지를 만듭니다. 메시지 형식은 실시간 클라이언트에서 사용되는 형식과 비슷합니다 SDK (참조RTMessage). gameMessage 객체를 반환합니다.

구문

rtSession.newTextGameMessage(opcode, sender, payload)

newBinaryGame메시지 ()

SendMessage 함수를 사용하여 서버에서 플레이어 수신자에게 전송할 바이너리 데이터가 포함된 새 메시지를 만듭니다. 메시지 형식은 실시간 클라이언트에서 사용되는 형식과 비슷합니다 SDK (참조RTMessage). gameMessage 객체를 반환합니다.

구문

rtSession.newBinaryGameMessage(opcode, sender, binaryPayload)

플레이어 객체

플레이어 관련 정보에 액세스합니다.

플레이어. peerId

Realtime 서버에 연결할 때 게임 클라이언트에 할당되어 게임 세션에 참가하는 고유한 ID입니다.

플레이어. playerSessionId

Realtime 서버에 연결되고 게임 세션에 참가할 때 게임 클라이언트가 참조한 플레이어 세션 ID입니다.

게임 메시지 객체

이러한 메서드를 사용하여 Realtime 서버가 수신하는 메시지에 액세스합니다. 게임 클라이언트에서 수신되는 메시지는 RTMessage 구조를 갖습니다.

getPayloadAs텍스트 ()

게임 메시지 페이로드를 텍스트로 가져옵니다.

구문

gameMessage.getPayloadAsText()

gameMessage.opcode

메시지에 포함된 작업 코드입니다.

gameMessage. 페이로드

메시지에 포함된 페이로드입니다. 텍스트 또는 이진일 수 있습니다.

gameMessage. 발신자

메시지를 전송한 게임 클라이언트의 피어 ID입니다.

gameMessage. 신뢰할 수 있습니다

메시지가 TCP (true) 또는 UDP (false) 를 통해 전송되었는지 여부를 나타내는 부울.

구성 객체

구성 객체를 사용하여 기본 구성을 재정의할 수 있습니다.

구성. maxPlayers

허용할 수 있는 최대 클라이언트/서버 연결 수입니다 RealTimeServers.

기본값은 32입니다.

구성. pingIntervalTime

서버가 연결된 모든 클라이언트에 핑 전송을 시도하여 연결이 정상인지 확인하는 시간 간격(밀리초)입니다.

기본값은 3000ms입니다.