최종프로젝트 회고록 - 1 (채팅기능)

민태영·2023년 9월 25일
post-thumbnail

개요: 기업유저와 일반유저와의 소통을 위하여 채팅기능 도입

사용 기술스택

  • nestJS
  • socket.io
  • javascript

완성본

구현하려는 기능

  • 실시간 1대1(회사와 유저간의) 채팅기능
  • 채팅내용 저장 및 불러오기
  • 실시간 채팅 알람기능

1. 실시간 1대1 채팅기능

고민한점:
1) 위의 사진과 같이 상대방이 채팅방을 연 상태에서 어떻게 실시간 채팅을 할수 있게할까?
// JS

자신이 대화하고 싶은 유저의 서브페이지에 들어가서 메세지보내기 버튼을 누른다.
(메세지보내기를 누르면 아래의 함수가 실행)
// JS

chat테이블에 저장이 되면 chattingBox함수가 실행이 되면서
채팅창이 활성화 되는 동시에

socket.emit('join', roomId)로 chat.id를 보내 join한다.

채팅창이 열리면서 chat테이블에 자신과 상대방의 ID를 저장하고 socket을 chat id로 join

내가 보낸 메세지는 나와 상대방이 봐야하기 때문에

로 보낸다.

profile
꿈을 꾸는 개발자

0개의 댓글