GithubHelp home page GithubHelp logo

0x5eba / video-meeting Goto Github PK

View Code? Open in Web Editor NEW
579.0 27.0 291.0 3.99 MB

Google Meet / Zoom clone in a few lines of code

Home Page: https://video.sebastienbiollo.com

HTML 4.05% CSS 2.85% JavaScript 93.09%
webrtc peer-to-peer screensharing zoom meet videochat meetings videocall webrtc-call webrtc-video

video-meeting's Introduction

Video Meeting

Google Meet / Zoom clone in a few lines of code.

Video Meeting is a video conference website that lets you stay in touch with all your friends.

Developed with ReactJS, Node.js, SocketIO.

Website

Website

Try Video Meeting here video.sebastienbiollo.com

Features

  • Is 100% free and open-source
  • No account needed
  • Unlimited users
  • Messaging chat and video streaming in real-time
  • Screen sharing to present documents, slides, and more
  • Everyting is peer-to-peer thanks to webrtc

Local setup

  1. yarn install
  2. yarn dev

video-meeting's People

Contributors

0x5eba avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

video-meeting's Issues

Chat isn't cleared

Hi! Your website is amazing! Just the problem is that The chat isn't cleared after a new person joins the meeting... In the same url

How to install "yarn install" / "yarn dev"

root@ubuntu:/var/www/html/meet# yarn dev
00h00m00s 0/0: : ERROR: [Errno 2] No such file or directory: 'dev'
root@ubuntu:/var/www/html/meet# yarn install
00h00m00s 0/0: : ERROR: [Errno 2] No such file or directory: 'install'

Pre-defined Username

When I start a meeting, I see that a default username is randomly generated.

I'd like to create custom/unique URL that would automatically start/join a meeting with a pre-defined username.

For example, one option might look like: http://localhost:8000/session&user=Tom would automatically connect to a meeting with "Tom" as the username".

There may be other ways to do this... I'm open to suggestions. Thanks!

App works fine; just in one browser, but not in a different browser not in a different computer

Dear @0x5eba, Thank you very much for the demo and the code, which has helped us all progress. The app, either in your demo, or our owns built on your own, it perfectly works in one browser, and the call is wonderful. However, on a different browser, and a different computer it does not work, just a blank window. I've tested different changes to no avail. Would it be possible to please assist? Is it an issue with STUN server, TURN server or certain resources or limitations? Thank you very much.

Audio Not Working when screensharing.

Hello!
I was doing some testing seeing if I could add anything but it appears the audio does not work when the user screenshares. Please could you investigate the issue.

Server Error

Error: ENOENT: no such file or directory, stat 'C:\Users\TOSHIBA_2\Desktop\My Projets\Sample Meet\zoom-meeting\build\index.html'

Lateral inversion

In the video section Lateral inversion is not there like in mirror when we raise our left it also raises it's left hand try to sort out that problem

DOMException: Failed to execute 'setRemoteDescription'

Hey, I am getting this error when user-1 create a room and 2nd user join it

image

DOMException: Failed to execute 'setLocalDescription' on 'RTCPeerConnection': Failed to set local offer sdp: Called in wrong state: kHaveRemoteOffer

Cannot GET / on starting the application

I have started the application using yarn install and yarn dev (also tried npm start and npm run dev). On accessing localhost on the browser it shows Cannot GET / (attached the screenshot of terminal and browser). How can this be fixed? Thank you!

Screenshot_130
Screenshot_131

Are the videos encrypted end to end / secure?

Greetings and thanks for making this app open source,
Can you give me some clarity on whether the video chat is end to end encrypted and secure?

If no, how this can be achieved in your app?

Thanks,
Satyam.

hosting issue

When i upload it on shared hosting after npm run build its work perfect on same browser but when i invite someone to join meeting at that time his video did not show. i see same issue on your demo

Great app!

Hi , i want to know how many user can join in conference? its can handle same time 100 user or more?

Video/Audio ScreenStream do not work.

I setup sources on host http://85.93.145.4:8000/

log on "yarn dev":

