Juliusz Chroboczek
|
22c6ad6b8c
|
Implement ranging over groups.
|
2020-09-13 12:24:06 +02:00 |
|
Juliusz Chroboczek
|
fb02c6fe1f
|
Move client actions to webclient.go.
These are specific to webclients.
|
2020-09-13 11:57:33 +02:00 |
|
Juliusz Chroboczek
|
78e9c96a53
|
Make SetPermissions part of the client interface.
|
2020-09-13 10:45:16 +02:00 |
|
Juliusz Chroboczek
|
0064aa6fd2
|
Split out statistics functions into stats.go.
|
2020-09-13 10:10:35 +02:00 |
|
Juliusz Chroboczek
|
6f120f0333
|
Make disk recording clients kickable.
Kick can no longer be called with groups locked.
|
2020-09-12 14:00:14 +02:00 |
|
Juliusz Chroboczek
|
e37e27036e
|
Implement graceful server shutdown.
This gives the user a friendly message when the server shuts down.
|
2020-09-12 13:59:55 +02:00 |
|
Juliusz Chroboczek
|
7707775cca
|
Implement user-readable message for kick.
|
2020-09-12 12:26:07 +02:00 |
|
Juliusz Chroboczek
|
4bdd7c7665
|
Implement group redirection.
|
2020-09-10 14:22:34 +02:00 |
|
Juliusz Chroboczek
|
c2b1723bd4
|
Fail early when a group doesn't exist.
|
2020-09-10 13:41:15 +02:00 |
|
Juliusz Chroboczek
|
88d2a96819
|
Restructure error and chat messages.
|
2020-08-12 12:17:56 +02:00 |
|
Juliusz Chroboczek
|
7b51296262
|
Split handshake into login/join.
For now, join must follow login, but it will make it easier to extend
the protocol for joining multiple groups (think federation).
|
2020-08-12 11:50:30 +02:00 |
|
Juliusz Chroboczek
|
6bde5f986a
|
Store password in client structure.
No need to carry password around.
|
2020-08-12 11:49:23 +02:00 |
|
Juliusz Chroboczek
|
e724194ef6
|
Upgrade to pion/webrtc v3.
|
2020-08-07 11:15:58 +02:00 |
|
Juliusz Chroboczek
|
4e594465cc
|
Remove dead code.
|
2020-08-04 20:52:35 +02:00 |
|
Juliusz Chroboczek
|
9560779eb4
|
Move client interface to its own file.
|
2020-06-19 11:36:37 +02:00 |
|
Juliusz Chroboczek
|
a4d0741704
|
Perform congestion control at the connection level.
REMB applies to the whole transport, not to individual tracks.
|
2020-06-12 20:17:46 +02:00 |
|
Juliusz Chroboczek
|
903e499dd6
|
Don't reduce video rate in large groups.
|
2020-06-12 17:27:38 +02:00 |
|
Juliusz Chroboczek
|
448bb0374d
|
Use pushConn to delete connections.
The previous mechanism (going through up.local) was racy and complicated.
|
2020-06-10 19:50:18 +02:00 |
|
Juliusz Chroboczek
|
917fa33d38
|
Don't duplicate username in call to addClient.
|
2020-06-08 22:31:12 +02:00 |
|
Juliusz Chroboczek
|
208f023d9e
|
Make upConnections generic.
|
2020-06-08 22:14:28 +02:00 |
|
Juliusz Chroboczek
|
da97560cb3
|
Protect upConn.tracks by the upConn mutex rather than the client mutex.
Also don't rely on tracks being immutable in sendRR.
|
2020-06-08 19:11:20 +02:00 |
|
Juliusz Chroboczek
|
4da03a3ce5
|
Make rate estimator estimate packet rates too.
|
2020-06-03 23:45:45 +02:00 |
|
Juliusz Chroboczek
|
19a65318c9
|
Compute down track RTT.
|
2020-06-03 23:45:45 +02:00 |
|
Juliusz Chroboczek
|
49bccda5ee
|
Send client notification to oneself too.
This was broken when we pushed user notifications into addClient.
|
2020-06-03 21:09:24 +02:00 |
|
Juliusz Chroboczek
|
3e305e9827
|
Use jiffies instead of microseconds.
|
2020-06-03 20:58:01 +02:00 |
|
Juliusz Chroboczek
|
7ae9a9ea69
|
Rename mono to rtptime.
|
2020-06-03 20:12:25 +02:00 |
|
Juliusz Chroboczek
|
b8128f81a0
|
Move client notifications into addClient and delClient.
|
2020-06-01 00:02:17 +02:00 |
|
Juliusz Chroboczek
|
32e8f08b8d
|
Move dead errors into webclient.
|
2020-05-30 12:38:13 +02:00 |
|
Juliusz Chroboczek
|
0a2c4eb381
|
Implement recording.
|
2020-05-30 03:26:05 +02:00 |
|
Juliusz Chroboczek
|
3240225dc3
|
Make client generic.
|
2020-05-30 03:26:05 +02:00 |
|
Juliusz Chroboczek
|
d8b984979b
|
Rename client to webClient.
|
2020-05-30 03:26:05 +02:00 |
|
Juliusz Chroboczek
|
88fbce262f
|
Implement sendFIR.
|
2020-05-29 20:57:46 +02:00 |
|
Juliusz Chroboczek
|
e05f2fee81
|
Don't delete empty groups.
It was racy, and it drops the chat history. Let them accumulate for now.
|
2020-05-28 01:10:18 +02:00 |
|
Juliusz Chroboczek
|
e7f9a8f3dc
|
Make downTrack and downConnection into interfaces.
|
2020-05-27 11:24:52 +02:00 |
|
Juliusz Chroboczek
|
75804adc5f
|
Improve error handling.
|
2020-05-24 13:39:06 +02:00 |
|
Juliusz Chroboczek
|
6d6cb6caf2
|
Split out connection-related code into conn.go.
|
2020-05-22 22:29:31 +02:00 |
|
Juliusz Chroboczek
|
2a35f4e5d9
|
Don't add duplicates in addLocal.
|
2020-05-22 16:55:56 +02:00 |
|
Juliusz Chroboczek
|
9575b80893
|
Use mids instead of track ids for indexing labels.
It turns out that track ids are not necessarily the same on the local and
remote sides. Thanks to Ines Klimann for noticing the issue.
|
2020-05-21 22:40:11 +02:00 |
|
Juliusz Chroboczek
|
5a2dbf36b9
|
Signal new tracks explicitly.
|
2020-05-20 23:43:46 +02:00 |
|
Juliusz Chroboczek
|
12858e1f36
|
Implement commands /lock and /unlock.
|
2020-05-18 15:24:04 +02:00 |
|
Juliusz Chroboczek
|
037f002a29
|
Make the requested field of client requests into a dictionary.
|
2020-05-18 00:56:29 +02:00 |
|
Juliusz Chroboczek
|
b265aacd32
|
Push complete connections rather than individual tracks.
|
2020-05-17 23:55:54 +02:00 |
|
Juliusz Chroboczek
|
b26a8cad78
|
Label tracks explicitly.
For now, this is only used to request screen sharing as opposed to normal
videos. In the future, it will be used for simulcasting.
|
2020-05-17 23:28:19 +02:00 |
|
Juliusz Chroboczek
|
fc6c26e176
|
Reduce minimum video rate further.
|
2020-05-14 14:34:40 +02:00 |
|
Juliusz Chroboczek
|
b8dedcf0f0
|
Fix typo in getChatHistory.
|
2020-05-12 12:48:56 +02:00 |
|
Juliusz Chroboczek
|
337770814f
|
Fix typo in minVideoRate.
|
2020-05-11 15:55:15 +02:00 |
|
Juliusz Chroboczek
|
89695c3713
|
Implement reception of audio only.
|
2020-05-09 22:44:34 +02:00 |
|
Juliusz Chroboczek
|
0c7b77d919
|
Only send RTCP feedback if supported by the peer.
|
2020-05-09 18:49:22 +02:00 |
|
Juliusz Chroboczek
|
fd6b9f6bdd
|
Limit the video rate when we have large numbers of presenters.
|
2020-05-09 12:17:22 +02:00 |
|
Juliusz Chroboczek
|
e205596775
|
Increate receiver report timeout to 8s.
The previous value caused statistics to occasionally timeout spuriously.
|
2020-05-07 10:26:38 +02:00 |
|