Skip to content

3주차 데일리 스크럼

Seyoung Park edited this page Dec 4, 2022 · 4 revisions

🔥 2022-11-28

🤔 어제까지 진행된 일

성훈

  • 장훈님, 정민님과 회의
  • 소켓, webRTC 연결방식
  • signaling 명세

정민

  • 백앤드 배포
    • github actions으로 배포
    • github host server → dockerhub push → ssh ncp server → pull image → run image

장훈

  • WebRTC hook 만듬 - PR 올림

세영

  • 리팩토링 작업한 부분 고도화
    • ref 접근한 부분 삭제

✅ 프로젝트 일정 충족 여부

  • 저번 주 목표였던 Interviewer 페이지가 아직 명확히 구현되지 않았음.

💡 오늘 해야할 일

  • interview docs 설계
  • signaling 명세
    • 오늘 BE랑 이벤트 이름, 통신 형태 맞춰야함

*️⃣ 특이 사항

Interview docs 설계

현재 nested하게 되어 있는 feedback을 flat한 형태로 전환

Client feedback type

FEEDBACK 1.0
{
	startTime(id),
	feedbackList: string[]
	readOnly: boolean[]
}

FEEDBACK 2.0
{
	startTime: number
	innerIndex: number
	content: string
	readOnly: boolean
}

DB Schema

INTERVIEW_DOCS
{
	id: uuid
	interviewee_id: string
	video_link: [url]/uuid
	play_time: number
}

FEEDBACK
{
	id: number (auto_increment)
	docs_id: (forigne key)
	startTime: number
	innerIndex: number
	content: string
}

join을 1회만 수행하고 service layer에서 취합해서 client에게 내려준다.

API INTERFACE

api/create-interview-docs

{
	interviewee,
	uuid,
}

인터뷰가 종료됐을 때, 어떻게 되어야 하나?

목적

  • 소켓 서버에서 blob 쌓아 뒀다가 object storage에 올린다.
  • docs를 db에 저장한다. → uuid

과정

  1. 누군가가 인터뷰 종료 요청한다 socket server에 종료요청 보낸다.
  2. socket server은 uuid를 생성한다
    1. 해당 uuid를 인터뷰에 있는 모든 이용자에게 뿌린다.
  3. 면접자는 종료 요청을 받으면 rest server에 내가 면접자라는 것을 알린다 with uuid
    1. waitting page로 이동한다
  4. 면접관은 종료 요청을 받으면 feedback page로 이동한다

피드백이 종료됐을 때

과정

  1. 면접관이 피드백 종료한다.
    • rest server에 작성한 피드백을 보낸다. with username, feedback, uuid
    • 소켓에 자신이 피드백 작성을 종료했다는 것을 알린다.
  2. 소켓에서 몇명의 면접관이 종료되었는지 확인하고 면접자에게 보낸다.

문제

  • 현재 흘러간 시간과 blob으로 만든 영상간의 싱크가 맞을까요?
    • 일단은 고려 안하고 나중에 테스트 해봐요
  • 클라에서 socket server으로 blob을 보낼 수 있나?

solved

  • sorting을 server에서 할지 아니면 db에서 할지 → db에서 할거에요
  • rest server와 socket server 사이에 상태 공유를 어떤 방식으로 할 것인가? → 안해요

TODO

  • 서버에 blob단위로 보내는거 검증, 명세 작성 → 세영
  • webRTC 이벤트 명세 → 장훈, 성훈
  • 영상 업로드가 끝났을 때, 면접관에게 이벤트 주는 것 → 정민
  • 컴포넌트 재사용 단위 결정하기 → interviewer에 도입하면서.. 결정..?
  • 모달

🔥 2022-11-29

🤔 어제까지 진행된 일

FE

  • 피드백 페이지 수정 완료
  • 로비에 webRTC 이식

💡 오늘 해야할 일

FE

  • 서버 mediastream을 blob으로 보내는거
  • 인터뷰어, lobby webRTC 이식
  • 비디오 그리드

BE

  • API 명세 만들기

🔥 2022-11-30

🤔 어제까지 진행된 일

FE

  • mediaStreamer 모듈만들고
  • routing 리팩터링
  • interviewer, interviewee webRTC 이식

BE

  • nest한 자료구조 리팩터링
    • 실제 DB의 자료구조에 맞게
    • redis에 저장되는 구조 고려

💡 오늘 해야할 일

FE

  • lobby에 로직 붙이기
  • Interviewee에 피드백 area 붙이기

BE

  • 나머지 이벤트 완성하기

*️⃣ 특이 사항

  • 멘토님 회의

🔥 2022-12-01

🤔 어제까지 진행된 일

  • Video grid 추가
  • Protected routing 로직 변경
  • Room interview socket event 구

💡 오늘 해야할 일

  • devserver socket proxy 설정하기
  • 소켓 api 붙이기
    • 방 입장
    • 인터뷰 시작
    • 인터뷰 종료
    • 피드백 종료

*️⃣ 특이 사항

  • 멘토님 회의

🔥 2022-12-02

🤔 어제까지 진행된 일

  • Landing page 구현
  • Socket webRTC 실제 테스트 후 리팩토링

💡 오늘 해야할 일

  • interface Release v0.0.1
Clone this wiki locally