Skip to content

aKuad/web-intercom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

web-intercom

Version License

Inter-communication system on browser via LAN. Powered by Deno.

Top image

Features

  • Multi users talking
    • Required only a browser, additional applications isn't necessary
    • ... means this is cross-platform
  • Each user's input volume controlling
    • Also works on browsers
  • Easy to setup the server
    • Required only Deno

Server deployment

As requirements, install Deno at first.

For localhost check

Just only run:

cd src
deno run --allow-net --allow-read main.ts

For outside connection

Note

For using mic input, secure context is required. It means not working on HTTP, need to be HTTPS.

Generate key and certificate for HTTPS connection.

Caution

This step generates self signed certificate. Use only in LAN, then do not open to the Internet.

cd src
openssl req -newkey rsa:4096 -x509 -nodes -subj '/CN=common_name_here' -keyout key.pem -out cert.pem

Note

src/main.ts loads private key from src/key.pem and certificate from src/cert.pem.

Then run with --tls option:

# on src directory
deno run --allow-net --allow-read main.ts --tls

Client usage

Audio client

Access to http(s)://server.address:8000/

Type lane name, then click 'connect'.

Audio client UI - Lane name setting

Mixer client

Access to http(s)://server.address:8000/mixer.html

Type lane name, then click 'connect'.

Mixer client UI - Lane name setting

Then view all lanes fader and meter. Move fader to control gain of each lane.

Mixer client UI - Volume control

License

CC0-1.0