1
Fork 0
Commit Graph

399 Commits

Author SHA1 Message Date
Juliusz Chroboczek d69c517137 Allow auth server to fallback to password auth.
The authorisation server can now reply with 204 (no content)
in order to request that the client should continue with password
authentication.
2022-08-02 18:12:17 +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 96f39ca315 Change z-level of contextual menu 2022-05-29 01:50:17 +02:00
Juliusz Chroboczek cf495d31b3 Remove dead CSS. 2022-05-29 01:26:55 +02:00
Juliusz Chroboczek b55c9f7a92 Fix wording of Safari warning. 2022-05-19 15:24:15 +02:00
Juliusz Chroboczek 3d807677a7 Make warning against Safari screensharing stronger. 2022-05-19 13:24:44 +02:00
Juliusz Chroboczek 547ff1e6c4 Revert "Don't break lines manually in chat messages."
This reverts commit 2eca0e44d5.
2022-04-20 17:38:55 +02:00
Juliusz Chroboczek 6669a93ae3 Don't use high-quality audio for screenshare.
We used to set high-quality audio by default for screenshare,
but that makes the video blurry under bad network conditions.
Obey the hqaudio setting for all streams.
2022-04-15 00:36:47 +02:00
ericgaspar e673cf1225 Rename lower hand to unraise. 2022-03-26 11:55:30 +01:00
Juliusz Chroboczek eb21c1ab20 Maintain stream information for oneself.
We used to maintain stream information for all users except oneself.
2022-03-25 18:21:03 +01:00
Juliusz Chroboczek e303992e45 Call onuser when deleting stream. 2022-03-25 17:04:31 +01:00
Juliusz Chroboczek 7527aeba3d Factorise out setUserStatus. 2022-03-25 16:49:09 +01:00
Juliusz Chroboczek d8db7567e4 Allow displaying chat messages when unconnected.
This makes commands such as /set work before you connect.
2022-03-25 16:30:31 +01:00
Juliusz Chroboczek 2eca0e44d5 Don't break lines manually in chat messages.
This is no longer necessary since we use "pre-wrap" in the CSS.
2022-03-25 16:23:51 +01:00
Juliusz Chroboczek f66cabd6f4 Fix file transfer error handling. 2022-03-23 00:58:55 +01:00
Juliusz Chroboczek 8aaa6d1466 Obey forceRelay for file transfers. 2022-03-23 00:12:51 +01:00
Juliusz Chroboczek 55ae4a684b Remove parameter from the onpeerconnection callback.
The distinction is not likely to be useful, and it doesn't make
sense in all cases.
2022-03-23 00:11:12 +01:00
Juliusz Chroboczek 8d4bafe05c Tweak documentation of protocol.js. 2022-03-23 00:08:16 +01:00
Juliusz Chroboczek 34b21a2598 Add preference forceRelay.
This may be useful to get around network blocks in some cases.
2022-03-22 18:23:16 +01:00
Juliusz Chroboczek 4053d9ca77 Display warning when joining a locked group. 2022-03-22 18:18:04 +01:00
Juliusz Chroboczek de63449150 More paranoid match for Firefox bandwidth workaround. 2022-03-21 19:40:41 +01:00
Juliusz Chroboczek a698011aef Don't set rid when not simulcasting.
It turns out that the bandwidth limitation is not effective
in Firefox when the rid is set unless we're simulcasting.
2022-03-21 19:19:19 +01:00
Juliusz Chroboczek d798cfec75 Fix simulcast statistics display for Firefox.
Firefox doesn't include the rid in the statistics result.
Use the SSID instead.
2022-03-20 22:34:39 +01:00
Juliusz Chroboczek 148c49d253 Enable simulcast on Firefox.
Firefox uses a non-standard protocol for simulcast, which has been
supported by Pion for a while now.  Enable simulcast in Firefox.
2022-03-20 21:52:24 +01:00
Juliusz Chroboczek 96a46c695a Add presenting files to context menu. 2022-02-21 18:36:36 +01:00
Juliusz Chroboczek 296fe622df Share audio in addition to video. 2022-02-21 18:19:25 +01:00
Juliusz Chroboczek 3c98e15229 Control preprocessing and high-quality audio. 2022-02-21 18:18:03 +01:00
Juliusz Chroboczek aa30c34863 Increase audio quality for presented files. 2022-02-21 17:41:49 +01:00
Juliusz Chroboczek cbcfbb3f74 Make presenting files a chat command. 2022-02-21 17:32:32 +01:00
Juliusz Chroboczek 5ecb3a1f93 Fix file transfer.
We had two functions with the same name.
2022-02-21 16:53:22 +01:00
Juliusz Chroboczek de3a016f4d Set the username in the server when using tokens.
This avoids the need to pass the username in the URL without
requiring the client to parse tokens.
2022-02-20 15:33:11 +01:00
Juliusz Chroboczek a9c9581465 Implement authPortal. 2022-02-19 23:58:31 +01:00
Juliusz Chroboczek a86fb08f6c Replace ClientPermissions with a list of strings.
Now that we support external auth, the permissions list is
open-ended.  Make it a list for simplicity.
2022-02-19 23:44:57 +01:00
Juliusz Chroboczek 439dbabaa5 Replace custom SVG with icon. 2022-02-19 03:50:30 +01:00
Juliusz Chroboczek 4ce9a91c40 Implement passing tokens in URL search parameters.
It is now possible to autojoin by going to a URL such as

  https://galene.example.org/group/test?username=jch&token=...
