Skip to content
soyeon edited this page Jun 27, 2023 · 17 revisions

현재 구현한 것

  • 채팅방은 본인과 관리자만 이용
  • 관리자와 user 채팅 페이지 분리
  • mysql (roomId, user) 저장
  • Redis 적용(session 활용하지 않고 redis 활용하는 방안) → db 조회 최소화
  • CustomException 처리
  • 채팅 내용 저장(파일.txt)
  • 랜덤 채팅 구현(@Async)
  • kakao, google login(OAuth2) (naver는 적용이 안됨,,)
  • stomp + jwt
  • 채팅방 알림(SSE) 적용 - connectUsers로 알림 띄우기
  • 읽은 msg와 안읽은 msg 구분(file 저장할 때 마지막에 적힌 수로 판단(connectUser))
  • 마지막 msg 띄워주기(file 마지막 msg만 가져와서 띄워줌)
  • 관리자만 채팅 리스트 띄워놓기

  • 채팅이 완료되면 채팅방 삭제시키기(+ 채팅 기록 삭제)




구현해야할 것

  • 채팅방 5분 삭제 취소하기 → cancle을 활용해서 Timer를 중지시키면 실행될 예정인 모든 작업을 취소한다고 함
  • nickname 변경하면 token 재설정 (user에 boolean 추가해서 nickname한번만 변경가능하게 함 + 중복체크)
  • 채팅방 삭제 방식 변경
    • 기존에 채팅방 삭제는 관리자가 채팅이 완료되었을 때 직접 삭제함
    • 이제는 폴더를 일별로 만들어서 채팅이 완료되면 리셋 리스트에 포함시킨다.
    • 리셋 리스트에 포함되고 하루가 지나면 새로 채팅방을 만들어준다.
    • 채팅방 기록들은 일주일이 지나면 삭제한다.
  • Mysql, redis (user chat 개수 띄워주기)
Clone this wiki locally