Project Overview

A self-contained WebRTC module that provides users with effective collaborative tools while helping organizations step up their training strategy. The solution supports one-to-many and many-to-many videoconferences on desktop and mobile with no additional plugins required.

Client: an Israel-based startup providing integrated management, resource planning, and training applications for businesses from finance to retail to healthcare.

Industry:
eCommerce
Engagement Model:
Fixed Price
Solution:
RTC, eLearning
Effort and Duration:
5 months, 8.5 man-months
Technologies:
Node.js • nginx • MySQL • Redis • Socket.IO • Redux • LibreOffice • Aspose • Jitsi • FFmpeg • Literally Canvas • Etherpad • Cordova • WebRTC

Business Challenge

The client operates a popular enterprise-level LMS as part of their all-encompassing organization management solution. To keep ahead of the competition and offer users a new set of collaborative learning tools, the client made plans to enhance the LMS with a multi-purpose webinar module.

The participants of such webinars would be able to share screens, jointly preview video files, draw on a whiteboard, use a group chat, create question forms, and more — on desktop and mobile.

The client also needed the future application to have rich white label capabilities for effective monetization.

Oxagile’s Differentiators

During the vendor selection process, Oxagile stood out among competitors due to extensive experience with video solutions — one of the company’s core competencies from its very foundation.

In addition, Oxagile had been dedicated to the WebRTC technology for several years, applying it to resolve complex business challenges many times before. The client’s decision to utilize the Jitsi platform made Oxagile’s expertise in server-side RTC development pivotal for the project’s success.

Delivered Solution

Oxagile built a standalone white label webinar solution, designed to streamline collaboration among corporate learners and co-workers. The team tailored the Jitsi open source platform to the client’s requirements and developed a number of custom features to address the project’s specific needs.

During a meeting, users can collaborate via video, text, and whiteboard. Videoconferences can be conducted in two modes: one-to-many (“webinar on”) and many-to-many (“webinar off”). In the webinar-on mode, only the presenter can use their microphone, while listeners need to use the “raise a hand” feature to voice a question.

Key Features and Highlights

  • Webinar participant management
  • Permission system with different user roles for learners and presenters
  • Easy screen sharing via a Chrome extension
  • Joint video file preview
  • Private and public chat
  • Live interactive whiteboard with support for commenting
  • A variety of powerful whiteboard drawing tools (pencil, rectangle, ellipse, polygon, zoom, eyedropper, and more)
  • Real-time text editor for all participants
  • File sharing and storage
  • Rich file conversion capabilities (including .MP4, .DOC, .PPT, and .PDF)
  • Token validation for secure file download — restricted files can be downloaded only after backend validation, preventing unauthorized access

The module can be easily deployed on third-party servers and works seamlessly with any custom UI. The simulcast feature allows optimizing content delivery and user experience by intelligently routing different versions of the same stream depending on each user’s device and connection capabilities.

Conversion of video files from .MP4 to HLS ensures the best possible performance and low latency during video sharing and streaming.

Mobile application

To empower mobile users with cutting-edge e-Learning opportunities, Oxagile developed a handy WebRTC-enabled Android application. The app sports a wide array of features present in the web version: videoconferencing and webinars, group chat, video playback and sharing, whiteboard, and text editor.

Performance Testing

To support the growing user base without a decrease in performance, the system had to be fast and scalable. To address these requirements, Oxagile’s automation engineers deployed their own server and conducted continuous performance testing of newly released Jitsi versions.

Moreover, the system architecture itself was designed with horizontal scaling in mind. The resulting solution is able to run about 400 video streams on a dedicated server. When the system reaches its limit, a new instance of Jitsi server can be fired up.

Business Value

The client received a fully independent webinar module with a full-blown set of collaboration tools invaluable for training and business purposes.

Oxagile’s team leveraged its WebRTC and backend development expertise to deliver the final product ahead of schedule, while responding to shifting project requirements in an efficient and proactive manner.

This new addition to the client’s end-to-end LMS will allow them to cover the demand for video-based corporate training and capture a bigger share of the e-Learning market.

Related Projects

The team’s technical excellence takes you halfway to success. At Oxagile, we understand that a solid grasp of your business domain is equally critical.

STAY WITH US

To get your project underway, simply contact us and an expert will get in touch with you as soon as possible.