Skip to content

lyokato/sideshow

Repository files navigation

SIDESHOW

This is just my playground for WebRTC group conversation with MediaSoup (NOT A STABLE APPLICATION)

Currently, works on Google Chrome only.

Screenshots

Group Chat

Group Chat Image

Choose Mode for Video/Audio Conversation

Choose Mode Image

Starting Video Chat

Group Chat Image

Talking Together

Group Chat Image

GETTING STARTED

1. Prepare your service's domain-name and its TLS cert/key files

setup them in server/conf/*.js

Here is an example with Let's Encrypt

Replace example.org with your domain.

  http: {
    tls: {
      cert: "/etc/letsencrypt/archive/example.org/fullchain1.pem",
      key: "/etc/letsencrypt/archive/example.org/privkey1.pem"
    },
    host: "example.org",
    port: 443
  },

2. Set the server's global IP address

media part in config file is just a MediaSoup's configuration.

See https://mediasoup.org/api/

If your service is running behind NAT, you need to set public IP address in server/conf/*.js

write following parameters correctly.

  • rtcAnnouncedIPv4
  • rtcAnnouncedIPv6

Here is an example.

  media: {
    server: {
      logLevel:   "info",
      rtcIPv4:    true,
      rtcIPv6:    false,
      rtcAnnouncedIPv4: "<PUBLIC_IP_HERE>",
      rtcMinPort: 40000,
      rtcMaxPort: 49999
    },

3. Confirm the ports is open.

Check your firewall. (If you're using AWS, SecurityGroup setting)

Security Group Example Image

4. Resolve Dependencies

according to Node manner, install node packages written in package.json

npm install

5. Build Client part

webpack

6. Run

sudo node ./server/main.js --harmony

SEE ALSO

LICENSE

chat-lite is provided under The MIT License.

About

WebRTC MediaSoup Playground

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published