Skip to content

2024.12.03

Forest Lee edited this page Dec 3, 2024 · 1 revision

하고 있는 작업

S008: CollectionView 누른 후 slider 수정 버튼 눌렀을 때 slider에 presentationModel 전달 ← frameImage 메서드 어떻게 써야하나요

S017: UseCase 작성(레포랑 연결만하면 댐), Usecase → ViewModel → VC 연결 (길이조절은X)

S042: 화면 넘어가는거 연결, 피어 찾을때 advertising 관리?? (제가 수정해서 그런지 모르겠는데 빨간불 파란불 들어오는게 이상해서 그것도 고치는중이에요)

advertising 끈다고 하셨잖아요?? 혹시 그것때문인가

네네네 그래서 그거 수정해야할거같아요

근데 제가 헷갈리는게

A, B, C를 키고

A→ B 초대, B→ 수락 하면

C한테 A, B 둘다 안떠야 정상이죠? 넵그렇게 지금 했는데

빨간불이 뜨길래 이거 고치려구요

그것도 봤는데

그게 아마 다른 사람한테는 그대로 화면에 떠있는거처럼 보이게되지않나요? 그래서 그걸 사용 안했어요

제가 원하는건 A, B 연결되면 C입장에서 둘다 안보이는건데 blocking 하면 C입장에서 A가 보이다보니깐 빨간불만 고쳐보면 대지않을까요????

A가 invite를 안받겠다고 설정해도 C 입장에서는 그걸 알 방법이 없으니 뷰가 업데이트가 안된다는말이어써요 근데 저는 A의 advertising을 끄고 빨간불도 해결하고 그렇게 하고싶어가지고 한번 해보면 안ㄴ댈까여ㅛ???

A- B 연결되어있고(파란불) C 입장에서는 A, B 안보이고 하면 되지 않나요? 지금 A-B가 빨간불이라는 소리였어요

강제인가요???

제가 인식한 빨간불, 파란불의 역할은 현재 세션에 있는 사람중 (이미 초대 완료) 통신이 되고있냐 안되고있냐를 나타내는 역할이었어요 (advertising과는 관계 없이)

  • 빨간불: 연결 해제 보류
  • 파란불: 연결 <보류>
  • 통신이 안되냐 → 유저가 사라집니다.

그럼 A- B- C가 연결되어 있을 떄 D가 이 그룹에 초대를 보내도 4명이 연결되는거죠??

A-B 연결이 되면 C는 A, B 안뜨게 해달라고 하신거죠?? 첨에

아항 제가 혹시 다르게 이해하고 있엇나 해서 여쭤본거에요

그래서 advertising 계속 하고있으니깐 이거 해결해주실 분?? 해서 제가 하겠다고 했던게 저는 저렇ㄱ ㅔ이해햇어요

A-B.

C는 A와 B가 안떠야함.

정확하게 아직 생각은 안해썽요ㅠㅠ

넵 저도 그거를 느껴서 그러면

  1. A-B 연결 시 C에서 아예 A, B 안보익게한다 저는 이거 생각햇어요
  2. A-B 연결 하고 C가 A랑 연결되면 B를 제거한다

이걸 정해야할거같은ㄷ니요??

그러면 제가 작업한 부분 날리고 동영상 넘어가는 거만 연결해서 드릴까요???

공유컨테이너 진입, A - B - C

기존:빨간불 뜨는 이유 → 어드버를 끄니까, Lost됐다고 Browse가 감지하는 상황

변경: Browse를 끄고, 어드버를 끈다. → Lost된걸 감지 못함. 빨간불 X

다시, 어드버를 키고, 브라우즈를 킨다 → found된 상태로 브라우즈하게 되므로, 빨간불 X, 감지는 계속 됨(세션은 연결돼있으므로)

→ 지원

