One of our Customers, a Smart Security Company, has a Client self-management app, which lets their clients manage who can access their building.
One day, they reached out to us and said… Hey, we want the app to be able to video-call the building door.
We have an outstanding team at Flutter, but a video call? That was something completely new to us. But as we love new challenges, we did not hesitate to accept the new requirement.
We started digging and studying what we needed to make it happen.
First, we studied the buildings intercoms (the door of the building with which our app was going to communicate and place the video call), and we found out that what we needed was WebRTC.
WebRTC (Web Real-Time Communication) are a set of technologies that are developed for peer-to-peer duplex real-time communication between browsers. It uses several technologies to provide real-time peer-to-peer communication between browsers. These technologies are * SDP (Session Description Protocol) * ICE (Interactivity Connection Establishment) * RTP (Real-Time Protocol).
We could dig more into that, but we’re not here for a WebRTC class. The important thing is, with this information we found out, that we needed to build a Telephony Server and now we had another problem, we needed to make the video call work and make a telephony server work.
After lots of research and investigation, we met with our client (as we do for challenging features) and proposed we build a prototype, in order to test the best way to accomplish the functionality with the fewest resources possible.
This being said, first we built our PBX (Private Branch Exchange), a private telephone network that allows users to talk to each other, and made it work.
Now we needed to see what technologies to implement in the prototype in order to make it work!
Join us on our journey while we find out how best to tackle this and many other questions. Welcome to our blog. We’re glad you’re here!