zoom을 대체할 수 있는 오픈소스 mirotalk

간단하게 쓸 용도의 WebRTC기반의 화상회의 플랫폼입니다. 오픈소스이고 도커로 쉽게 설치가 가능합니다.

Mirotalk은 오픈소스 WebRTC 기반의 화상 회의 플랫폼입니다. 주요 특징들을 설명해드리겠습니다:

주요 특징:

  1. 브라우저 기반으로 별도의 설치가 필요 없습니다.
  2. 실시간 화상/음성 통화를 지원합니다.
  3. 화면 공유 기능을 제공합니다.
  4. 채팅 기능이 포함되어 있습니다.
  5. 개인정보 보호를 위한 P2P(Peer-to-Peer) 연결을 사용합니다.

기술적 특징:

  • WebRTC 기술을 기반으로 구축되었습니다
  • 오픈소스로 제공되어 직접 호스팅이 가능합니다
  • Node.js로 개발되었습니다
  • Socket.io를 사용하여 실시간 통신을 구현했습니다

사용 방법:

  1. 웹사이트에 접속합니다
  2. 회의실 생성 또는 참여를 선택합니다
  3. 카메라와 마이크 권한을 허용합니다
  4. URL을 공유하여 다른 참가자를 초대할 수 있습니다

보안 기능:

  • 종단간 암호화(E2EE) 지원
  • 회의실 비밀번호 설정 가능
  • 참가자 권한 관리 기능

Mirotalk은 특히 자체 호스팅이 가능한 오픈소스 솔루션을 찾는 기업이나 단체에게 적합한 선택이 될 수 있습니다.

라고 클로드가 설명해 주는데요, 깃헙에 있는 내용을 추가로 기재 하자면

Mirotalk의 주요 특징들을 번역해드리겠습니다:

  • 100% 무료 – AGPLv3 라이선스의 오픈소스 – 자체 호스팅 가능하며 PWA(Progressive Web App) 지원!
  • 다운로드, 플러그인, 로그인이 필요 없음 – 완전한 브라우저 기반
  • 시간 제한 없는 무제한 회의실 제공
  • 133개 언어로 번역 지원
  • OpenID Connect (OIDC) 인증 레이어 지원
  • 무단 접근 방지를 위한 호스트 보호 기능
  • 무단 접근 방지를 위한 사용자 인증
  • 회의실 비밀번호 보호
  • JWT.io를 통한 호스트 구성 및 사용자 인증을 위한 보안 자격 증명 관리로 보안 강화 및 프로세스 간소화
  • 데스크톱 및 모바일 기기 호환
  • 최적화된 모바일 회의실 URL 공유
  • 모바일 기기의 전면/후면 카메라 지원 웹캠 스트리밍
  • 발언 감지 및 볼륨 표시기가 있는 선명한 오디오 스트리밍
  • 프레젠테이션을 위한 화면 공유
  • 드래그 앤 드롭 지원 파일 공유
  • 오디오 입력, 출력 및 비디오 소스 선택 가능
  • 최대 8K 및 60 FPS의 비디오 품질 지원
  • 더욱 간소화되고 유연한 시청 경험을 제공하는 향상된 PiP(Picture-in-Picture) 지원
  • 화면, 오디오 및 비디오 녹화
  • 비디오 프레임을 스냅샷으로 촬영하여 PNG 이미지로 저장
  • 이모티콘 선택기, 개인 메시지, 마크다운 지원, 대화 저장이 가능한 채팅
  • ChatGPT(OpenAI 제공)를 통한 질문 답변, 정보 제공 및 관련 리소스 연결
  • 음성 메시지 전송을 위한 음성 인식
  • 무전기와 유사한 Push-to-talk 기능
  • 교사를 위한 고급 협업 화이트보드
  • YouTube 임베드 비디오, 비디오 파일(MP4, WebM, OGG) 및 오디오 파일(MP3)의 실시간 공유
  • 원클릭 비디오 요소 확대 및 고정/고정 해제가 가능한 전체 화면 모드
  • 사용자 정의 가능한 UI 테마
  • 추가 제어를 위한 비디오 요소의 우클릭 옵션
  • WebRTC를 통한 저지연 통신을 위한 직접적인 P2P 연결
  • REST API(Application Programming Interface) 지원
  • 향상된 커뮤니케이션을 위한 Mattermost 통합
  • 향상된 커뮤니케이션을 위한 Slack 통합
  • 오류 보고를 위한 Sentry 활용

oidc를 지원해서 구성원들만 사용하도록 할 수 있고, 방 만들고 나서 설정에서 방을 비번으로 잠글 수도 있어서 나름 괜찮은 솔루션인것 같습니다.

요거를 일단 회사 내부 서버에 설치해봤는데, 성능이 낮은 서버에서도 메모리만 넉넉히 주면 20~30명 수준의 화상회의는 아무 문제 없이 아주 잘 됩니다. 

처음에는 jitsi를 설치했는데, 이건 외부에서 음성이 안들리는 등 문제가 좀 있어서 그냥 미로톡을 설치했는데 이건 뭐 너무 쉽게 그냥 잘 되는군요 ^^

회사에서는 mattermost라는 슬랙과 유사한 협업툴을 사용하는데, 여기에 슬래시 명령어를 통해 쉽게 방을 만들고 들어올 수 있도록 했습니다.

이런식으로 말이죠….. (이렇게 하려면 .env에 mattermost에 대한 설정을 해주고, 매터모스트 통합 -> 슬래시명렁어 만들기를 해 줘야 합니다)

접속하면 이런 화면이 나오고요, 조인룸 버튼을 누르면 바로 방을 만들고 들어갈 수 있습니다.

화면 공유도 되고, 화이트보드 기능도 있고, 기본 기능은 매우 충실합니다.

* https를 사용해야 웹브라우저에서 카메라와 마이크를 사용할 수 있습니다. 뭐 우회하는 방법이 있을테지만 기본적으로 그렇습니다;;;; (그러니 꼭 https로….)

oidc 설정을 하면, 메인 페이지 접속을 위한 sso 사용이 가능합니다. 해당 설정은 .env 파일에서 아래 부분을 설정해 주면 됩니다.

OIDC_ENABLED=true
OIDC_ISSUER=https://your-oidc-provider.com
OIDC_CLIENT_ID=your_client_id
OIDC_CLIENT_SECRET=your_client_secret
OIDC_CALLBACK_URL=https://your-mirotalk-domain/auth/oidc/callback
OIDC_SCOPE=”openid profile email”

요렇게 env파일에 추가해 주시면 됩니다. 

 설치 방법은

# clone this repo
$ git clone https://github.com/miroslavpejic85/mirotalk.git
# go to mirotalk dir
$ cd mirotalk
# copy .env.template to .env (edit it according to your needs)
$ cp .env.template .env
# Copy app/src/config.template.js in app/src/config.js (edit it according to your needs)
$ cp app/src/config.template.js app/src/config.js
# Copy docker-compose.template.yml in docker-compose.yml (edit it according to your needs)
$ cp docker-compose.template.yml docker-compose.yml
# Get official image from Docker Hub
$ docker pull mirotalk/p2p:latest
# create and start containers
$ docker-compose up # -d

이 방법으로 설치하면 아주 쉽게 웹접속이 가능합니다.

 라이브 데모 : 

Click the link to make a call.MiroTalk calling provides real-time HD quality and latency simply not available with traditional technology.from MIROTALK

검색해봐도 잘 안나오길래 일단 써봅니다.. ^^

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다