Hello,
sgcWebSockets supports WebRTC signaling and there are 2 protocols to show the use of WebRTC, one is a simple WebRTC connection between 2 peers and other is a demo based on AppRTC (demo made by google).
These demos only allow 2 peers, although multiple peers is supported by WebRTC I don't have any demo which shows the use of it.
WebRTC only is supported by browser clients, so if you plan to implement something with Firemonkey without the use of a webbrowser, it won't work.
As I tell you before, signaling is implemented using my library but you still require a STUN/TURN server, I use public servers which are not recommended for production, so you need your own STUN/TURN servers (because it uses ICE as framework to handle client connections, first tries to connect using UDP, if fails then tries TCP (first HTTP then HTTPS) if direct connection fails then uses a TURN server (first STUN and it fails then uses a TURN relay server), this means that most connections will use peer to peer connections to handle video/audio data).
You can check which webbrowsers support webrtc here:
https://caniuse.com/#search=webrtc
There is a demo based on sgcWebSockets, which use WebSockets as signaling protocol, you can test demo here:
https://www.esegece.com:5415/apprtc
This demo use viagenie STUN/TURN server, this server is only for test purposes, for production you must use your own STUN/TURN servers.
Kind Regards,
Sergio