The key insight: a 2-party / small-mesh call needs NO server-side media — the server only relays SDP/ICE and the browsers connect peer-to-peer. So the webrtc package now has a genuinely working call MVP with no Rust/media engine. - Signaling\RelaySignalingHandler: a blax-software/laravel-ws MessageHandler that relays between browsers — welcome/join/joined/peer-joined/relay/broadcast/ peer-left. Peers in the kernel ConnectionRegistry, rooms in RoomManager. - webrtc:serve now runs the relay over a laravel-ws WebSocketServer (browser-usable ws://). require blax-software/laravel-ws. - The engine-backed path (SignalingHandler/SignalingServer + MediaEngine) stays for server-terminated media (recording/AI-bridge/SFU, Str0m = #1051). - Tests 26 / 60 incl a REAL WebSocket welcome round-trip (browser->laravel-ws->relay); verified with laravel-ws + reactphp-kernel resolved from Forgejo. README leads with the browser P2P quickstart + JS example. rel learn-atc #1055 #1051 #1019 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| Fixtures | ||
| NullMediaEngineTest.php | ||
| RelaySignalingHandlerTest.php | ||
| RoomManagerTest.php | ||
| SignalingHandlerTest.php | ||
| SignalingServerTest.php | ||
| WebSocketRelayServerTest.php | ||