Fork of github.com/havfo/multiparty-meeting
 
 
 
 
 
 
Go to file
Torjus 384203f9dc Use HOC for handling auto-scroll in Files tab 2018-08-02 09:59:59 +02:00
app Use HOC for handling auto-scroll in Files tab 2018-08-02 09:59:59 +02:00
server Add scrollbar when shared files overlap their container 2018-08-01 14:24:50 +02:00
.gitignore Preparation for Chrome screen sharing plugin. 2018-03-04 12:49:08 +01:00
README.md Explain headless electron requirement in README 2018-07-31 12:39:53 +02:00
multiparty-meeting.service adding service file for systemd for automatical upstart of the service: this makes sense in future when the server hosts his own static files by himself 2018-06-05 17:25:02 +02:00

README.md

multiparty-meeting

A WebRTC meeting service using mediasoup as its backend.

Try it online at https://mediasoup.akademia.no.

Installation

  • Clone the project:
$ git clone https://github.com/havfo/multiparty-meeting.git
$ cd multiparty-meeting
  • Set up the server:
$ cd server
$ npm install

In addition, the server requires a screen to be installed for the server to be able to seed shared torrent files. This is because the headless Electron instance used by WebTorrent expects one. This means that in order to run the project on a server, you need to install a virtual screen such as xvfb by running

sudo apt install xvfb

See webtorrent-hybrid for more information about this.

  • Copy config.example.js as config.js and customize it for your scenario:
$ cp config.example.js config.js
  • Set up the browser app:
$ cd app
$ npm install
  • Globally install gulp-cli NPM module (may need sudo):
$ npm install -g gulp-cli

Run it locally

  • Run the Node.js server application in a terminal:
$ cd server
$ node server.js
  • In another terminal build and run the browser application:
$ cd app
$ gulp live
  • Enjoy.

Deploy it in a server

  • Build the production ready browser application:
$ cd app
$ gulp dist
  • Upload the entire server folder to your server and make your web server (Apache, Nginx...) expose the server/public folder.

  • Edit your server/config.js with appropriate settings (listening IP/port, logging options, valid TLS certificate, etc).

  • Within your server, run the server side Node.js application. We recommend using the pm2 NPM daemon launcher, but any other can be used.

Author

  • Håvar Aambø Fosstveit

This is heavily based on the work done by:

License

MIT