2022-02-18 20:27:53 +01:00
Juliusz Chroboczek 03811db37d Implement token authentication. 2022-02-18 13:35:17 +01:00
Juliusz Chroboczek b4d1ef398f Fix typo in mute menu entry. 2022-02-16 23:10:43 +01:00
Juliusz Chroboczek 997806ec52 Add contextual menu in user list. 2022-02-16 20:52:23 +01:00
Juliusz Chroboczek 7cbc516679 Import Contextual.js.
https://github.com/LucasReade/Contextual.js
2022-02-16 20:34:20 +01:00
Juliusz Chroboczek 968390942c Keep self at top of user list. 2022-02-16 20:34:20 +01:00
Juliusz Chroboczek d2dff184d1 Move fontawesome to external, upgrade to 6.0.0. 2022-02-16 19:24:32 +01:00
Juliusz Chroboczek 62fb6d853c Move toastify into separate dir, upgrade. 2022-02-16 18:56:21 +01:00
Juliusz Chroboczek 14ca47651b Fix data parameter of ServerConnection.join.
This was broken when we renamed status to data.  Thanks to
Sylvie Tissot.
2022-02-05 13:48:05 +01:00
Juliusz Chroboczek 66e5d2951d Rework file transfer code.
More explicit data structures, better error handling.
2022-02-01 18:46:51 +01:00
Juliusz Chroboczek 60ba4aa727 Fix file transfer for Firefox.
Firefox implements the spec correctly by encapsulatings received
data in a blob by default.  Handle both blobs and ArrayBuffers.

Also improve error handling.
2022-02-01 13:36:16 +01:00
Juliusz Chroboczek 6d250bfa98 Add warnings about disclosing IP addresses. 2022-01-30 19:22:43 +01:00
Juliusz Chroboczek c38c5555b0 Ensure buttons are removed after a transfer is cancelled. 2022-01-30 18:28:35 +01:00
Juliusz Chroboczek c535f67246 Implement peer-to-peer file transfer. 2022-01-30 17:43:19 +01:00
Juliusz Chroboczek 24187430e8 Rename client status to data, add group data.
We now distinguish between status, which is maintained by the server,
and data, which is provided by the client.  In addition to client data,
we now support group data.
2022-01-29 23:28:08 +01:00
Juliusz Chroboczek 710cc3cc14 Add ability to set initial user status.
Setting the status after joining (using the "setstatus" action)
may cause multiple "user" messages to be sent to clients.  Add
the ability to set the initial status at join time.
2022-01-28 22:21:19 +01:00