86 Commits

Author SHA1 Message Date
David Zhao
a80e8cf69f Enable passing in local IP, refactored IP detection (#48)
* Enable passing in local IP, refactored IP detection

* update docker server instructions
2021-07-11 08:42:11 -07:00
David Zhao
76efe14c6d ensure keys are not empty 2021-07-06 21:43:03 -07:00
David Zhao
6751361187 Feature: codec restrictions.
In order to ensure clients are publishing with compatible codecs, the server can enforce codec restrictions.
2021-07-02 16:54:54 -07:00
David Colburn
e543aaa98a turn server tls (#38)
* tls

* acm

* use cert/key files

* turn -> turns

* turn cert config

* updates

* move panic

* tidy

* final updates
2021-07-01 17:00:49 -05:00
David Colburn
eebc2f5acd add throttle config 2021-06-21 17:13:58 -07:00
David Zhao
855217bd1c Seed random number generator 2021-06-03 11:38:45 -07:00
David Zhao
642e696456 updated readme 2021-05-07 13:56:28 -07:00
David Zhao
d399a57a7b Removed cli, mux cleanup, docs update 2021-05-07 01:16:33 -07:00
David Zhao
f60b356807 don't hide trickle decode errors 2021-05-06 00:10:23 -07:00
David Zhao
7877bc6ecd support for redis db 2021-04-30 15:03:41 -07:00
David Zhao
93d10b2640 Manual negotiation and plan-b support 2021-04-16 00:56:25 -07:00
David Zhao
e4238890ff Refactor/cleanup of negotiation path 2021-04-15 17:03:22 -07:00
David Zhao
54584d6e2e support for Redis ACL with username/password pairs 2021-04-10 21:57:35 -07:00
David Zhao
9aa6fc29f5 support immediate disconnect via Leave 2021-04-08 22:06:43 -07:00
David Zhao
dfac44d59e reduce reliance of funk, fixed bug getting subscribed tracks 2021-03-27 21:54:46 -07:00
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
e20c831c14 automatic configuration of TURN, with per-room credentials. version 0.6.0 2021-03-07 23:30:21 -08:00
David Zhao
fa2ffa46e7 Embedded TURN server 2021-03-06 22:47:48 -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
1a8e26031f always use multi-node when Redis is provided, removed config 2021-01-30 13:29:31 -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
25d476b8ac fixed multi-node routing, correctly set rtc and signal nodes 2021-01-27 01:16:08 -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
f004aa2952 auto-create rooms upon creation 2021-01-24 23:47:24 -08:00
David Zhao
c4fb1b3808 fixed localrouter timeout, updated VideoGrant fields 2021-01-24 12:52:40 -08:00
David Zhao
18264e7a8b builds docker image 2021-01-19 22:09:11 -08:00
David Zhao
c04fd86f9c multi-node integration tests 2021-01-19 20:34:11 -08:00
David Zhao
71b4673a0a cleanup room state, proper participant termination 2021-01-18 23:44:59 -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
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
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
7c3b0c5202 added ability to profile memory/cpu 2021-01-11 23:16:56 -08:00
David Zhao
7dcb88343a binding to buffer and correctly forwarding 2021-01-10 16:18:58 -08:00