Commit Graph

56 Commits

Author SHA1 Message Date
David Zhao
537edda4c3 handle new UpdateParticipant API, enable permission updates 2021-03-20 22:27:47 -07:00
David Zhao
7d02c01fd8 refactor - moved common code to livekit/protocol 2021-03-13 22:01:51 -08:00
David Zhao
a010b618af re-assign node for room if existing node for room is no longer available 2021-02-20 21:09:04 -08:00
David Zhao
99baeb38e4 fix bugs with websocket reconnection, don't re-use redis sinks (#22) 2021-02-15 17:57:01 -08:00
David Zhao
090f8d0664 use dedicated PeerConnections for sending and receiving (#19)
* protobuf updates to support new protocol

* use dedicated publish & subscribe peerconnections

* update client to work with dedicated PCs

* fix Go client negotiation, reduced length of UUID
2021-02-12 22:30:31 -08:00
David Zhao
538461d5dc pass client defined metadata from JWT to participant (#17) 2021-02-10 23:13:36 -08:00
David Zhao
38140debdf Admin APIs for participant management (#13)
* stubs for room admin APIs

* room store APIs to persist participants

* participant persistence

* updated protobufs

* implemented APIs to mute/remove/etc

* fixed mute handling
2021-02-10 00:06:32 -08:00
David Zhao
c012c742bd fix allowing client negotiations prematurely. 2021-02-05 17:46:52 -08:00
David Zhao
c015e267b0 switch to a single redis subscriber, close properly 2021-02-04 00:25:09 -08:00
David Zhao
0cb09ee945 handle cid changes between publish intent and onTrack 2021-02-02 23:55:56 -08:00
David Zhao
d117cce37b integration test around receive before publish 2021-02-02 22:53:48 -08:00
David Zhao
70574deaf7 better debug logs around negotiations 2021-02-02 00:40:55 -08:00
David Zhao
712d0da6cc use synchronized GetParticipants to ensure eliminate timing issues upon participant join 2021-01-31 23:06:48 -08:00
David Zhao
57a13f9930 fix synchronization issues, use AtomicFlag/atomic.Value for shared fields 2021-01-29 00:49:32 -08:00
David Zhao
940b96168d fix client publishing protocol 2021-01-26 23:52:04 -08:00
David Zhao
a065a01592 fixed panic when client connected abruptly 2021-01-26 17:38:47 -08:00
David Zhao
bd81b073d1 allow keys to be passed in from env (again), cli to use LIVEKIT prefix 2021-01-25 21:34:16 -08:00
David Zhao
c04fd86f9c multi-node integration tests 2021-01-19 20:34:11 -08:00
David Zhao
834a4747ac refactor bearer token on the client side 2021-01-18 13:27:01 -08:00
David Zhao
458241d1f1 config rework to handle distributed setup, fixed redis bugs 2021-01-17 17:06:50 -08:00
David Zhao
9064f6ade1 decouple websocket and RTC nodes, prep for distributed 2021-01-16 10:37:38 -08:00
David Zhao
9a10a57b30 single publisher integration test 2021-01-13 17:38:40 -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
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
be6086ce95 updated docs 2020-12-28 11:38:52 -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
94e2c782ee cli to generate token 2020-12-27 22:21:04 -08:00
David Zhao
43a6db8a3a cli to support token based auth 2020-12-27 22:02:19 -08:00
David Zhao
9897412473 roommanager tests 2020-12-25 22:54:58 -08:00
David Zhao
28690b6b08 fixed client create-room 2020-12-25 22:35:53 -08:00
David Zhao
804b7cb332 JWT token based auth 2020-12-25 22:31:11 -08:00
David Zhao
684099d653 slight refactoring, WS sends periodic ping 2020-12-20 16:13:12 -08:00
David Zhao
2665026830 use context to detect when channel is properly closed 2020-12-16 00:13:43 -08:00
David Zhao
4c9623bb49 updated cli to v3 2020-12-12 22:07:06 -08:00
David Zhao
d4f30c126f Fix node IP discovery, force to ipv4 2020-12-05 23:36:45 -08:00
David Zhao
c401a6fdab ID -> SID 2020-12-04 23:04:24 -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
David Zhao
a6c4db2cb3 refactoring, enabling sending out room updates 2020-12-01 23:32:15 -08:00
David Zhao
1c821853f3 client sends offer after getting room info 2020-11-28 15:08:41 -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
e611020824 make reception report public 2020-11-15 22:11:52 -10:00
David Zhao
606e1ec70c client to handle publishing tracks on connection 2020-11-13 12:52:20 -08:00
David Zhao
c618f8c42f client consumes provided track 2020-11-13 12:31:01 -08:00
David Zhao
256328c4ff fixed server initiated negotiation 2020-11-11 00:02:37 -08:00