1
Fork 0
mirror of https://github.com/jech/galene.git synced 2024-11-25 10:05:58 +01:00
Commit graph

178 commits

Author SHA1 Message Date
Juliusz Chroboczek
123d51e011 Implement selective clearchat. 2024-08-17 16:56:06 +02:00
Juliusz Chroboczek
eb72069c9b Add id to chat messages. 2024-08-17 16:56:06 +02:00
Juliusz Chroboczek
8fe2e9ca5f Force a user interaction before token login.
This avoids issues with autoplay being disabled.
2024-06-11 11:59:51 +02:00
Juliusz Chroboczek
7151fad149 Simplify the initial connection protocol.
The ServerConnection.connect method is no longer async,
we rely on the onconnected callback only.  The onconnected
callback is now only called after the initial handshake
completes.  There is a new onerror callback.
2024-06-10 21:12:47 +02:00
Juliusz Chroboczek
58934a1a46 Call reflectSettings synchronously.
We could previously attempt to display a remote stream before
reflectSetting initialised the settings.
2024-06-10 16:08:36 +02:00
Juliusz Chroboczek
6a55139c94 Fix typo in ondowntrack callback.
Fortunately we're not using the mistyped arguments.
2024-06-10 15:38:44 +02:00
Juliusz Chroboczek
b925bae5de Assume browsers support showModal. 2024-05-08 17:19:41 +02:00
Juliusz Chroboczek
1315084185 Implement message permission and shutup command. 2024-05-08 16:24:32 +02:00
Juliusz Chroboczek
e59880e267 Implement /stopshare. 2024-05-08 15:14:45 +02:00
Juliusz Chroboczek
e68ff86287 Implement contextual menu for chat entries.
Double-click, because otherwise it interferes with selection.
2024-05-02 00:39:44 +02:00
Juliusz Chroboczek
a76f225bc0 Implement command /identify. 2024-05-01 23:38:31 +02:00
Juliusz Chroboczek
10cab468a8 Add link for changing password. 2024-04-11 14:30:44 +02:00
Juliusz Chroboczek
5fe578dcf5 Allow tokens with small expiration times.
There was a typo that prevented tokens with less than two days
validity.
2024-03-03 13:29:44 +01:00
Juliusz Chroboczek
3ad6f27b17 Move .status.json to .status.
Keep a redirect for backwards compatibility.
2024-01-18 00:39:32 +01:00
Juliusz Chroboczek
0fc9136774 Allow HTML elements in addToChatbox. 2023-12-08 23:41:51 +01:00
Juliusz Chroboczek
96e2db0347 Protect against undefined navigator.mediaDevices.
This may happen if we're running over plain HTTP.
Thanks to kovmir.
2023-12-08 18:52:06 +01:00
Juliusz Chroboczek
c0214c3350 Fix typo in comment. 2023-12-08 18:39:08 +01:00
Juliusz Chroboczek
2ad6fc5b6e Constrain video aspect ratio rather than resolution. 2023-11-04 23:56:47 +01:00
Juliusz Chroboczek
ff28e33d74 Set default resolution to 640x400.
We used to accept the browser's default, which varied widely
between devices.
2023-11-04 22:58:15 +01:00
Jackson Vieira
1ad91adf89 Fix audio activity detection for downstreams
Replaced the non-existent `track` property in `RTCStatsType`
with the valid `inbound-rtp` property.
2023-08-28 22:47:46 +02:00
Juliusz Chroboczek
a701d8c6fa Remove client-side support for protocol version 1. 2023-07-16 15:54:58 +02:00
Juliusz Chroboczek
a845e9f722 Special-case screenshare in setSendParameters.
This avoids restarting the stream when changing simulcast
settings.
2023-07-14 23:59:06 +02:00
Juliusz Chroboczek
bb0a01895e Disable simulcast on Firefox by default.
Simulcast interacts strangely with VP9.
2023-07-09 17:34:28 +02:00
Juliusz Chroboczek
1afb3c85b0 Open microphone early on Safari.
Safari forbids autoplay and omits host candidates unless the microphone
is open.
2023-07-05 23:41:59 +02:00
Juliusz Chroboczek
2c852206bd Add dialog for generating tokens. 2023-05-03 23:30:48 +02:00
Juliusz Chroboczek
1afd995844 Improve token formatting. 2023-05-03 22:55:27 +02:00
Juliusz Chroboczek
cfb5d936ee Improve interface to makeToken.
It now takes a template that allows setting all options.
2023-05-03 18:48:35 +02:00
Juliusz Chroboczek
7f93aa5dc8 Simpler Firefox workaround in addUpTrack.
Rather than trying to determine whether the workaround is needed,
we now perform it unconditionally, and ignore the resulting exception
on non-broken browsers.
2023-04-13 22:26:41 +02:00
Juliusz Chroboczek
3ea4b8a32a Remove Firefox workaround from setUpStream.
This is no longer needed since version 110.
2023-04-13 16:37:26 +02:00
Alexandre Iooss
49db9f94d5 Autofocus username input on login page 2023-04-08 21:21:29 +02:00
Juliusz Chroboczek
8775ce6406 Keep track of issuer and creation date in tokens. 2023-04-08 21:13:35 +02:00
Juliusz Chroboczek
adf273f9ea Expire expired tokens.
We now remove a token a week after it has expired.
2023-04-04 01:22:05 +02:00
Juliusz Chroboczek
e93642f9db Add menu entry for inviting, use native dialog on mobile. 2023-04-04 01:22:05 +02:00
Juliusz Chroboczek
ac1dc77b30 Reconnect when server complains about a username.
If a token does not specify a username, the server will request
one by failing the join message.  Disconnect from the WebSocket
in that case, and display the login dialog with the password
field invisible.
2023-04-04 01:22:05 +02:00
Juliusz Chroboczek
8c1510023f Implement user interface for token management. 2023-04-04 01:22:05 +02:00
Juliusz Chroboczek
e47ca20a9f Remove spurious argument to gotConnected. 2023-03-22 18:19:04 +01:00
Juliusz Chroboczek
dbeb75ee0e Better progress indicator for file transfer. 2023-01-16 15:51:40 +01:00
Juliusz Chroboczek
645ba5fb48 Split out file transfer button handling.
Split out deleting of buttons during file transfer into its own
function.
2023-01-16 14:39:20 +01:00
Juliusz Chroboczek
de57748043 Disable simulcast for screen sharing.
Simulcast doesn't seem to work well with screen sharing: only one
layer is sent, which has very low throughput since we send the low
layer first.  Disable simulcast for screen sharing.
2023-01-11 19:36:33 +01:00
Juliusz Chroboczek
056f98604a Simplify checking for privileged user messages. 2022-12-17 00:15:07 +01:00
Juliusz Chroboczek
fae045fb61 Client-side support for protocol version 2.
This does not yet support the new 'need-username' error.
2022-12-16 18:38:30 +01:00
Juliusz Chroboczek
1bce623080 Hide peers with no video by default.
Now that we have an indicator in the users list, it is reasonable
to hide audio-ony peers by default.
2022-09-16 19:43:35 +02:00
Juliusz Chroboczek
db30b052f9 Include camera indicator in users list. 2022-09-16 19:14:29 +02:00
Juliusz Chroboczek
ae782f5d00 Remove isUp parameter from setMedia.
It's redundant, the data is already in the stream.
2022-09-16 19:13:55 +02:00
Juliusz Chroboczek
eefe763a9f Add omitted defer, remove debug statement. 2022-09-09 14:58:32 +02:00
Juliusz Chroboczek
0fe3ed2e15 Fix chathistory and display of anonymous users.
Chathistory messages were formatted incorrectly.
We were also not formatting correctly messages from
anonymous users.
2022-09-06 19:03:50 +02:00
Juliusz Chroboczek
4bc873a574 Publish websocket endpoint in group status. 2022-09-01 14:55:52 +02:00
Juliusz Chroboczek
4e275a63b4 Derive group name from status
This avoids hard-wiring URLs in the client.
2022-09-01 14:37:42 +02:00
Juliusz Chroboczek
3bdd82f06d Rework file transfer.
Split into the protocol (in protocol.js) and the user interface
(in galene.js).  Make the state automaton explicit, and improve
error-handling.  The new protocol is incompatible with the old one.
2022-07-25 18:54:52 +02:00
Juliusz Chroboczek
b55c9f7a92 Fix wording of Safari warning. 2022-05-19 15:24:15 +02:00