개발 이슈 회의 - Team-HGD/SniffMEET GitHub Wiki
논의 사항
배현진: 테스트할 기기가 부족해서 내일 혜민님이랑 오프라인으로 진행
스크럼 - 문제 및 이슈
현진
- NBI 실행해볼 기기가.. 부족하다 MPC 연결이 되어야 NBI 테스트가 가능한데, 샘플 코드에서 MPC 연결이 잘 진행되지 않았다. 지성님 코드로 변경해서 시도중에 있습니다.
지성
- MPC session에 원하는 기기가 연결될 수 있을 것인가? ( 사용자가 기기를 선택하는 문제가 있을 수도) 이미 메이트 관계인 사람들끼리 한번 더 메이트 맺는다면 어떻게 화면이 보여야 할지도 정할 필요가 있다.
https://developer.apple.com/videos/play/wwdc2020/10668/
진원
- 수파베이스 예제 적음
혜민
- request의 속성 depth가 깊어서 사용하기 힘든가? JSON 인코더 주입 시점
공유해보기
NBI, MC
- 자기가 원하는 사람과 연결이 안될 수 있음, 선착순이나 제한 시간 방법을 생각했었는데 그런 것도 확실한 해결책이 될 수는 없다고 생각한다. 유저가 직접 연결할 사람을 정해야 하나? - 기존 에어드랍 처럼 생각했던 부분에서 좀 많이 멀어지게 된다.
- 일단 세션이 완성이 된 상태에서 토큰을 NBI로 넘긴다… 현재 상황은 세션이 완성되지 않은 상태에서 토큰을 주고 받아야 한다. 이 부분에 대해서 고민 필요
- NBI로 특정 대상을 선택할 수 있으면 일단은 고민들이 해결된다.
SupaBase
- 익명 로그인 기능 구현을 우선으로
- SPM 적용 안하고 수파베이스 사용해보기
에러 타입 만들기
- 지금은 뭉개서 만든상태
enum SNMNetworkError: LocalizedError {
case encodingError
case invalidRequest
case invalidURL
case invalidResponse
case response(statusCode)
var errorDescription: String? {
switch self {
case .encodingError:
"인코딩 에러"
case .invalidRequest:
"잘못된 요청입니다."
case .invalidURL:
"URL이 잘못되었습니다."
case .invalidResponse:
"잘못된 응답입니다."
}
}
}
현재는 Local Network를 통해 메이트 맺기를 진행하고 있습니다.
확장성을 고려하여 remote network로도 동작할 수 있게끔 설계를 하고 싶었습니다.
하지만 둘의 진행과정이 상이한 부분이 있어서 설계에 조금 어려움이 있었는데요.
- Local Network를 통한 과정
- 주변 탐색하기
- Peer 찾아서 연결 진행하기
- 데이터 송수신
- Remote Network를 통한 과정
- 이미 Peer를 알고 있는 상태에서 해당 Peer에 대한 정보 요청하기
- 데이터 송수신
고려해야할 사항이나 구조 설계 팁이 있을까요?