Skip to content

tanmayb104/Chatty-site

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hi, I am Tanmay Bansal

This is my entry for Microsoft Engage'21.

Demo Link

Video Demo Link

Demo account 1 : Email - [email protected]; Password - Atul1234;

Demo account 2 : Email - [email protected]; Password - Tanmay104;

A Microsoft Teams Clone built for Microsoft Engage 2021


The Challenge

Build a Microsoft Teams clone.

The solution should be a fully functional prototype with at least one mandatory functionality - a minimum of two participants should be able connect with each other using the product to have a video conversation.

What I Accomplished

I successfully implemented the video calling feature. More than two people can currently video call together using the web site. I also implemented:

  1. Login/SignUp
  2. Ability to update profile, reset password and forget password.
  3. Join different rooms
  4. Create your own room
  5. Chat functionality in a room
  6. Messages are saved to the database
  7. Videocall with participants in a room
  8. Switch audio on/off
  9. Switch video on/off
  10. Chatbox in the Videocall
  11. Made the site fully responsive

The current chat in the meeting does not save the messages because for messages involving the whole room can be sent in the room chat itself. The meeting chat gets disolved after the meet has ended.

Technologies Used

  1. Django
  2. HTML
  3. CSS
  4. Bootstrap
  5. JavaScript
  6. WebRTC

What I Learned

Microsoft and the Acehacker team kept various sessions for us to learn more about the work culture at Microsoft. We also learned about new technologies that have been developed by Microsoft (ie Azure Communication Services) and about the Agile Methodology.

The Agile Scrum Methodology has heavily influenced my work in the past 1 month. Agile scrum methodology is a project management system that relies on incremental development. Each iteration consists of two- to four-week sprints, where each sprint's goal is to build the most important features first and come out with a potentially deliverable product.
Microsoft assigned us three sprints of 1-2 weeks each: Design, Build, and Adopt.

In the first two weeks, I researched on WebRTC, Agora and Jitsi to decide on which SDK I wanted to use for my web app. Ended up deciding on WebRTC. Got working on establishing video communication between connections.

In the third and fourth week, I worked on adding additional features to my web app.

In the last week, I worked on hosting the site on heroku along with aws for serving the static as well as media files and worked on the UI for the whole web site.

Future Possible Functionalities

  1. Add notification feature
  2. Improve upon the Adapt functionality in the web app
  3. Improve the UI of the site
  4. Reduce delay and latency
  5. Increase Scalability
  6. Add dark mode
  7. Add pagination to the chat

About

A video calling and chatting website built for Microsoft Engage 2021

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published