Commit Graph

46 Commits

Author SHA1 Message Date
David Colburn 2a3fb5f0e7 move logging to protocol (#109) 2021-09-09 00:45:42 -07:00
David Colburn 2fd61531d2 small refactor (#104) 2021-08-30 18:22:11 -05:00
David Colburn 8a44fad307 protocol 0.8 (#95)
* protocol 0.8

* merge new selector
2021-08-27 13:16:33 -05:00
Mathew Kamkar c437152e2b NodeSelector using system load metric (#94)
* use load when selecting nodes

* Apply suggestions from code review

Co-authored-by: David Zhao <david@davidzhao.com>

* sysload selector test

* wire nodeSelectorFromConfig

* fix tests

* Update pkg/routing/selectorsystemload_test.go

Co-authored-by: David Zhao <david@davidzhao.com>

* dz review: nits

Co-authored-by: David Zhao <david@davidzhao.com>
2021-08-26 15:24:39 -07:00
Mathew Kamkar f9590afe1a include packet and system info with node stats (#92)
* include packet and system info with node stats

* add more packet and system stats

* revert magefile, clean up system stats error handling

* update procol version

* dz review: error return
2021-08-25 12:04:28 -07:00
Mathew Kamkar f5466c74e6 list-nodes command action (#87)
* list-nodes command action

* refactor stats into a package

* store existing stats in redis, more refactoring

* dz review: atomic load
2021-08-24 10:14:39 -07:00
David Zhao bcf6e15e07 SendData API & publishData permission (#88)
* SendData Server API

* SendData Server-API adjustments based on suggestions

* Update proto version

* enforce publishData permission

* go mod tidy

* fix go.mod

* go mod tidy

Co-authored-by: ChesterMing <89124853+ChesterMing@users.noreply.github.com>
2021-08-19 18:11:48 -07:00
David Colburn b00d5a02cb RoomRecorder (#70) 2021-07-27 00:39:48 -05:00
David Colburn 4bab395ac9 Hidden participants (#65)
Enables hidden recording and/or forwarding participants
2021-07-19 18:33:28 -05:00
hn8 87dfb2b117 log: consistent log key (#60) 2021-07-19 10:28:51 -07:00
hn8 06c44ca8f6 feat: support UDP in TURN (#61)
1. Add UDP option to TURN
2. GetLocalIPAddress default to IPv4
2021-07-19 09:21:59 -07:00
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 7877bc6ecd support for redis db 2021-04-30 15:03:41 -07:00
David Zhao 54584d6e2e support for Redis ACL with username/password pairs 2021-04-10 21:57:35 -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 1a8e26031f always use multi-node when Redis is provided, removed config 2021-01-30 13:29:31 -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 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 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 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 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 b32fee24c8 require 0600 on keyfile for security 2020-12-27 23:11:28 -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 804b7cb332 JWT token based auth 2020-12-25 22:31:11 -08:00
David Zhao 4fe98723ae server sends join response 2020-11-28 12:33:10 -08:00
David Zhao 925d1c653e switch to websockets, remove grpc dependency 2020-11-03 00:20:46 -08:00
David Zhao 36dd195ca3 Converted RTC back to GRPC for server push capability 2020-10-29 01:02:31 -07:00
David Zhao 6752c4a91d separated join from creation, room options & token 2020-10-07 23:54:44 -07:00
David Zhao 37984bd167 improved dir structure 2020-10-07 01:11:58 -07:00