Juliusz Chroboczek
3cbbfbacdd
Implement command renegotiate.
2020-12-05 21:02:28 +01:00
Juliusz Chroboczek
f002a83806
Keep track of stream direction.
...
This simplifies the interface since close does the right thing
without help from the application. Also improves error checking.
2020-12-05 20:44:42 +01:00
Juliusz Chroboczek
b6a6165650
Make fullscreen work on Safari.
2020-12-05 20:29:03 +01:00
Juliusz Chroboczek
96e5030d54
Work around Safari's autoplay restrictions.
2020-12-05 03:07:22 +01:00
Juliusz Chroboczek
b134bfcf13
Improve error handling on join failure.
...
Solves the issue of groups with a name ending in "/".
2020-12-04 22:56:29 +01:00
Juliusz Chroboczek
c5638a544f
Mirror own video.
2020-12-03 18:38:36 +01:00
Juliusz Chroboczek
1a11548192
Delay playing of video until connection is in good state.
2020-12-03 01:14:34 +01:00
Juliusz Chroboczek
27a2e45500
Implement /subgroups.
2020-12-02 19:47:32 +01:00
Juliusz Chroboczek
2546aae7c1
Eliminate login from protocol.
...
The login message is replaced with handshake, which only carries
the client id. Username and password is now in the join message.
Permissions is replaced with joined.
2020-12-02 13:49:53 +01:00
Antonin Décimo
59507c811f
Make type of array of objects compatible with JSDoc and TSDoc.
...
The best TSDoc type is (Text|HTMLElement)[], but to JSDoc the array is
not distributive. JSDoc prefers Text[]|HTMLElement[], but TSDoc
rejects that syntax. In the end, both are fine with
Array.<Text|HTMLElement>.
2020-12-01 21:07:44 +01:00
Juliusz Chroboczek
e68882fff0
Fix replacing of a video with a new one.
...
This was broken when we implemented local videos.
2020-12-01 16:20:25 +01:00
Juliusz Chroboczek
2b19a1034f
Improve command error handling when not connected.
2020-12-01 03:01:19 +01:00
Juliusz Chroboczek
f4c5d6a6ef
Display message header when time delta is larger than a minute.
2020-12-01 02:51:15 +01:00
Juliusz Chroboczek
e8df60cbbe
Move automatic presentation into gotPermissions.
...
Don't attempt to present if we don't have the present permission,
don't display the friendly popup if we've selected presentation.
2020-12-01 00:26:14 +01:00
Juliusz Chroboczek
71744c44ca
Implement mike-only login.
2020-11-30 22:16:10 +01:00
Juliusz Chroboczek
9110d03a9a
Fix handling of empty strings in reflectSettings.
2020-11-30 21:54:48 +01:00
Juliusz Chroboczek
8df19bc760
Remove more side menu entries when not allowed to present.
2020-11-30 20:53:12 +01:00
Juliusz Chroboczek
02504bcf9b
Hide mute button when user is not allowed to present.
2020-11-30 20:04:58 +01:00
Juliusz Chroboczek
d98c9b95b2
Implement commands /warn and /wall.
2020-11-30 20:04:58 +01:00
Juliusz Chroboczek
aa71205fa2
Include username and id in group and user actions.
2020-11-30 20:04:58 +01:00
Juliusz Chroboczek
f9e0573654
Implement remote mute.
2020-11-30 20:04:58 +01:00
Juliusz Chroboczek
6040d1943c
Allow forwarding usermessages.
...
They now have the same format as chat messages; the only difference
is that they are not stored in the chat history.
Also adds userMessage method to ServerConnection.
Fix usermessages.
2020-11-30 14:39:36 +01:00
Alain Takoudjou
63b460d20c
Move User menu to Settings sidebar
2020-11-29 22:35:21 +01:00
Juliusz Chroboczek
3a86157f15
Remove streamed video when it finishes.
2020-11-29 22:26:22 +01:00
Juliusz Chroboczek
e2a79e24a1
Mute local audio when streaming video.
2020-11-29 22:17:51 +01:00
Juliusz Chroboczek
08a2ff63fc
Replace type cast with type assertion.
2020-11-28 03:46:31 +01:00
Juliusz Chroboczek
a2e322edcb
Rework custom video controls.
...
Move custom video controls into its own function. Remove some
DOM traversals, avoid querySelector. Remove dead code.
2020-11-28 03:46:31 +01:00
Alain Takoudjou
907a712d6a
Remove support for disabling camera in media player.
2020-11-27 21:23:58 +01:00
Alain Takoudjou
484781e3c1
Close side menu after a local media file is loaded
2020-11-26 22:58:37 +01:00
Juliusz Chroboczek
6e548deded
Handle removetrack event on streamed videos.
...
Probably useless, but I'm supersticious.
2020-11-24 23:22:24 +01:00
Juliusz Chroboczek
6a9ab96902
Use default controls for streamed video.
2020-11-24 23:05:43 +01:00
Juliusz Chroboczek
58ba37d8da
Implement stopping of videos.
2020-11-24 22:41:43 +01:00
Juliusz Chroboczek
2c9ee2f431
Set outgoing rate for all stream types, not just local.
...
We were inconsistent with stream creation.
2020-11-24 21:21:26 +01:00
Juliusz Chroboczek
3167c217db
Implement playing of local files.
2020-11-24 19:36:11 +01:00
Juliusz Chroboczek
2c17157ea2
Implement automatic enabling of camera.
2020-11-24 17:16:52 +01:00
Juliusz Chroboczek
4c9762931d
Prevent multiple connections.
2020-11-24 16:29:19 +01:00
Juliusz Chroboczek
81db6e73eb
Add some typing annotations.
2020-11-24 15:55:12 +01:00
Juliusz Chroboczek
689bc63330
Make /me undocumented.
2020-11-24 15:46:10 +01:00
Juliusz Chroboczek
db4ea57883
Rework the command parser, implement /help.
2020-11-24 14:55:52 +01:00
Juliusz Chroboczek
dcfd071ea0
Remove studio mode.
...
It's not useful.
2020-11-20 21:22:52 +01:00
Alain Takoudjou
b1dac6f477
sfu webfont: switch to fontawesome 5
2020-11-20 20:54:33 +01:00
Alain Takoudjou
ff110ec9cd
remove button control to mute/unmute my video
2020-11-20 20:50:47 +01:00
Juliusz Chroboczek
0bc8129159
Disable the present button while setting up a presentation.
...
Users sometimes click on the button multiple times.
2020-11-09 01:16:13 +01:00
Juliusz Chroboczek
85df898101
Remove PIP button when not supported.
2020-11-09 00:35:52 +01:00
Juliusz Chroboczek
47c90037f3
Allow brackets and ampersands in URLs.
2020-11-09 00:11:55 +01:00
Juliusz Chroboczek
3c607a6e72
Improve typing, reindent.
2020-11-08 17:07:17 +01:00
Juliusz Chroboczek
3c57cc772e
Merge remote-tracking branch 'alain/sfu-update' into master
2020-11-08 14:06:05 +01:00
Alain Takoudjou
7cb73a501f
do not listen on camera control button when it's not present
2020-11-06 10:03:33 +01:00
Juliusz Chroboczek
49ade2f66f
Allow 30s slack for message times in the future.
2020-11-05 21:09:49 +01:00
Juliusz Chroboczek
96c3e4f830
Add warning about screen sharing under Safari.
2020-10-31 23:26:56 +01:00