Commit Graph

82 Commits

Author SHA1 Message Date
David Zhao
9064f6ade1 decouple websocket and RTC nodes, prep for distributed 2021-01-16 10:37:38 -08:00
David Zhao
233306d83a basic integration test 2021-01-13 13:41:34 -08:00
David Zhao
09e5a37c75 refactoring to prep for integration tests 2021-01-13 00:04:36 -08:00
David Zhao
381ec58050 some tests 2021-01-12 18:03:08 -08:00
David Zhao
bd885b1de9 handle unpublish track 2021-01-12 17:07:01 -08:00
David Zhao
21ac2413a2 catch panics to ensure reliability 2021-01-11 00:07:11 -08:00
David Zhao
6464ae3cd6 send downtrack binding reports
fixed tests
2021-01-10 22:36:24 -08:00
David Zhao
456df0fb91 use IsReady instead of checking for multiple statuses 2021-01-10 22:09:36 -08:00
David Zhao
7dcb88343a binding to buffer and correctly forwarding 2021-01-10 16:18:58 -08:00
David Zhao
258f5add2d protocol update: explicit AddTrack to move negotiation initiation to server side.
In order to avoid race conditions with WebRTC, where either side could initiate an offer when tracks have changes, we'll always initiate them from the SFU side.
2021-01-09 23:40:29 -08:00
David Zhao
0336e9d92f tests for MediaTrack, moving interfaces to new package 2020-12-31 23:24:45 -08:00
David Zhao
313236e3d3 server to support mutes 2020-12-31 14:21:19 -08:00
David Zhao
46b5942a95 allow cross origin requests 2020-12-28 10:25:27 -08:00
David Zhao
60f2596983 support access token via query params 2020-12-27 23:04:20 -08:00
David Zhao
3fb606236e sends roominfo on join 2020-12-27 22:38:13 -08:00
David Zhao
43a6db8a3a cli to support token based auth 2020-12-27 22:02:19 -08:00
David Zhao
46dadc25c2 simplify token issuer/verifier interface 2020-12-27 20:53:07 -08:00
David Zhao
353f35443a API key generator, using YAML format instead of hand rolled parser 2020-12-27 00:01:19 -08:00
David Zhao
ba8545954e removed channeltype, never used 2020-12-25 22:59:00 -08:00
David Zhao
9897412473 roommanager tests 2020-12-25 22:54:58 -08:00
David Zhao
804b7cb332 JWT token based auth 2020-12-25 22:31:11 -08:00
David Zhao
8f34bd6086 cleaned up some deps 2020-12-22 23:11:24 -08:00
David Zhao
026c8725a3 finished room test 2020-12-22 20:59:39 -08:00
David Zhao
3518435783 using counterfeiter instead of gomocks, much simpler 2020-12-22 17:26:26 -08:00
David Zhao
ed472c8569 progress with a bit of tests 2020-12-21 23:23:57 -08:00
David Zhao
2a79bdb678 switch participant to interface 2020-12-21 23:00:48 -08:00
David Zhao
c4cb29a3bb use PeerConnection interface to make it easier to mock 2020-12-20 22:57:06 -08:00
David Zhao
684099d653 slight refactoring, WS sends periodic ping 2020-12-20 16:13:12 -08:00
David Zhao
72d853589c buffer messages 2020-12-20 13:43:16 -08:00
David Zhao
51092dce53 don't error on EOF 2020-12-19 23:16:55 -08:00
David Zhao
e9fdd5d2fd ignore placeholder data channel 2020-12-19 16:18:58 -08:00
David Zhao
f753172308 datatrack implementation 2020-12-19 16:13:56 -08:00
David Zhao
fb3c3b0565 just use src 2020-12-18 23:14:36 -08:00
David Zhao
050da05000 Send PLI when target client doesn't have keyframes 2020-12-17 22:28:03 -08:00
David Zhao
2111513fde track published response, to allow client to assign sid to published tracks 2020-12-17 21:48:48 -08:00
David Zhao
2665026830 use context to detect when channel is properly closed 2020-12-16 00:13:43 -08:00
David Zhao
ac83bf4c78 subscribe new participant after JOINED, to ensure negotiate requests aren't missed 2020-12-13 23:08:20 -08:00
David Zhao
af0c9dfdf0 server back to working, tho only works when client joins first 2020-12-12 23:05:53 -08:00
David Zhao
4c9623bb49 updated cli to v3 2020-12-12 22:07:06 -08:00
David Zhao
7d7787590c updated server to webrtc v3 (untested) 2020-12-11 20:15:04 -08:00
David Zhao
d4f30c126f Fix node IP discovery, force to ipv4 2020-12-05 23:36:45 -08:00
David Zhao
2b9fee45c4 fixed deadlock when client disconnecting 2020-12-05 22:20:13 -08:00
David Zhao
71a7914eec send event when participant disconnects 2020-12-05 17:53:33 -08:00
David Zhao
abd17af4d4 protocol to synchronize published tracks 2020-12-05 00:03:26 -08:00
David Zhao
0dcfffb9d8 remove all forwarders when source track is closed 2020-12-04 23:28:50 -08:00
David Zhao
c401a6fdab ID -> SID 2020-12-04 23:04:24 -08:00
David Zhao
64b427a388 don't remove tracks if client is closed 2020-12-03 23:22:59 -08:00
David Zhao
04dcdc3772 subscribe the right target participant 2020-12-03 22:13:30 -08:00
David Zhao
c64ecc4603 use full candidateInit, update encoding 2020-12-03 21:58:25 -08:00
David Zhao
bca8090b41 correctly send participant updates 2020-12-02 00:53:16 -08:00