Video Calling WebApp using Nodejs ,WebRTC
When user lands on home route it is redirected to a unique url generated by uuid and then rendering an html page using EJS templating.(redirected to room.ejs)
Adding the user’s video on the page(video appended to the videogrid element)
Websockets allow bidirectional communication between server and the user
Peerjs takes all the webrtc information of the user and turns it to an id which can be passed in different places to connect to peer network and when we connect to peer server and get an id
when someone connects to the webpage ,the events are listened to:when someone joins the same rooms
when new user joins our room we allow our video and audio stream to be shared with the other users by calling the user and sending our video and audio stream and taking the user video stream and adding to ours pages
when someone calls ,we answer back giving our video stream and responding to the stream sent by them
The send button in chat box sends the chat messages to the server and then it is broadcasted to all the users in the same room and is appended to the list items of ul.
Allowing the users to have personalized notes during meeting by having a textarea which can be hidden and displayed in the chat box and also contains an emoji picker which is created using emojionearea npm package
Copy link option provides the link to the room and allows new users to join the call by using the url ,it allows the user to copy the link to the clipboard and share with the other users.
The passwords are stored in an encrypted form in the database for user security. They are hashed and salted using md5 npm package