==================================================
root@elektrika:~/meet# yarn dev
yarn run v1.22.4
$ concurrently -n 'server,client' -c 'red,green' "nodemon app.js" "NODE_ENV=production PORT=8000 react-scripts start"
[server] [nodemon] 2.0.4
[server] [nodemon] to restart at any time, enter rs
[server] [nodemon] watching path(s): .
[server] [nodemon] watching extensions: js,mjs,json
[server] [nodemon] starting node app.js
[server] listening on 4001
[client] ℹ 「wds」: Project is running at http://0.0.0.0:8000/
[client] ℹ 「wds」: webpack output is served from
[client] ℹ 「wds」: Content not from webpack is served from /root/meet/public
[client] ℹ 「wds」: 404s will fallback to /
[client] Starting the development server...
[client]
[server] http://85.93.145.4:8000/ggg [ 'h5aSuU6hl-LeZqxoAAAA' ]
[server] http://85.93.145.4:8000/ggg [ 'h5aSuU6hl-LeZqxoAAAA', 'omxkhLbvNyJcATLPAAAB' ]
[client] Compiled with warnings.
[client]
[client] ./src/Video.js
[client] Line 127:39: Function declared in a loop contains unsafe references to variable(s) 'connections', 'socket', 'connections' no-loop-func
[client] Line 153:41: Function declared in a loop contains unsafe references to variable(s) 'connections', 'socket', 'connections' no-loop-func
[client] Line 189:39: Function declared in a loop contains unsafe references to variable(s) 'connections', 'socket', 'connections' no-loop-func
[client] Line 350:43: Function declared in a loop contains unsafe references to variable(s) 'connections', 'socket', 'connections' no-loop-func
[client]
[client] ./src/Home.js
[client] Line 21:8: 'url' is already defined no-redeclare
[client]
[client] Search for the keywords to learn more about each warning.
[client] To ignore, add // eslint-disable-next-line to the line before.
[client]

Video/Audio ScreenStream do not work.
May be need to setup SSL certificate ?

How to set the limit to number of particpants??

Hey there,
I am using your video meet but i want to set a maximum limit of number of participants in a room. So can you please say what to do so that i can have an option to set a maximum limit for the number of participants in a room.

Thanks,
Atharva.

Is this compatible with chrome?

Hello there, how are you doing today? i have a quick question, am i able to run this code on chrome? if yes then how? please let me know. Thanks! <3

Socket don't match when deploy

Hey i deploy the app on app.netlify.com
but when the deployement success socket don't match
this is my package.json
it open app normally when other user joined don't attach videos

{"name": "video",
  "version": "0.1.0",
  "private": true,

  "dependencies": {
    "@material-ui/core": "^4.9.7",
    "@material-ui/icons": "^4.9.1",
    "@testing-library/jest-dom": "^4.2.4",
    "@testing-library/react": "^9.3.2",
    "@testing-library/user-event": "^7.1.2",
    "antd": "^4.1.4",
    "bootstrap": "^4.4.1",
    "concurrently": "^5.1.0",
    "cors": "^2.8.5",
    "express": "^4.17.1",
    "faker": "^4.1.0",
    "nodemon": "^2.0.2",
    "react": "^16.13.1",
    "react-bootstrap": "^1.0.0",
    "react-css-grid": "^2.0.0-0",
    "react-dom": "^16.13.1",
    "react-flexbox-grid": "^2.1.2",
    "react-grid-layout": "^0.18.3",
    "react-grid-system": "^6.3.0",
    "react-router": "^5.1.2",
    "react-router-dom": "^5.1.2",
    "react-scripts": "3.4.1",
    "reactstrap": "^8.4.1",
    "serve": "^14.0.1",
    "socket.io": "^2.3.0",
    "socket.io-client": "^2.3.0",
    "standard": "^14.3.3",
    "xss": "^1.0.8"
  },
  "scripts": {
    "dev": "concurrently -n 'server,client' -c 'red,green'  \"nodemon app.js\" \"SET NODE_ENV=dev react-scripts start\"",
    "start": "react-scripts start",
    "server": "SET NODE_ENV=production nodemon app.js & react-scripts start",
    "build": "react-scripts build",
    "heroku-postbuild": "npm run build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }}

and this is my configuration netlify netlify.toml

[build]
  command = "npm run build"
  publish = "/build"
  base ="/"

[[redirects]]
  from = "/*"
  to = "/index.html"
  status = 200

404 error not found

Hello! i am currently trying to implement this into a subdomain on my website which is zoom.selync.ga. the index.html file seems to work just fine but once i press go it gives me a 404 error and i can not start a new meeting.
please help, thanks!

What is the reason the app does not work on safari?

Hey I've been editing the code and it works perfectly for Firefox and Chrome. I am curious though as to why it doesn't work on other browsers such as Safari? I have commented out the code that renders a message if the browser is not chrome as shown below. If anyone has any ideas I am super curious. Thanks so much!

Screen Shot 2021-12-28 at 1 44 10 AM

some of the variables on the server are not defined

Great project! Thank you so much for making this. One minor thing I noticed after cloning the repo and inspecting it in VS Code is that there are a few variables that are not defined on the server. Do you need to declare sanitizeString, connections, messages, and timeOnline with the const keyword? Thank you so much

Screen Shot 2021-12-27 at 11 09 52 PM

How to deploy it on web hosting

Hi, I am new to react, could you write an manual how to upload it to web hosting such as cpanel, etc.?
I tried it but could not been able to get it to work.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.