advertising을 꺼요! <공유 컨테이너>

  • 빨간불..?

  • 진짜 야매이긴 한데

  • A가 다 연결을 맺어서 싹다 보내요

    <연결안된 애들한테, 이벤트를 보내야하잖아요?>

  • A랑 연결되어 있는 애는 아하! Adver껏구나

  • A랑 연결이 안된애는 ㅇ아하! 그룹에 있구나

    왜 다 보내야하나요?? 죄송해요 자꾸 여쭤봐서 ㅠㅠ\

    이게 연결 안된사람 입장에서는 adver만 꺼도 자연스럽게 사라지지않나요??

    연결된 사람한테 adver껐다 라고만 말하면 되네요???????

    흠..

    아예 사라져요

    마자요!!!!!!!!!!!!!! 맞습니다 ㅠㅠ

    빨간불………….그리고 동영상 타임라인?? 넘어가는 부분 하려구요

    아하 네 그거가 제 작업이었어요

    그거 + 동영상 넘어가는거 + 타임라인

    넘어가는건 했고 그럼

    제가 넘어가는거(저번에 혼자서 했을때 안넘어가고 그랬잖아요 그거랑 정상적으로 넘어가는지 테스트) + 타임라인 까지 해서 pr 올릴게요 오늘 그러면

    소켓에서 고친 부분은 다 빼고 저것만 올리면 댈까요??? 네넵

    그럼 일단 그부분 빼고 올릴게요!!!

  • found애들하고

제가 헷갈려서 그런데 adver를 켜야만 하는 이유가 상태 감지ㅈ때매 그런건가요??ㅠ 마자요 ㅂ그래서 빨간불만 해결하면 되지않을까햇는데 아녀 맞아요

S062: CRDT 연결 (순서, 길이 편집) (Repo, UseCase 완료)

남은 작업

S008: 전달 마무리 및 usecase 연결 마무리

S017

S042

S062: CRDT PR 올리기 ⇒ 자잘한 버그 해결 + swiftLint문제 해결

전체 남은 작업 <이거>

  • VideoList에서 owner랑 안뜨는거 해결 (지혜님)

→ 같이 해서 올릴게요~~~~~! 넵!

  • Socket에서 3개 이상 연결시 상태 공유 안되는 버그
  • 영상 저장
  • Socket에서 Advertising 끄기

  • 음악

저는 아래 궁금한거 + usecase에 전달만 하면 됩니다

궁금한거

slider에서 playerValueDidChanged로 값이 오면 VideoPlayerView에서 해당 부분의 영상 위치로 변경되야하는 거 같은데 어떻게 하죠??? 아래 코드 처럼은 안되던데…

func updateVideoTime(with value: Float) {
        self.updateVideoTime(to: value)
        self.seekingSlider.value = value
    }

image.png

넵 저 흰색 사용자 바? 가 움직이는거에 따라 위에 영상 위치도 변경되야 하는거 아닌가요? 이 변경이 어떻게 되는지… videoPlayer에서 직접 저렇게 updateVideoTime을 변경해도 적용이 안되더라구여ㅛ

이거 목데이터죠?????????? 아하

깃헙

건우 ⇒ 아니면 제가 잠을 좀 늦게 잘거같은데 wiki 문서 업데이트는 제가 할게요 일단 노션에 있는것들 약간씩만 다듬어서 올리면 되니까

지금 그럼 일단 타임테이블 쓰나여? 노션 + 깃허브 쓰는거아니었나유

ㅋㅋㅋ할꺼 겁나 많네욬ㅋㅋㅋㅋ

💡

최종 발표 안내합니다. @channel드디어.. 금요일에 최종 발표가 진행됩니다 📣🥳이전에 안내했던 최종 발표 가이드를 참고해서 여러분의 6주간의 성장과 기술적 경험, 완성된 산출물을 잘 드러내는 시간이 되었으면 좋겠습니다.최종 발표에 앞서 사전에 반드시 확인해야 할 사항을 전달합니다.1️⃣ 최종 발표 타임테이블에 팀별 정보를 작성해 주세요. ~12/4(수) 10:00 필수

최종 발표에 참여하는 현업 개발자들이여러분을 미리 파악할 수 있도록 타임테이블을 채워주세요.

