Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents


Background

Instead of depending on a third-party provider, we will try to incorporate an open-source solution.
This Confluence page outlines the key factors to consider when evaluating OpenVidu and Jitsi for the integration of a video conferencing platform.
Both solutions have their strengths and considerations, and this guide aims to help you make an informed decision.

High-level Requirements

  • The HCP will generate a unique link for the beneficiary
  • The link will be sent to the beneficiary via SMS.
  • Beneficiary can then join the meeting link via the browser.

...

1. Scalability and Performance

Both OpenVidu and Jitsi scale well for multiple parallel sessions.

OpenVidu
  • Docker-based architecture for scalability.
  • Efficient handling of large-scale conferences.
  • Dynamic allocation of resources based on demand.

...

  • Comprehensive API for easy integration into custom applications.
  • Supports multiple programming languages.
  • OpenVidu has a RestAPI that can programmatically generate sessions and tokens.

...

  • Simple integration via iFrame or API.

3. Security and Privacy


By default, WebRTC works only on https. For the video transmission to happen, SSL certification is a must.

OpenVidu
  • End-to-end encryption for increased security.
  • Role-based access control.
  • Token-based authentication.

...

  1. Followed self-hosting guide and was able to setup Docker env locally on laptop.
  2. Routing it via ngrok with https allowed starting meeting with audio and video.
  3. On accessing the URl via browser other participants can join.
  4. Challenges
    1. The first person who joins a link becomes the moderator. We should ensure that the HCP who initiates the meeting is the moderator.
    2. VIDEO_URL/<any-meeting-link> works for setting up a meeting. We will have to ensure that meeting links are generated and stored and only valid links are accessible.
      Else anyone can use our video conferencing server to create meeting sessions.
    3. A lot of Jitsi branding everywhere. This must be tweaked or removed to include Piramal logos and branding.
      This can be changed by editing the JS assets.
      // Example: Change the logo
      DEFAULT_LOGO_URL: 'images/my-custom-logo.png',

      // Example: Change the watermark
      DEFAULT_WATERMARK_LINK: 'images/my-custom-watermark.png',

      // Example: Change the colors
      TOOLBAR_BUTTON_BACKGROUND: '#007ACC',
      TOOLBAR_BUTTON_HOVER_BACKGROUND: '#005eaa',
    4. Jitsi Meet doesn't natively support user authentication or token-based access control by default. Jitsi will have to be integrated with an external authentication system.

...