Showing
1 changed file
with
6 additions
and
1 deletions
... | @@ -14,7 +14,8 @@ | ... | @@ -14,7 +14,8 @@ |
14 | 14 | ||
15 | ## 로그인 | 15 | ## 로그인 |
16 | 16 | ||
17 | -서버에 `login`을 보냅니다. 아직 로그인 로직이 구현되지 않았으므로, 임의로 사용할 `username`만을 포함하여 보내면 됩니다. | 17 | +서버에 `login`을 보냅니다. 본인이 사용하고 싶은 닉네임을 `nickname`속성에 담아 보내면 됩니다. 닉네임은 공백이 허용되지 않고 최대 12글자입니다. 만약 이 조건을 만족하지 않는다면 요청에 실패하고 사유가 전달됩니다. 요청에 성공한다면 문자열이 반환되는데, 이는 본인의 고유한 `uuid`값입니다. 앞으로 사용되는 모든 `username` 속성에 이 값을 사용해주세요. **`username`은 유저의 이름이 아니라 고유한 `uuid`를 의미하고, `nickname`은 고유하지 않을 수 있습니다!** |
18 | +상대방의 닉네임은 방 접속시에 얻을 수 있습니다. 오직 UI에 보여주기 위한 용도로만 사용되며, 실제 처리는 모두 `username`을 통해 이뤄집니다. | ||
18 | 19 | ||
19 | ## 로비 | 20 | ## 로비 |
20 | 21 | ||
... | @@ -24,6 +25,8 @@ | ... | @@ -24,6 +25,8 @@ |
24 | 25 | ||
25 | 새로운 방을 만들고 싶다면 `createRoom`을 보내면 됩니다. 방의 이름을 `name` 속성에 담아 보내야 합니다. 방의 이름은 공백일 수 없고, 최대 30자까지 가능합니다. 방을 만드는데 성공했다면 방에 자동으로 접속되고 방장을 맡게 됩니다. 이때 반환값은 `joinRoom`과 동일한 `RoomInfo`를 받습니다. | 26 | 새로운 방을 만들고 싶다면 `createRoom`을 보내면 됩니다. 방의 이름을 `name` 속성에 담아 보내야 합니다. 방의 이름은 공백일 수 없고, 최대 30자까지 가능합니다. 방을 만드는데 성공했다면 방에 자동으로 접속되고 방장을 맡게 됩니다. 이때 반환값은 `joinRoom`과 동일한 `RoomInfo`를 받습니다. |
26 | 27 | ||
28 | +`RoomInfo`에는 각 유저의 닉네임을 `nickname` 속성으로 담고 있습니다. | ||
29 | + | ||
27 | ### 방 | 30 | ### 방 |
28 | 31 | ||
29 | 방에 접속중인 유저의 목록에 변화가 생기면, `updateRoomUser`가 수신됩니다. `state`는 다음 3가지 값 중 하나의 값을 가집니다. | 32 | 방에 접속중인 유저의 목록에 변화가 생기면, `updateRoomUser`가 수신됩니다. `state`는 다음 3가지 값 중 하나의 값을 가집니다. |
... | @@ -32,6 +35,8 @@ | ... | @@ -32,6 +35,8 @@ |
32 | - `updated`: 기존 유저의 정보가 업데이트되었습니다. 해당 유저의 방장, 준비 여부가 변경되면 수신됩니다. | 35 | - `updated`: 기존 유저의 정보가 업데이트되었습니다. 해당 유저의 방장, 준비 여부가 변경되면 수신됩니다. |
33 | - `removed`: 유저가 방에서 퇴장하였습니다. | 36 | - `removed`: 유저가 방에서 퇴장하였습니다. |
34 | 37 | ||
38 | +해당 메세지에는 변화된 유저를 특정하기 위한 `username`이 포함되어 있고, 그 유저의 닉네임인 `nickname`, 방장 여부인 `admin`, 준비 여부인 `ready`를 포함하고 있습니다. | ||
39 | + | ||
35 | 유저가 채팅을 입력했다면 `chat`을 보내면 됩니다. 다른 사람이 채팅을 입력한 경우에도 `chat`이 수신됩니다(`ServerInboundMessage<"chat">`과 `ServerOutboundMessage<"chat">`이 다르게 정의되었다는 점에 유의하세요). 자신이 보낸 채팅에 대해서는 수신되지 않으므로 이 경우 오프라인으로 메세지를 추가하여야 합니다. 채팅 문자열의 양 끝 공백을 제거했을 때 문자열이 빈 문자열이거나, 채팅 문자열의 길이가 300을 초과하는 경우 요청이 실패 처리됩니다. | 40 | 유저가 채팅을 입력했다면 `chat`을 보내면 됩니다. 다른 사람이 채팅을 입력한 경우에도 `chat`이 수신됩니다(`ServerInboundMessage<"chat">`과 `ServerOutboundMessage<"chat">`이 다르게 정의되었다는 점에 유의하세요). 자신이 보낸 채팅에 대해서는 수신되지 않으므로 이 경우 오프라인으로 메세지를 추가하여야 합니다. 채팅 문자열의 양 끝 공백을 제거했을 때 문자열이 빈 문자열이거나, 채팅 문자열의 길이가 300을 초과하는 경우 요청이 실패 처리됩니다. |
36 | 41 | ||
37 | 방을 나가고 싶으면 `leaveRoom`을 보내면 됩니다. | 42 | 방을 나가고 싶으면 `leaveRoom`을 보내면 됩니다. | ... | ... |
-
Please register or login to post a comment