Skip to content

MilanAgrawal/Microsoft-Projects

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Microsoft-Projects

Video Chat WebApp Using WEBRTC and NodeJs

Video Calling WebApp using Nodejs ,WebRTC

Setting up the server

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)

Require socket.io and peerjs for peer(user to user) communication

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.

real time chats and notes during the meeting

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.

Authentication of the user(name and password using mongodb Atlas)

Security and Encryption

The passwords are stored in an encrypted form in the database for user security. They are hashed and salted using md5 npm package

About

Video Chat WebApp Using WEBRTC and NodeJs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published