WebRTC 2.0 key features:
1. Using completely new infrastructure - new signaling server with new web pages that optimized for different platform including the iOS and MacOS and ability to use authenticated logic with tokens
2. The WebRTC core has been updated to the latest version.
3. We are compatible with an older version of WebRTC. The existing API still works, with just a few adjustments needed.
4. We also have added the new API that gives the new abilities:
-mix-minus
-many-to-many connections in duplex mode
-Improved video and audio connection logic. TURN server is now required less frequently.
Update Signaling Server:
Replace the old signaling server with one that incorporates the new logic and web clients, moving away from the deprecated SimpleWebRTC tool.
You can use our public signaling server for testing purposes
HKEY_CURRENT_USER\SOFTWARE\Medialooks\WebRTC
https://videosdk.medialooks.com:8080
or you can run your own with Docker.
Download the Docker image for the WebRTC 2.0 signaling server
To start the Docker, you have to run:
docker compoe build
docker compose up -d
Update TURN server:
With the new signaling server, we also advise using the updated TURN server.
Download the updated TURN server docker image
before starting the TURN image, you have to change the TURN server configuration via docker-compose.xml file
Specify the TURN user, password, and your current TURN server public IP address.
docker-compose.yml
- USERNAME=
- PASSWORD=
- REMOTE_IP=
Now get to your signaling server Docker image and specify your TURN server in signaling server configuration. Edit the signaling2.0/signaling2.0/config/production.json. You need to find the "turn_server": and specify the like
"turn_server" :
"user1@password1:your_turn_server1:3478;
user2@password2:your_turn_server2:3478;
user3@password2:your_turn_server3:3478"
For example:
signaling2.0/signaling2.0/config/production.json
{
"isDev": false,
"server": {
"port": 8888,
"secure": false,
"key": "config/sslcerts/key.pem",
"cert": "config/sslcerts/cert.pem",
"password": null,
"pingTimeout": 10000,
"pingInterval": 4800,
"loglevel": 1
},
"metadata" : {
"turn_server": "user1@password1:your_turn_server1:3478;
user2@password2:your_turn_server2:3478;
user3@password2:your_turn_server3:3478"
"special_rooms" : {
"gateways": { "name": "VTGateways", "role": "gateway" },
"auth": { "name": "Auth", "role": "auth" }
}
},
"auth": {
"vt_auth_user": "default",
"vt_auth_pass": "default"
}
}
Enable WebRTC 2.0 to activate the new features.
HKEY_CURRENT_USER\Software\Medialooks\WebRTC
webrtc20.enabled = true
signaling_server = https://videosdk.medialooks.com:8080
With these changes, you can utilize WebRTC 2.0 while leveraging the old API, ensuring that your current application continues operating as expected.
• The legacy API will remain operational but will now utilize new WebRTC source code under the hood.
• For users interested in new features, such as one-to-many connections, the new MConnect object and a new API will be required. Coming Soon!
The initial step is to transition to a new server-side version. Following that, we will deliver the updated API. The latest WebRTC 2.0 uses the most current WebRTC source code and needs to be tested with your existing solutions.