Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

시그널링서버 클라이언트 연결 테스트 및 추가 보완 작업 #196

Merged
merged 13 commits into from
Feb 15, 2025

Conversation

mirlee0304
Copy link
Collaborator

@mirlee0304 mirlee0304 commented Feb 14, 2025

Pull request

Related issue

#189

Motivation and context

화상채팅 기능을 위한 시그널링 서버를 구현하였습니다. (KurentoMediaServer, Coturn은 도커로 ec2에 배포하였습니다)

Solution

주 기능입니다.
연결 방식: 클라이언트<->시그널링서버 (웹소켓 연결), 시그널링서버<->KMS (웹소켓 연결)

  • createRoom, joinRoom, leaveRoom: 레디스에 허들 생성, 참가, 퇴장에 따른 메타데이터, 채널-허들 매핑 관계, 허들별 참가자들(Set), 허들별 참가자 endpoint(Hash), 허들별 미디어파이프라인id를 저장하였습니다.
  • sdpOffer, iceCandidate: 클라이언트에서 offer, candidate를 전송하면 시그널링서버를 거쳐 Kurento에서 응답을 받아 전달하였습니다.
  • 조회 시간 효율을 위해 사용자와 허들 매핑 관계도 추가로 저장하여 활용하였습니다.
  • 예외처리 로직 및 유효성 검증 로직을 일부 추가하였습니다.

구현 예정인 태스크입니다.

  • 허들 id 검증 로직을 추가할 예정입니다.
  • 새로운 참가자가 들어오면 클라이언트에게 전달하는 로직을 구현할 예정입니다.
  • 허들 참가 요청 이후 KMS로의 연결이 실패할 경우 복구하는 로직을 구현할 예정입니다. (using scheduler)

How has this been tested

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the docs/CONTRIBUTING.md document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@mirlee0304 mirlee0304 added ✨ Feature 기능 추가 🎮 BE 백엔드 무조건 스프린트내에 해야하는 것들 labels Feb 14, 2025
@mirlee0304 mirlee0304 added this to the 주톡피아 마일스톤2 milestone Feb 14, 2025
@mirlee0304 mirlee0304 self-assigned this Feb 14, 2025
Copy link

netlify bot commented Feb 14, 2025

Deploy Preview for jootalkpia canceled.

Name Link
🔨 Latest commit e8522dd
🔍 Latest deploy log https://app.netlify.com/sites/jootalkpia/deploys/67b030a14e459d0008d0b6c2

Copy link
Collaborator

@ki-met-hoon ki-met-hoon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니다!! 👍

@mirlee0304 mirlee0304 merged commit 183f4b0 into dev Feb 15, 2025
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Feature 기능 추가 무조건 스프린트내에 해야하는 것들 🎮 BE 백엔드
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants