cracker0dks / Accelerator

Online Conference and Collaboration Tool
GNU General Public License v3.0
65 stars 25 forks source link

Accelerator

Free Online Conference and Collaboration Tool with build in WebRTC MCU/SFU running in NodeJS

previmg

Available functions

Installation without Docker

  1. install nodeJs
  2. run: npm install
  3. run: node server.js
  4. surf to: http://127.0.0.1:8080

Note:

Docker Installation

  1. build . -t acc
  2. run: docker run -d --net=host acc
  3. surf to http://yourIp:8080

Note:

docker run -d --name acc --net=host -v /home/acc/config:/app/config -v /home/acc/db:/app/db  -v /home/acc/3dObjs:/app/public/3dObjs -v /home/acc/praesis:/app/public/praesis -v /home/acc/profilePics:/app/public/profilePics -v /home/acc/singlefiles:/app/public/singlefiles acc

Configuration

On the first start a new folder "/config" will be generated. Take a look at "/config/config.json" for all parameters. Change them if you like, and restart the server. If you don't see a config.json inside the /config folder set permitions of to mount:chmod -R 777 /home/acc and restart the container: docker restart acc.

More to come...

ToDos

GoodToKnow

Loadbalancer Setup/Configuration

To setup a loadbalancer just start a second Accelerator server on a different server and change this parameters in your /config/config.json

Loadbalancing scheduling atm:

TURN Setup/Configuration

  1. Setup your TURN Container on an extra Server: HowTo
  2. Make a new "iceServers" entry in "/config/config.json"
    {
    "urls": "turn:IP_TO_TURN:443",
    "turnServerCredential": "authSecret",
    "username": "webrtcuser"
    }
    • "username" can be anything you like.
    • "turnServerCredential" must be the "authSecret" form the TURN Server installation.

Restart the server.

Behind a nginx reverse Proxy

location /accelerator/ {
    resolver 127.0.0.1 valid=30s;
    proxy_set_header HOST $host;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection upgrade;
    proxy_pass http://127.0.0.1:8080/;
}

Behind an Apache reverse Proxy

<VirtualHost example.org:443>
...
# Proxy /accelerator/ to accelerator container
ProxyPass "/accelerator/" "http://127.0.0.1:8080/"
ProxyPassReverse "/accelerator/" "http://127.0.0.1:8080/"
...
</VirtualHost>

Version 0 based on students project work

Authors

Students

Professors

license: GPLv3.0