David Zhao
25d476b8ac
fixed multi-node routing, correctly set rtc and signal nodes
2021-01-27 01:16:08 -08:00
David Zhao
61db4f5b66
fixed multi-node so signal node can start sessions
2021-01-26 23:52:55 -08:00
David Zhao
ed0b9db655
avoid sending to closed channels
2021-01-26 21:45:00 -08:00
David Zhao
a065a01592
fixed panic when client connected abruptly
2021-01-26 17:38:47 -08:00
David Zhao
f004aa2952
auto-create rooms upon creation
2021-01-24 23:47:24 -08:00
David Zhao
b7a00a8a56
increase default token ttl to 6h
2021-01-24 22:14:42 -08:00
David Zhao
c04fd86f9c
multi-node integration tests
2021-01-19 20:34:11 -08:00
David Zhao
0b00b26d05
terminate RTC sessions properly
2021-01-19 16:18:03 -08:00
David Zhao
71b4673a0a
cleanup room state, proper participant termination
2021-01-18 23:44:59 -08:00
David Zhao
d83a1b1af3
automatically cleanup participant redis data
2021-01-18 17:56:48 -08:00
David Zhao
458241d1f1
config rework to handle distributed setup, fixed redis bugs
2021-01-17 17:06:50 -08:00
David Zhao
30e99e8c6b
redis based router & roomstore
2021-01-17 00:12:05 -08:00
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
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
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
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
804b7cb332
JWT token based auth
2020-12-25 22:31:11 -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
ac83bf4c78
subscribe new participant after JOINED, to ensure negotiate requests aren't missed
2020-12-13 23:08:20 -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
c64ecc4603
use full candidateInit, update encoding
2020-12-03 21:58:25 -08:00
David Zhao
a6c4db2cb3
refactoring, enabling sending out room updates
2020-12-01 23:32:15 -08:00
David Zhao
0c99163253
using shared proto types for participant state
2020-11-28 15:17:14 -08:00
David Zhao
4fe98723ae
server sends join response
2020-11-28 12:33:10 -08:00
David Zhao
bea1a87cb8
updated flow, room & participant id created by server
2020-11-28 00:18:34 -08:00
David Zhao
408ea3fe22
trackwriter, progress with tester client
2020-11-09 23:38:05 -08:00
David Zhao
cba27d164b
client and server establishing connections
2020-11-06 23:57:03 -08:00
David Zhao
218b9a0277
CLI framing, creates rooms
2020-11-04 23:29:46 -08:00
David Zhao
9ebfebe2dd
simple cli with room APIs
2020-11-03 22:01:54 -08:00
David Zhao
925d1c653e
switch to websockets, remove grpc dependency
2020-11-03 00:20:46 -08:00
David Zhao
9a36a41800
implement trickle and negotiate paths
2020-10-31 00:36:35 -07:00
David Zhao
54b59f00e2
handles RTC join
2020-10-31 00:09:46 -07:00
David Zhao
36dd195ca3
Converted RTC back to GRPC for server push capability
2020-10-29 01:02:31 -07:00
David Zhao
40c7d902d8
refactored config and room setup
2020-10-15 00:04:16 -07:00
David Zhao
6752c4a91d
separated join from creation, room options & token
2020-10-07 23:54:44 -07:00
David Zhao
38cc5454da
switch to twirp errors, correct RTC port
2020-10-06 23:37:22 -07:00
David Zhao
0d6c0adbdd
switched to Twirp for RPC, server skaffold
2020-10-06 23:20:44 -07:00
David Zhao
1de35caf7a
checkpoint
2020-10-05 20:31:29 -07:00