David Zhao
537edda4c3
handle new UpdateParticipant API, enable permission updates
2021-03-20 22:27:47 -07:00
David Zhao
0de53f9a33
updated tests for participant update
2021-03-16 22:31:09 -07:00
David Zhao
f7ed2cee60
RoomService.updateParticipantMetadata, participant permissions
2021-03-16 01:22:21 -07:00
David Zhao
093d99b010
update dependencies, minor fixes
2021-03-15 11:42:57 -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
03d0a8c047
updated to ion-sfu v1.9.1, removed package bufferFactory
2021-03-01 14:49:46 -08:00
David Zhao
0a5808c73e
use nack fix in ion-sfu, fixes #26
2021-02-28 22:28:24 -08:00
David Zhao
95539a3cdd
fix tests
2021-02-17 18:07:14 -08:00
David Zhao
6be0c99fcc
tune audio level sensitivity
2021-02-16 16:02:19 -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
e342ea2155
Fixed #16 explicit passing of participant id
2021-02-12 23:53:46 -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
61b9569e38
fix: use track SID instead of source ID
2021-02-08 16:45:18 -08:00
David Zhao
f1f5b8dafe
use proper fix for using shared bufferFactory, remove resync hack
2021-02-07 23:06:16 -08:00
David Zhao
e30c9f706c
cleaner resync
2021-02-07 22:44:25 -08:00
David Zhao
fa9d2af495
use ion-sfu commit
2021-02-06 23:18:21 -08:00
David Zhao
290e100d0d
fix generation
2021-02-06 23:15:30 -08:00
David Zhao
ae203c27e3
send resync to ensure keyframes have been requested
2021-02-06 23:02:21 -08:00
David Zhao
74cf6b226d
fix mute
2021-02-05 17:48:12 -08:00
David Zhao
c012c742bd
fix allowing client negotiations prematurely.
2021-02-05 17:46:52 -08:00
David Zhao
c978a9cb1f
move to ion-SFU's receiver and downtrack
2021-02-04 21:57:40 -08:00
David Zhao
c015e267b0
switch to a single redis subscriber, close properly
2021-02-04 00:25:09 -08:00
David Zhao
5dec5b1ae2
update
2021-02-03 17:55:35 -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
88e247d95a
use SendRecv transceiver instead of Sendonly
2021-02-02 22:47:36 -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
5ce52b6a30
fixed keys parsing from ENV/cli
2021-01-30 13:20:39 -08:00
David Zhao
65078f5ef8
skip track updates when client has disconnected
2021-01-29 01:03:20 -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
dd8a1a5055
use atomic.Load to ensure atomicity
2021-01-28 23:40:30 -08:00
David Zhao
0e48711e4b
don't send participant updates to closed participants (typo fix)
2021-01-28 01:00:48 -08:00
David Zhao
0813a55617
ignore duplicate tracks being published
2021-01-27 09:42:02 -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
b7acdfeec1
fixed syntax error in test
2021-01-26 10:38:31 -08:00
David Zhao
1f8bb57c92
handle when RTCP comes in after track is closed
2021-01-25 00:03:39 -08:00
David Zhao
01d62edafa
doc updates
2021-01-24 15:18:34 -08:00