diff --git a/apps/server/src/domains/room/application/useCases/joinRoomUseCase.ts b/apps/server/src/domains/room/application/useCases/joinRoomUseCase.ts index 8ab6699..4f9a1fd 100644 --- a/apps/server/src/domains/room/application/useCases/joinRoomUseCase.ts +++ b/apps/server/src/domains/room/application/useCases/joinRoomUseCase.ts @@ -14,10 +14,10 @@ roomManager: JoinRoomPort; socketId: string; data: roomTypes.JoinRoomPayload; - output: RoomOutputPort; + output: Pick; }; -/** 参加イベントを受け取り,ルーム更新を配信する */ +/** 参加イベントを受け取り,参加可否を判定する */ export const joinRoomUseCase = ({ roomManager, socketId, @@ -50,7 +50,5 @@ return joinResult; } - output.publishRoomUpdateToRoom(roomId, joinResult.room); - return joinResult; }; diff --git a/apps/server/src/network/handlers/room/registerRoomHandlers.ts b/apps/server/src/network/handlers/room/registerRoomHandlers.ts index d5729b1..d888b40 100644 --- a/apps/server/src/network/handlers/room/registerRoomHandlers.ts +++ b/apps/server/src/network/handlers/room/registerRoomHandlers.ts @@ -21,7 +21,7 @@ const roomOutputAdapter = createRoomOutputAdapter(common); // 参加要求のペイロード検証と参加処理を実行する - socket.on(protocol.SocketEvents.JOIN_ROOM, (data: unknown) => { + socket.on(protocol.SocketEvents.JOIN_ROOM, async (data: unknown) => { if (!isJoinRoomPayload(data)) { logEvent("Network", { event: "JOIN_ROOM", @@ -61,7 +61,7 @@ return; case "joined": - socket.join(roomId); + await socket.join(roomId); roomOutputAdapter.publishRoomUpdateToRoom(roomId, joinResult.room); logEvent("RoomUseCase", { event: "ROOM_UPDATE",