Skip to content

ForeverProglamer/videoconference-recording-system

Repository files navigation

videoconference-recording-system

Idea

Create a web service that will allow users which are not meeting hosts to record meetings without actually attending them. The service should:

  • support different meeting platforms to record meetings;
  • allow users to schedule meeting recording and manage this scheduling;
  • allow users to start immediate meeting recording;
  • replay, download and delete recorded meetings;

Current State

  • The developed service supports 2 meeting platforms - Google Meet and Zoom.
  • The whole system was designed using the C4 model.
  • Tech stack: Python3, FastAPI, Postgres, Docker, Selenoid.

How to run

  1. Make sure you have Docker and Docker Compose installed.
  2. Create .env files based on .env.sample in the project root and in the following dirs: backend, bots-orchestrator, scheduler.
  3. In docker-compose.yml update:
    • absolute paths of services.selenoid.volumes to match your needs;
    • absolute path of OVERRIDE_VIDEO_OUTPUT_DIR to match your needs.
    • DOCKER_API_VERSION to your docker api version.
  4. Create external network with docker network create selenoid.
  5. Run docker compose up -d to start the whole system.
  6. Navigate to http://localhost:8000.

Usage

  1. Sign Up and Sign In.

Sign In

  1. Fill out form and schedule meeting recording

Schedule recording

  1. View scheduled recording. When it will start you can find it in "In progress" tab

View scheduled recording

  1. (Optional) Verify that bot joined conference and recording is in progress

Verify progress

  1. After meeting is finished, visit "History" tab and watch or download your meeting recording

Watch recording

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published