Use a free signalling server from the webtorrent community. You can skip the torrent part of the implementation and just use the signalling, it's awesome. You can use a libraries like:
https://github.com/webtorrent/bittorrent-tracker
https://github.com/subins2000/p2pt
to get started. For me, I found the protocol is simple enough where I just use small vanilla javascipt implementation to talk to the websocket servers to generate the signalling messages. I wish more people knew about this and realize how easy it can be to bring WebRTC to their applications.
List of some free webtorrent trackers:
wss://tracker.openwebtorrent.com
wss://tracker.files.fm:7073
wss://tracker.webtorrent.dev
---> Usage stats for the last one: https://tracker.webtorrent.devSome free stun servers for NAT traversal:
stun:stun.cloudflare.com
stun:stun.l.google.com:19302https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API/...
scroll down a bit for the STUNless/TURNless bit
It abstracts away the work of signaling and connects peers via open decentralized networks like BitTorrent, Nostr, MQTT, IPFS, etc.
The problems this solves look interesting for a few CLI tools I want to build :)
This could be possible browser to browser! I don’t think that has ever been an official use case