프로젝트/공연 예약 플랫폼

웹소켓으로 채팅방 만들기 - 채팅방 구상

sm_leaf25 2025. 3. 10. 19:38

공연 관련 단체 채팅방 기능 구현 

 

* 채팅방 구상

→ 커뮤니티 페이지에서 각 채팅방 리스트를 테이블로 보여줌. 

  페이징 처리 필요

 

1) 리스트에서 입장 버튼을 클릭하면 해당 채팅방으로 입장 (채팅방 번호와 참여한 회원의 정보가 전달되어야 한다.)
2) 채팅방 페이지의 대화 내용, 채팅 참여 인원 정보 DB에 저장 (재입장 해도 데이터 확인할 수 있도록)
3) 채팅방 페이지
   (1) 뒤로 가기 버튼

        : 클릭 시 채팅방 목록으로 이동

        : 참여한 채팅방 정보 마이페이지에서 확인 가능 => 추후 입장 가능(채팅한 내용도 확인 가능)
   (2) 나가기 버튼

        : 클릭 시 채팅방 목록으로 이동

        : 참여한 채팅방 정보 DB에서 삭제

        →  이전에 참여 이력이 있으면 채팅방의 대화 내용을 모두 보여줘야 함 

          새롭게 들어온 경우 들어온 시점부터의 대화내용이 보이도록? or 이전 기록도 모두 볼 수 있도록? 

        →  채팅방 삭제 됐을 때, 채팅방에 입장해 있던 사용자의 정보 삭제 및 채팅 내역 삭제

          카카오톡 처럼 위에 공지 띄워두는 기능 추가 필요

        →  채팅방 삭제 시 삭제되었다는 알림 전송 기능 추가 필요 

  

4. ERD / 테이블 명세서

- ERD

coxldqkd

 

- 테이블 명세서 

테이블명 CHAT
TABLE 기술서
조이름  
 
SYSTEM   담당자  
테이블 설명 채팅방 정보
NO. Attribute Data Type N/N Ky default Description
1 CHAT_NO VARCHAR2(100) O PK   채팅방 번호
2 CHAT_TITLE VARCHAR2(2000) O     채팅방 제목
3 SHOW_NO VARCHAR2(100) O FK   공연 번호
4 USER_NO NUMBER O FK   회원 번호
5 CHAT_COUNT VARCHAR2(2000) O     채팅방 정원
6 CREATEDATE DATE       생성일시
7 STATUS VARCHAR2(1)     Y 상태

 

테이블명 CHAT_JOIN
TABLE 기술서
조이름  
 
SYSTEM   담당자  
테이블 설명 채팅 참여자 정보
NO. Attribute Data Type N/N Ky default Description
1 USER_NO NUMBER O FK   회원 번호
2 CHAT_NO VARCHAR2(2000) O FK   채팅방 번호

 

테이블명 CHAT_MESSAGE
TABLE 기술서
조이름  
 
SYSTEM   담당자  
테이블 설명 채팅방 메시지
NO. Attribute Data Type N/N Ky default Description
1 MESSAGE_NO VARCHAR2(100) O PK   채팅 메시지 번호
2 CHAT_CONTENT VARCHAR2(2000) O     작성한 메시지
3 USER_NO NUMBER O FK   회원 번호
4 CHAT_NO VARCHAR2(100) O FK   채팅방 번호
5 CREATEDATE DATE       작성 시간