서비스 한 줄 소개, 발표 키워드 및 주제, 배포 URL

[최종 발표 타임테이블 바로가기](https://www.notion.so/14db9dd86abe80ffb7d7d3858731cea0?pvs=21)

본인 팀의 블럭만 편집합니다. 여유가 된다면 팀 페이지를 자유롭게 꾸며도 괜찮습니다.

2️⃣ 타임테이블에 연결될 GitHub 저장소를 잘 채워 두는 것이 가장 중요합니다. ~12/4(수) 10:00 필수

저장소 업데이트는 지속적으로 강조해오고 있습니다.

3️⃣ 최종 발표 자료 ppt 템플릿이 업로드되었습니다.

발표 자료를 꾸미는 데 너무 많은 시간을 쓰기보다는,

노션 > 슬기로운 부캠생활

제공되는 템플릿을 사용하지 않아도 무방합니다.

[부스트캠프 웹・모바일 BI 가이드(바로가기)](http://boostcamp-wm.notion.site/)

README

  • 소개

    • 팀 소개
    ## 팀 - 차은우원빈현빈장원영
    ### 팀원 소개
    |[S042 엄지혜](https://github.com/LURKS02)|[S008 김건우](https://github.com/around-forest)|[S017 김윤회](https://github.com/051198Hz)|[S062 정석영](https://github.com/jungseokyoung-cloud)|
    |:---:|:---:|:---:|:---:|
    |<img src="https://github.com/user-attachments/assets/d76291dd-3cda-463d-b788-12ce7383b787" width=150>|<img src="https://github.com/user-attachments/assets/f4ccfd6b-311d-4feb-ac16-df1f4edf3e0a" width=150>|<img src="https://github.com/user-attachments/assets/b4a7a216-1078-4f93-a234-d76e654de0f1" width=150>|<img src="https://github.com/user-attachments/assets/eb7b20a2-3e40-445e-9ba6-73ac909eccad" width=150>|
    |나는 장원영|<- 장원영|나는 장원영 아님|1번 장원영|
    | iOS | iOS | iOS | iOS |
    <br>
    • 서비스 소개
  • 저희도 목업 쓸까요??? 디자인 제가 해볼게요ㅕ~~! (지혜) 저는 그럼 목업좀 찾아보다올게여 좋아요~~!

이런거 쓰는건 별론가요???

목업 어케해요?? ? ? ? ? ? ?? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ?? ? ?? ? ? ? ? ? ? ? ? ? ? ? ?

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 잠시만요

이걸로 피그마에 배경 대충 하고 글쓰는건 할 수 있을거같은데 이미지 괜찮으세요???

목업이라 ㅠㅠ

저는 오른쪽도 나름 있어 보이긴 하는데 \ | / 이렇게 화면별로 보여주는건 ㅋㅋ 별론가요

# 서비스 소개

![Frame 1](https://github.com/user-attachments/assets/512e6649-04de-4b36-9aa7-746e4307da0f)
![Frame 2](https://github.com/user-attachments/assets/ae659279-df02-4930-9eb5-3fdb853217c3)
![Frame 5](https://github.com/user-attachments/assets/95395b85-fad9-4be2-bafa-51500abbf576)

### 유저 찾기 기능 
레이더가 그러진 그룹 맺기 화면에서 친구들과 그룹을 맺을 수 있어요!
가까운 거리의 친구들이 레이더 위에 보여져요.
아이콘 모양의 친구를 터치해서 그룹을 맺고, 함께 추억을 만들 준비를 해요!
<img src ="사진">

### 그룹 내 친구의 연결 상태 확인 기능
화면 상단에서 그룹을 맺은 친구들을 확인할 수 있어요!
잘 연결돼있다면 초록불, 불안정할 때는 빨간불로 바뀌어요.
참여하고 있는 그룹에서 떠나고 싶을 때는, 나가기 버튼을 눌러 그룹을 떠날 수 있어요
<img src = "사진">

### 동영상 공유 기능 
추억이 될 각자의 동영상을 공유해요!
각자의 앨범에서 동영상을 선택하면, 다 함께 볼 수 있는 목록에 추가돼요.
목록에 있는 동영상을 터치해서, 다른 친구가 공유한 동영상을 재생해볼 수 있어요.
공유한 여러 동영상들은 편집 후 하나의 동영상으로 추억으로 만들어져요!

### 동영상 동시 편집 기능
공유한 동영상은 하나의 타임라인을 구성해요!
타임라인 안에 있는 동영상들을 친구들과 함께 편집해 추억을 만들 수 있어요
- 타임라인 안에 있는 동영상들의 순서를 바꿀 수 있어요
- 동영상마다 보여줄 구간을 조절해서 추억에 담고 싶은 부분을 지정할 수 있어요

핵심 기술로 네이밍 할까요?

  • 핵심 기술 소개
    • MCP

    • Consensus Algorithm?

      <공유 컨테이너>

    • CRDT

      <편집화면> —> 보류

# 핵심 기술 소개

## 아키텍처
<사진>
- Clean Architecture기반으로 는 크게 3가지로(Feature, Domain, Data) 나누었습니다. 
- 각 Layer간의 참조가 일어나는 경우, Dynamic Library를 통해 소스코드가 여러번 복사되지 않도록 했습니다. 
- 구현부는 Compositional Root에서 조립하기에 Static Library로 구현했습니다.

## 기술 스택
- Combine: 비동기 프레임워크로, First Party이기에 안정성과 RX에 비해 성능적인 이점이 있어 도입했습니다.
- MultipeerConnectivity: 주변 유저를 찾기 
- Consensus Algorithm: 
- CRDT with LWW & Vector Clock:

결과물

# BeStory

![제목을-입력해주세요_-001 (1)](https://github.com/user-attachments/assets/5d018e58-b30e-47f4-bf61-f885a56c6689)

<br>

> BeStory에서는 친구들과 촬영한 각자의 동영상을 모아 하나의 이야기를 엮어갈 수 있습니다. <br>
> 각자의 시선으로 담아낸 소중한 영상을 모아 우리들만의 특별한 동영상을 만들 수 있어요. <br>
> 동영상을 올리고, 동시에 편집하고, 하나의 결과물을 만들어보세요!

<br>

# 팀 - 차은우원빈현빈장원영

### 팀원 소개
|[S042 엄지혜](https://github.com/LURKS02)|[S008 김건우](https://github.com/around-forest)|[S017 김윤회](https://github.com/051198Hz)|[S062 정석영](https://github.com/jungseokyoung-cloud)|
|:---:|:---:|:---:|:---:|
|<img src="https://github.com/user-attachments/assets/d76291dd-3cda-463d-b788-12ce7383b787" width=150>|<img src="https://github.com/user-attachments/assets/f4ccfd6b-311d-4feb-ac16-df1f4edf3e0a" width=150>|<img src="https://github.com/user-attachments/assets/b4a7a216-1078-4f93-a234-d76e654de0f1" width=150>|<img src="https://github.com/user-attachments/assets/eb7b20a2-3e40-445e-9ba6-73ac909eccad" width=150>|
|???|<- 장원영|나는 장원영 아님|1번 장원영|
| iOS | iOS | iOS | iOS |
<br>

// 서비스 소개

// 핵심 기술 소개

동영상 공유 기능

추억이 될 각자의 동영상을 공유해요! 각자의 앨범에서 동영상을 선택하면, 다 함께 선택한 동영상을 확인할 수 있어요.

차은우원빈현빈장원영의

개발 스토리

✏️ 기획


✔️ 규칙


📌 1주차 회의록

데일리 스크럼

회의록

회고

📌 2주차 회의록

데일리 스크럼

회의록

회고

📌 3주차 회의록

데일리 스크럼

회의록

회고

📌 4주차 회의록

데일리 스크럼

회의록

회고

📌 5주차 회의록

데일리 스크럼

회의록

회고

📌 6주차 회의록

데일리 스크럼

회의록

회고


🔥 트러블슈팅

Clone this wiki locally