David Zhao
537edda4c3
handle new UpdateParticipant API, enable permission updates
2021-03-20 22:27:47 -07:00
David Zhao
f7ed2cee60
RoomService.updateParticipantMetadata, participant permissions
2021-03-16 01:22:21 -07:00
David Zhao
98013ac20f
/rtc responds to only websocket requests. Fixes #25
2021-03-15 11:06:26 -07:00
David Zhao
9b2c2f351c
support clients that use binary protocol, 0.6.1
2021-03-15 10:57:15 -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
03d0a8c047
updated to ion-sfu v1.9.1, removed package bufferFactory
2021-03-01 14:49:46 -08:00
David Zhao
f7af7607b9
terraform deploy on ECS ( #27 )
2021-02-28 22:28:17 -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
0eb9734111
ignore another closure message
2021-02-16 22:47:10 -08:00
David Zhao
e402d0d0af
subscriber control of tracks (unsubscribe/mute/quality), support simulcast ( #23 )
...
* subscription control & simulcast RTC APIs
* don't remove tracks for simulcast
2021-02-16 13:52:50 -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
a96069969d
support audio level extension & active speaker detection ( #20 )
...
* send active speaker updates with audio level
* add test on loudness sorting
* use a float to represent audio level
2021-02-14 14:30:23 -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
a4266478c5
better logging around negotiations
2021-02-02 01:16:13 -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
76b0dc62a7
close rooms after delay instead of immediately after participant departure, to allow reconnects
2021-01-31 14:19:16 -08:00
David Zhao
320a6c35bf
enable explicit reconnect to distinguish between WS disconnect vs PeerConnection disconnect
2021-01-30 23:16:11 -08:00
David Zhao
2cf2c448be
rework multi-node routing, cleaner design for reconnection
2021-01-30 22:24:08 -08:00
David Zhao
28e73bd109
rename Participant.name to Participant.identity
2021-01-30 14:00:37 -08:00
David Zhao
fe83baa662
reuse the same Participant ID within the same room/session
2021-01-28 01:14:06 -08:00
David Zhao
08f5957d65
log version number on startup
2021-01-27 09:08:23 -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
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