@@ -173,14 +173,15 @@ private void handleChatMessage(WebSocketSession session, JsonNode jsonNode) {
173173 Long roomId = jsonNode .get ("roomId" ).asLong ();
174174 Long userId = jsonNode .get ("userId" ).asLong ();
175175 String message = jsonNode .get ("message" ).asText ();
176+ String from = jsonNode .has ("from" ) ? jsonNode .get ("from" ).asText () : null ;
177+
178+ log .info ("์ฑํ
๋ฉ์์ง: roomId={}, userId={}, message={}, from={}" , roomId , userId , message , from );
176179
177180 if (message == null || message .trim ().isEmpty ()) {
178181 sendErrorMessage (session , "๋ฉ์์ง ๋ด์ฉ์ด ๋น์ด์์ต๋๋ค." );
179182 return ;
180183 }
181184
182- log .info ("์ฑํ
๋ฉ์์ง: roomId={}, userId={}, message={}" , roomId , userId , message );
183-
184185 // ์ฌ์ฉ์ ์ ๋ณด ๊ฒ์ฆ
185186 User user = userRepository .findById (userId ).orElse (null );
186187 if (user == null ) {
@@ -194,8 +195,20 @@ private void handleChatMessage(WebSocketSession session, JsonNode jsonNode) {
194195 ChatMsgRequest chatMsgRequest = new ChatMsgRequest (message );
195196 ChatMsgResponse response = chatMessageService .sendMessage (chatMsgRequest , userId , roomId );
196197
197- // ๋ฉ์์ง ํฌ๋งท ๋ณํํ์ฌ ์ ์ก
198- String messageJson = objectMapper .writeValueAsString (response );
198+ // ์น์์ผ ๋ฉ์์ง ํฌ๋งท ์์ฑ (ํด๋ผ์ด์ธํธ์ ์ผ์น์ํด)
199+ Map <String , Object > wsMessage = new HashMap <>();
200+ wsMessage .put ("type" , "CHAT" );
201+ wsMessage .put ("roomId" , roomId );
202+ wsMessage .put ("userId" , userId );
203+ wsMessage .put ("chatMsgId" , response .getChatMsgId ()); // DB์ ์ ์ฅ๋ ๋ฉ์์ง ID ์ถ๊ฐ
204+ wsMessage .put ("from" , response .getFrom ());
205+ wsMessage .put ("nickname" , response .getFrom ()); // ํด๋ผ์ด์ธํธ ํธํ์ฑ์ ์ํด ๋ ํ๋ ๋ชจ๋ ์ค์
206+ wsMessage .put ("message" , message );
207+ wsMessage .put ("sendAt" , response .getSendAt ().toString ());
208+
209+ // ๋ฉ์์ง JSON ๋ณํ
210+ String messageJson = objectMapper .writeValueAsString (wsMessage );
211+ log .info ("Broadcasting message: {}" , messageJson );
199212
200213 // ํด๋น ์ฑํ
๋ฐฉ์ ๋ชจ๋ ์ธ์
์ ๋ฉ์์ง ๋ธ๋ก๋์บ์คํธ
201214 broadcastMessageToRoom (roomId , messageJson );
@@ -223,9 +236,11 @@ private void broadcastMessageToRoom(Long roomId, String message) {
223236 for (WebSocketSession session : roomSessions ) {
224237 try {
225238 if (session .isOpen ()) {
239+ log .debug ("Broadcasting to session {}" , session .getId ());
226240 session .sendMessage (new TextMessage (message ));
227241 } else {
228242 failedSessions .add (session );
243+ log .debug ("Session closed, adding to failed sessions: {}" , session .getId ());
229244 }
230245 } catch (IOException e ) {
231246 log .error ("๋ฉ์์ง ๋ธ๋ก๋์บ์คํธ ์ค ์ค๋ฅ: {}" , e .getMessage ());
0 commit comments