EOS 로비 통합
이 가이드는 Unreal 게임 프로젝트에서 EOS 로비와 함께 작동하도록 Edgegap을 통합하는 방법을 보여줍니다. 일부 단계에서는 토큰을 사용하여 당사의 API에 요청을 보내야 하며, curl 아래 제공된 명령은 각 응답을 미리 확인하여 코드에서 어떻게 처리할지 결정할 수 있도록 해줍니다. 요청에 토큰을 사용할 때는 토큰 키워드를 안전하게 보관해야 합니다.
또한 당사 플랫폼에 애플리케이션 버전이 이미 설정되어 있어야 합니다. 이 경우 테스트 과정을 빠르게 하기 위해 Edgegap Unreal 플러그인 사용을 권장합니다. 플러그인에 대한 자세한 내용은 당사 문서를 여기.
안전 조치로서 프로덕션 환경에서 EOS 로비 소유자가 Edgegap API에 직접 요청을 보내는 것은 권장되지 않으며, 이는 클라이언트가 API 토큰에 접근할 수 있기 때문입니다. 대신 별도의 서비스를 사용하여 이러한 요청을 관리해야 합니다.
1. 플레이어의 공용 IP 가져오기 및 저장
우선, 로비에 합류하는 각 플레이어(로비 소유자 포함)는 자신의 공용 IP를 가져와서 로비 멤버 속성.
curl --location --request GET 'https://api.edgegap.com/v1/ip' \
--header 'Authorization: [EDGEGAP_API_TOKEN]'2. 배포 생성
로비 소유자가 매치가 시작할 준비가 되었다고 결정하면 저장된 공용 IP를 사용하여 Edgegap에 새 배포를 생성하는 요청을 보내야 합니다.
curl --location --request POST 'https://api.edgegap.com/v1/deploy' \
--header 'Content-Type: application/json' \
--header 'Authorization: [EDGEGAP_API_TOKEN]' \
--data-raw '{
"app_name": "[EDGEGAP_APP_NAME]",
"version_name": "[EDGEGAP_APP_VERSION]",
"ip_list": [
"[LOBBY_MEMBER_IP]"
]
}'그 후 로비 소유자는 배포 생성 요청의 응답에 제공된 request_id를 사용하여 배포를 계속 폴링해야 합니다. 응답에 배포의 current_status 가 READY로 설정되면 로비 소유자는 배포의 IP 및 포트 값을 EOS 로비 속성.
3. 배포에 연결
플레이어들이 IP 및 포트 값이 할당되었다는 알림을 받으면 해당 값을 클라이언트 캐시와 비교한 다음 서버에 연결하여 매치를 플레이할 수 있습니다.
4. 매치 및 배포 종료
매치가 끝나면 로비 소유자는 EOS 로비 속성에서 IP 및 포트 값을 해제하여 다른 모든 사람에게 서버에서 정상적으로 연결을 끊으라는 알림을 보냅니다. 애플리케이션이 환경 변수를 주입하도록 구성되어 있으면 이 시점에 내부에서 배포를 종료하는 데 이를 사용할 수 있습니다.
서버 외부에서 배포를 종료하려면 아래에 표시된 curl 명령과 같은 요청을 대신 사용할 수 있습니다.
플레이어가 로비에 남아 있는 경우 로비 소유자는 동일한 사람들과 재경기를 시작하기 위해 새 배포를 요청하는 단계부터 다시 반복할 수 있습니다.
Last updated
Was this helpful?

