Room 생성과 인증·입장 — Create · Authenticate · Join

API가 Room Spot을 예약·생성하고, Play Session이 인증·Actor bind·Room join을 잇는다

Room 생성과 인증·입장 — Create · Authenticate · Join API가 Room Spot을 예약·생성하고, Play Session이 인증·Actor bind·Room join을 잇는다 CreateGameHttpReq TicTacToeGameCreateReq (Room Spot 생성) Room Spot 생성·초기화 생성 수락 생성 결과(RoomId) CreateGameHttpRes(RoomId, …) AuthenticateReq AuthenticatePlayerReq (Api 하나 선택) AuthenticatePlayerRes(PlayerInfo) PlayerActorCreateReq — GetOrCreate current ActorRef AuthenticateRes(PlayerInfo) JoinGameMsg(RoomId) bound Actor에 JoinGameMsg 전달 TicTacToeGameJoinReq(PlayerInfo) TicTacToeGameJoinRes (admission 통과) current session에 JoinGameNotify push JoinGameNotify 기존 member session에 PlayerJoinedNotify Client · Sequence participant Client Api (A/B) · Sequence participant Api (A/B) Spot Manager · Sequence participant Spot Manager Play Session (A/B) · Sequence participant Play Session (A/B) Player Actor · Sequence participant Player Actor Room Spot · Sequence participant Room Spot

ingress 선택과 owner 불변

  • • 원문 Note(C~P 구간): host는 Play A, guest·observer는 Play B를 사용한다. Client가 어떤 Play ingress를 써도 room owner는 바뀌지 않는다.
  • • CreateGameHttpRes 전체 필드: RoomId, RequiredLevel, PlayEndpoints, PlayNodes, GameName.

자기 확인 단계와 원문 라벨

  • • 원문 R→R 자기 메시지 'Level ≥ RequiredLevel 확인'은 archify sequence가 자기 메시지를 지원하지 않아 TicTacToeGameJoinRes 화살표 라벨에 합쳤다.
  • • 참여자 원문 라벨 — API: Api A 또는 Api B · M: Framework Spot Manager · P: Play A 또는 Play B Session.
  • • 인증 전에 JoinGameMsg·PlaceMarkReq가 오면 Actor를 만들지 않고 오류로 끝낸다. Join 실패는 current session에 JoinGameFailedNotify로 알린다.