Sign up at Easy Video Call
A video calling application made with Phoenix/Elixir that utilizes WebRTC.
The rtc_connection.js file contains all the JavaScript for establishing the PeerConnection.
Signalling has been implemented using Elixir GenServer and PubSub for sending messages.
- The app will run fine as long as the 2 peers are on the same local network.
- To connect across networks, provision a VPS, install coturn on it, then add your credentials in the ICE configuration object:
this.peerConfiguration = {
iceServers: [
{
urls: "stun:<your_ip_address>:3478",
},
{
urls: "turn:<your_ip_address>:3478",
username: "<username>",
credential: "<password>",
},
],
};To start your Phoenix server:
- Run
mix setupto install and setup dependencies - Start Phoenix endpoint with ngrok using this command
make iex_server - Ngrok will provide the URL in the terminal so open that with any browser