Skip to content

tanyajha16/ms-engage-2021-tanya

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Hey Folks!

How's all doin?

Brief Introduction

Here I present you the interactive Microsoft Teams Clone built with best technologies like Node.js ExpressJS and MongoDB database.

It also contains featuring technologies like NodeMailer for sending the mails, Socket.io for chatting purposes and Firebase for Google Authentication and Chat Database Service,Passport JWT for authentication .

Follow the instructions below to run the project.

  
    1. Clone this project using  git clone  command or download the .zip file and extract it.
    2. cd to project directory and move inside  microsoft-engage-dashboard. 
    3. Use  npm install  command to install all the required modules.
    4. Open the terminal and type  npm start  to run the project.
    5. Move to  views -> home.ejs -> Join Room button  in line 32.
    6. Replace the href in anchor tag by  http://localhost:3000  and save the file.
    7. Open new terminal and cd to  ms-engage-video-call. 
    8. Repeat Step 3.
    9.  cd to src and run npm start  to start the server.
    10. Open  http://localhost:8000  in your browser and follow the flow.
  

Brief Overview of Code

1. Microsoft Engage Dashboard

This provides an intercative view of Personalised the Dashboard for room participants where they can,

1. View all the announcements and updates.
2. Add Comments to the Announcements.
3. View all the participants.
4. Setup their profile post authorised login.
5. Chat with the fellow participants.
6. Flash messages to notify posts and comments are posted in the general channel.
7. Mails will be sent in the sign in email-id when the local user posts any announcements or comments.
8. The announcements posts and comments deletion is done only when you are the user who have posted it other person is not 
   eligible to do it.

The authorisation, post storage and user storage is implemented using Mongodb Database and Mongoose Client, whereas, the chat service is implemented by Socket.io module.

In addition to this, the moment any user post any announcement in the channel, they get a personalised mail containing a copy of their post for further reference which is implemented by much useful NodeMailer.

2. Microsoft Engage Video Call

This provides an interactive view of Meet Room where,

  1. User authorise himself/herself to create a meet room link which can be shared by fellow participants who he/she wish            to be in room using google authentication and the input box of your name will automatically get updated with the                user's/admin's  name .
  2. The meet contains all basic and additional interactive features like,
      
     2.1 Controlling toggles of Camera and Microphone
     2.2 User can share their screen and can view side by side by interactive feature of picture in picture.
     2.3 User are allowed to record screen as well as video of other users and after stopping the recording it will         
         automatically get downloaded in the local system.
     2.4 Users can chat with other meet participants which is governed by firebase real time database.
     2.5 Chats are accessible to all users even they join late.
     2.6 Any user who joins in after can also view the chat messages which is there because of real time database of 
         firebase.
     2.7 Roomlinks are sent to different people to join the video call as guest user and they have the facility to update                or change the name before joining.

  3. Once the admin who made the meet room logs out, the chats are cleared taking security protocols in consideration,so 
      that any user who creates the meet after that is not authorized to see any other room's chat.
  
  4. User other than admin or creater of the video call is redirected to the general channel dashboard if the guest user 
      is already a participant of the channel he/she can log in directly or else needs to signup to get in the channel.

The video streaming feature is controlled by web RTC module and else the authorization and chat storage part is managed by firebase and socket.io.

© 2021 Under the Guidance of Microsoft Corporation

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published