8online

Context
Our project involved developing a mobile application that functions as a versatile messenger, offering video calls and text chats akin to WhatsApp.
Problem
The challenge at hand was to incorporate group video call functionality into the application.
Solution
To achieve this, we utilized the Flutter framework to build the app, and leveraged the power of WebRTC for implementing group video calls.
The solution encompassed several key steps. Firstly, we implemented a Web socket-based notification system, allowing users to initiate video calls with other participants. Next, we established connections between users, facilitating real-time communication and implemented a well-designed Firestore database for persistent storage of connection details. As per the WebRTC protocol, we facilitated the exchange of connection candidates, which involved requesting data from public STUN servers and employing a dedicated TURN server for more complex scenarios.
By harnessing the capabilities of Flutter, WebRTC, and effective WebSocket communication using Pusher, we successfully integrated group video call functionality into our messenger application. Users can now enjoy seamless, real-time video communication with multiple participants.