 Good morning everyone. So WebRTC. What is WebRTC? So beyond that, let's discuss what's RTC. RTC is real-time communication. So real-time communication is long, bad thing. The thing which we have been doing for ages, the modes have been changing. It may be offline, then it converted to online. When we go to online, we have been doing this real-time communication using flash plugins, using different plugins on the browser. So what's new in that? We have been doing that on browsers for long back. What's new we are doing in WebRTC? Why it's real-time communication on Web a new thing? So the real-time communication on the web, initially it was done using plugins which are not native to Web. So yes, why we should do it? Because with the advent of WebRTC, everything is on Web. It's built on JS. It's a plugin-free, it's a JavaScript-based, it's a cross-platform. When we say plugin-free, it's native to your browser. All you have to do is just run your code. You don't need to install any flash plugin, you don't need to install any other plugin. It has no dependencies. It's right in your browser. All you have to use the APIs. JavaScript-based. So now what you are doing, video chat, maybe audio chat or maybe screen sharing, file sharing, that's just another JS app. That's nothing more than that. Just a JavaScript code that handles everything of it. Cross-platform. So when we say cross-platform, that means it runs across browsers. You can chat from Firefox to Chrome without any plugin. You don't need to install any plugin on Chrome or maybe Firefox. And not only on your desktop, it can go on your mobiles. The same thing. On the same code. So as I said, by Renderi, the founder of JavaScript, the best person to talk about JavaScript in the day I saw, WebRTC is a new front-end in the long-world for open-end previews. And yeah, I truly support that. How? So how to get started with WebRTC? Have you ever used WebRTC, anyone of us? Ever used WebRTC? Or do you guys know someone, some project that has been using WebRTC? So how many of you use WhatsApp Web? That's using WebRTC. So when we say WebRTC, it doesn't mean this is a video call or this is an audio call. It includes data also. The communication can be in the form of data also. So that's what WhatsApp Web has been doing. So how to start with WebRTC? So basically it's divided into three parts. First one is get use of media. Second one is RDC peer connection. Third one is RDC data channel. It may sound something complicated. I'll just make it easy for you guys. So first part, we collect the data. Second part, we just collect the peers. Third part, we actually ensure that the peer has been delivered. The message has been delivered to the peer. That's a complete lifecycle of WebRTC application. So when we talk about get use of media, have you ever used any camera app on your mobile browser? Or any camera app on your desktop browser? So any, for example, any app which is built on Web uses the camera, the camera of your phone or maybe camera of your browser. That uses get use of media. So what does get use of media does? Basically it extracts the information from your camera. Basically the data in bytes form. And maybe it can be audio, it can be video, it can be anything. So as we get use of media, get the media of the user. It present a stream of audio and video and or video. It can be audio or video together. It can be audio itself. It can be just video, depending on the situation, depending on the requirement of the project. For example, suppose we have a camera app. All we need to do is click a photo of you and maybe create a frame from it and send to your friend. So what we have to do? Just grab the get use of media and extract the image which is captured by your camera. And transmit it as a stream to your friend. It's as simple as that. Now the second part, RDC peer connection. So as by name, peer connection. So these are the APIs which ensure that your peer has been connected and the communication can take place. Peer to peer communication as by the name. It ensures that the network, the communication between peer and other peer has been generated. It is responsible for signal processing, collect handling, bandwidth management. So this layer, this API take care of these all issues. For example, if you are on 3G, but your friend is on maybe 2G. So there should be a common ground so that both can get the same video or audio quality the other one is getting. So that is ensured by this API. So it works on bandwidth of the connection and it takes both of the bandwidth. The bandwidth of the user 1 or bandwidth of the user 2. Codec handling. So it depends on the browser version of your computer. It can be old version, it can be new version. And there comes the problem of codec. So that is managed by RDC peer communication, peer connection. And third one is RDC beta channel. So this one is basically used. Suppose we want to share a file over internet. That is done by this. And other one which we use is screen sharing. If you want to share your screen, for example, in Google Hangouts, while chatting we can share our screens so as to get more information about the person. Or maybe suppose we are presenting someone during a meeting, we need to present someone. We share screen. So that is taken care by this API, RDC data channel. So basically what we say when we say about real-time communication, it's just not the video and audio. It's about the data also. The data of your screen, it is screen shot basically. That is being shared to the other person. And that's not coming from your camera but your computer screen. So that's taken care by RDC data channel. So these are the things which you do on browser. Everything till now what I explained was working on browser. For example, the peer connection, the user media, all these are browser APIs. Whatever they do, it is constrained to browser. It has nothing to do with server, it has nothing to do with backend things. Everything is written in JavaScript and deployed on servers just to get the code. But yes, when we communicate from one browser to another, we need a common place. So there comes the server. So we have two types of server, term and term. So these are the server dedicated for passing the signals between the peers. They just ensure that the peers are connected. So this is architecture. Basically there is a peer. There is a metadata translator. And there is a standard, a standard server. And there is a term server. So the difference between standard and term server, this ensures the stability. This ensures the connection. So the major challenge is an ear bag for WebRTC was like, are we ready? And an ear bag, that question was a big, big and huge. Were we ready for getting into the real world? But an year after, this is a stat. As you can see, almost every browser support it. And I can say, if it's supported, that means we are going good. So WebRTC is production ready and being deployed everywhere. Who is using Google Allo and Do? Hangouts, Whatsappware, FBA.in, Google conference. These all are using WebRTC. Every of these sites are using WebRTC for their solution. Because the thing is, whatever is on web, it has to be cross-platform. It can be deployed on mobile, it can be deployed on tablets, it can be deployed on anywhere. And these are the few resources. When we want to get started with it, we can get started with WebRTC experiments.com, WebRTC.org. So that's it from my side. Thanks usual. That was a quick one.