1
Fork 0
Commit Graph

479 Commits

Author SHA1 Message Date
Juliusz Chroboczek 3b98e123e0 Send a message of kind "kicked" instead of "error". 2021-07-30 19:38:02 +02:00
Juliusz Chroboczek a25d46314a Fix documentation of onerror callback. 2021-07-30 17:40:15 +02:00
Juliusz Chroboczek 8178275164 Rename "Present" to "Enable". 2021-07-29 14:46:02 +02:00
Juliusz Chroboczek 82b10b2c10 Properly close the camera when changing parameters.
The trick of calling the onclose callback wasn't correct.
2021-07-17 00:38:26 +02:00
Juliusz Chroboczek b9c1968b48 Treat closing unknown streams as a warning. 2021-07-16 23:10:13 +02:00
Juliusz Chroboczek 7b4fd8932c Fix title display. 2021-07-16 23:03:36 +02:00
Juliusz Chroboczek eedfaccaff Add locked and displayName to public-groups.json. 2021-07-16 20:01:54 +02:00
Juliusz Chroboczek 52a26327d7 Implement group status.
We now inform clients of the status of a group (locked, etc.).  Also
cleans up the handling of administrative messages, which solves the
issue of receiving "user" before "joined".
2021-07-16 19:51:54 +02:00
Juliusz Chroboczek 0d2ca28ae1 Close camera on disconnect. 2021-07-16 01:40:42 +02:00
Juliusz Chroboczek 22585e9d10 Handle spatial scalability.
Maintain spatial layer information, and drop lower layers when
possible.  Yields a 20% saving with VP9.
2021-05-17 18:17:43 +02:00
Juliusz Chroboczek 781bdf8c74 Fix error handling in mainpage and stats. 2021-05-17 14:43:57 +02:00
Juliusz Chroboczek 91fa693709 Display max layer in stats. 2021-05-17 13:51:29 +02:00
Juliusz Chroboczek f12f776e03 Hide simulcast form when not allowed to send. 2021-05-15 11:36:04 +02:00
Juliusz Chroboczek 54cd546120 Request low-resolution video when the video is small. 2021-05-14 23:21:14 +02:00
Juliusz Chroboczek 2da8faa8cf Implement per-stream requests. 2021-05-14 23:21:14 +02:00
Juliusz Chroboczek 6f9d7fc306 Scalable video coding (SVC). 2021-05-14 23:21:14 +02:00
Juliusz Chroboczek 16bf4d6c95 Move call the setViewportHeight to start function.
This avoids issues with initialisation order.
2021-05-14 18:04:18 +02:00
Juliusz Chroboczek c18ec32c85 Protect against closed streams in recomputeUserStreams. 2021-05-13 04:09:56 +02:00
Juliusz Chroboczek 1212c7cb04 Run Firefox workaround unconditionally. 2021-05-12 02:59:12 +02:00
Juliusz Chroboczek 485b0c1b85 Disable simulcast on Firefox. 2021-05-10 02:53:22 +02:00
Juliusz Chroboczek be4ae56c14 Fix changing filter for a running stream. 2021-05-09 18:59:46 +02:00
Juliusz Chroboczek 627061f0de Rework statistics page. 2021-05-09 18:46:10 +02:00
Juliusz Chroboczek 32663dbf3f Don't enable simulcast when there are just two users.
If simulcast is set to auto, disable simulcast when there are just
two users in the group.
2021-05-09 17:49:35 +02:00
Juliusz Chroboczek 2f44961589 Add UI for simulcast control. 2021-05-08 21:25:22 +02:00
Juliusz Chroboczek 795a40ceaf Simulcast. 2021-05-08 21:12:29 +02:00
Juliusz Chroboczek f1a15f07db Factor out stream creation, implement replaceUpStream.
This avoids code duplication in the various addUpMedia functions,
and makes it possible to replace a stream without reopening the
stream's source.  This will be required in order to change the
simulcast envelope.
2021-05-08 18:52:36 +02:00
Juliusz Chroboczek 8ec0a44c09 Fix controls for down streams.
Now that down streams have labels, we need to distinguish on the
stream direction.
2021-05-08 14:19:46 +02:00
Juliusz Chroboczek ce0571cb7a Use stop video button on all streamed videos.
Delete the stop video button, it is now redundant.  Panic remains.
2021-05-08 02:51:52 +02:00
Juliusz Chroboczek a20741408c Fix hander for shared screen close button. 2021-05-07 02:44:04 +02:00
Juliusz Chroboczek 86b6c71ca0 Reformat stats display, protect against division by zero. 2021-05-07 02:23:10 +02:00
Juliusz Chroboczek b1bb427f06 Add human-readable version of stats under /stats.html. 2021-04-30 20:46:44 +02:00
Juliusz Chroboczek acca3f9bb3 Maintain kinds of tracks in user data structure.
Needed to show in the user list whether a user is publishing a stream.
2021-04-29 21:10:04 +02:00
Juliusz Chroboczek 4a6dccff0c Set track parameters at creation time.
We now create a sendonly transceiver, and set the max bitrate at
creation time.
2021-04-29 18:28:17 +02:00
Juliusz Chroboczek be73380f9f Label streams, not tracks.
We used to label tracks individually, in a view to using the labelling
for simulcast.  Since then, the WebRTC community has converged on a
different strategy, where multiple tracks share a single mid and
are labelled with the rid extension.

We now label whole streams, which is simpler, and use the track's
kind (and, in the future, the rid) to disambiguate.  This changes the
protocol in two ways:

  * in offers, the "labels" dictionary is replaced by a single "label"
    field; and
  * the syntax of the "request" message has changed.
2021-04-29 18:28:16 +02:00
Alain Takoudjou b08a2e3943 Add Unshare button on each shared video and remove global unshare screen button 2021-04-29 18:24:07 +02:00
Juliusz Chroboczek 3ba2394be7 Implement user statuses.
The server now maintains a set of statuses for each user that are not
interpreted by the server but communicated to the other members of the
group using 'user' messages.
2021-04-28 17:01:05 +02:00
Juliusz Chroboczek f0a39fca48 Send user permissions to client.
We now maintain the user list in the serverConnection.
2021-04-28 00:07:19 +02:00
Juliusz Chroboczek b7f39d3290 Remove last traces of onabort callback.
Everything now goes through onclose, both for up and down streams.
2021-04-27 17:10:34 +02:00
Alexandre Iooss 8da55c6e6c Remove async from ServerConnection.gotRenegotiate 2021-04-27 11:11:17 +02:00
Alexandre Iooss 4db8279016 Fix serverConnection not defined in ServerConnection.findByLocalId 2021-04-27 11:11:17 +02:00
Alexandre Iooss 5ce3dce0d0 Remove font awesome from mainpage 2021-04-22 18:09:36 +02:00
Alexandre Iooss e330765563 Use column flexbox on mainpage
This removes the need to hardcode the footer height in a CSS calc().
2021-04-22 18:09:36 +02:00
Alexandre Iooss 8544e4deb4 Fix overflow on mainpage
The signature class was forcing the maximum height making the <p>
element overflowing the page. By removing this constraint, the overflow
is now gone.
2021-04-22 18:09:36 +02:00
Alain Takoudjou 81050184eb Fix detecting if mobile css layout is enabled
Use matchMedia to check if mobile css is enabled instead of checking window innerwidth size.
2021-04-22 15:55:46 +02:00
Alain Takoudjou 637e280dec Fix show/hide video and chat box for mobile and normal UI
Uses less javascript to update css style, rework buttons css for show/hide video and chat.
Fix show or hide video button on normal or mobile ui when windows is resized or when orientation change.
2021-04-22 15:55:39 +02:00
Alexandre Iooss c06bfa4519
Fix some warning messages and comment in galene.js 2021-03-30 07:28:20 +02:00
Alexandre Iooss ce0cb1ef98
Add missing </p> in index.html 2021-03-30 07:27:35 +02:00
Alexandre Iooss 0df2ec1684
Set charset in galene.html 2021-03-30 07:27:07 +02:00
Alain Takoudjou dc34c9e459 Fix users sidebar is partially hidden on some devices
Users list bars is partially hidden which troncate some username on certains devices.
2021-03-26 17:06:18 +01:00
Alain Takoudjou 8d5e23aae9 Fix elements overflow-y on right sidebar menu
When Settings menu element height is more that the menu content height some item are hidden. overflow to scroll to make them visible on scroll
2021-03-26 11:13:41 +01:00
Alain Takoudjou ffcd866301 Fix show chat button always hidden on mobile layout
The maximum device with for mobile layout in css is 1024px, for device with > 768 (Ipad)
chat button will stay hidded while chat box is also hidden when there is a video call.
This commit fix the issue.
2021-03-26 11:12:45 +01:00
Juliusz Chroboczek 016c321484 Fix typing of userMessage value. 2021-02-26 16:22:55 +01:00
Juliusz Chroboczek e04193f78c Display user message when browser doesn't do WebRTC.
Thanks to mscherer for the report.
2021-02-14 18:06:50 +01:00
Juliusz Chroboczek fe9b89257a Set buttons visibility when disconnecting. 2021-02-04 23:11:40 +01:00
Juliusz Chroboczek 6054ae6cc6 Update client code for renegotiation.
We now need to deal with the case where a track disappears from the
labels array.
2021-02-03 20:26:05 +01:00
Juliusz Chroboczek f63ecb3078 Support file playback on Mozilla. 2021-02-01 01:08:39 +01:00
Juliusz Chroboczek 14a4303664 Rework connection replacement.
We used to signal connection replacement by reusing the same connection
id.  This turned out to be racy, as we couldn't reliably discard old
answers after a connection id was refused.

We now use a new id for every new connection, and explicitly signal
stream replacement in the offer message.  This requires maintaining a
local id on the client side.
2021-01-31 23:59:17 +01:00
Juliusz Chroboczek aa69538057 Minor typos and tweaks in galene.html. 2021-01-25 13:06:09 +01:00
Juliusz Chroboczek 8e395e38ac Add option to disable mirror view. 2021-01-23 01:15:53 +01:00
Juliusz Chroboczek 8a44726f89 Save blackboard mode and activity detection across reloads. 2021-01-23 01:13:27 +01:00
Juliusz Chroboczek 7d216f650c Add replace parameter to onclose stream callback.
This indicates that the stream is being replaced by another one with
the same id.  This avoids moving videos around when they are being
renegotiated.
2021-01-17 20:20:35 +01:00
Juliusz Chroboczek 2380e2e183 The up streams rework broke renegotiation. Don't attempt to
renegotiate, just close the stream and open it again.
2021-01-15 22:41:40 +01:00
Juliusz Chroboczek 8168c2a9e6 Rework the up connection state machine.
It is now more similar to the down connection, using the onclose
callback for resource management.
2021-01-14 23:50:40 +01:00
Juliusz Chroboczek 82827453f0 Use clearInterval instead of clearTimer. 2021-01-13 20:15:39 +01:00
Juliusz Chroboczek 2eb61d877f Allow filters to maintain state. 2021-01-13 18:31:18 +01:00
Juliusz Chroboczek 769c698894 Properly stop up media in delUpMediaKind. 2021-01-13 17:07:54 +01:00
Juliusz Chroboczek c6ed27c100 More filter fixes. 2021-01-13 17:07:40 +01:00
Juliusz Chroboczek 8120a30725 Don't reset srcStream if not changing.
This avoids flicker upon renegotiation.
2021-01-13 14:59:43 +01:00
Juliusz Chroboczek d5e3429262 Reset transform at the end of filters. 2021-01-13 14:36:29 +01:00
Juliusz Chroboczek 45c2711522 Add contextAttributes to filter definition. 2021-01-13 14:20:23 +01:00
Juliusz Chroboczek 684c8c5df8 Add user interface for filter selection. 2021-01-13 13:57:05 +01:00
Juliusz Chroboczek b24bd5c0ed Rework filters.
Make it possible to attach filters dynamically.  Work around bugs
in Firefox.
2021-01-13 13:39:55 +01:00
Juliusz Chroboczek cf6c1203c8 Better typing for filters, allow filters to skip frames. 2021-01-12 03:52:23 +01:00
Juliusz Chroboczek a5b57976d2 Lock filter framerate to webcam framerate. 2021-01-12 03:36:51 +01:00
Juliusz Chroboczek ca6020a27e Implement filters.
No user interface yet.
2021-01-12 02:29:46 +01:00
Juliusz Chroboczek e7d7c2dd0a Call revokeObjectURL in the onclose callback.
This avoids special-casing file streams.
2021-01-12 02:23:52 +01:00
Juliusz Chroboczek 371289793b Call onclose on up streams too. 2021-01-12 02:23:22 +01:00
Juliusz Chroboczek 820b303e84 Send localDescription instead of original SDP. 2021-01-11 20:41:34 +01:00
Juliusz Chroboczek 70e80afd6c Implement localMessage. 2021-01-11 19:28:57 +01:00
Juliusz Chroboczek 63e1a6f47d Tweak relay-test. 2021-01-11 18:50:29 +01:00
Juliusz Chroboczek 165c942dc7 Add undocumented command /relay-test. 2021-01-11 18:24:54 +01:00
Juliusz Chroboczek b600be8100 Implement /muteall. 2021-01-11 16:30:19 +01:00
Juliusz Chroboczek 63e2b5a4c4 Implement 'noecho' field in client messages. 2021-01-11 16:30:07 +01:00
Antonin Décimo fb30fe3bb7 Fix removal of stream.onremovetrack callback. 2021-01-05 21:59:50 +01:00
Antonin Décimo 056ffcd2cf Add missing semicolons. 2021-01-05 21:59:47 +01:00
Juliusz Chroboczek d2f7010141 Call ondowntrack on each track.
We used to call it on just the first track.  Also remove obsolete
remains of the onlabel callback.
2021-01-04 20:43:39 +01:00
Juliusz Chroboczek 69bb12014e Fix omitted break in gotUserMessage. 2021-01-04 13:15:50 +01:00
Juliusz Chroboczek 0ec9f92dad Make 'clearchat' into a user message. 2021-01-03 17:47:56 +01:00
Juliusz Chroboczek e393819eda Carry raw SDP in the protocol. 2021-01-03 17:00:58 +01:00
Juliusz Chroboczek f53276b89e Simplify the protocol and the protocol interface.
Split the id field into id and source, where source indicates the sender
of the message and id the entity being sent.  Remove the label request,
just use the offerer's username.  Maintain the username within the
ServerConnection, this removes a parameter from some methods.
2021-01-03 12:17:30 +01:00
Juliusz Chroboczek a0418d26ec Send RTC configuration with joined message.
This avoids one HTTP request, and is potentially more flexible.
2020-12-28 02:55:19 +01:00
Juliusz Chroboczek d09c0f0a80 Make the value field of client messages carry arbitrary types. 2020-12-28 01:49:27 +01:00
Juliusz Chroboczek 5e831ab536 Append message footer to /me messages too. 2020-12-28 01:49:27 +01:00
Juliusz Chroboczek 2dfa175bd1 Create video element early. 2020-12-25 20:29:46 +01:00
Juliusz Chroboczek e3fd9a963a Improve error handling during negotiation. 2020-12-25 18:54:18 +01:00
Juliusz Chroboczek d5c7a13aae Implement abort in the client->server direction. 2020-12-25 18:51:17 +01:00
Juliusz Chroboczek ed9377e38f Disable playing files when browser doesn't support captureStream. 2020-12-24 00:01:33 +01:00
Juliusz Chroboczek 66fb73d01e Relicense under the MIT licence. 2020-12-19 17:26:33 +01:00
Juliusz Chroboczek 6a38272d1c Change homepage URL. 2020-12-16 22:41:06 +01:00
Alain Takoudjou ce8acf303a Make warning popup message more readable 2020-12-15 17:06:06 +01:00
Alain Takoudjou bdfa793a8d Add play button to video custom controls
If autoplay is not working on browser, user can play the video with this button
2020-12-15 16:48:32 +01:00
Alain Takoudjou 6b4d351295 Improve design of login box
Reorganize radio buttons also.
2020-12-15 16:48:25 +01:00
Antonin Décimo f5de94cf3e Correct spelling of privileged. 2020-12-15 14:52:46 +01:00
Juliusz Chroboczek a939ec07a7 Add explicit resolution setting.
No UI for now.
2020-12-14 19:31:42 +01:00
Juliusz Chroboczek e17d97100b Fill login box after a reload. 2020-12-12 23:36:08 +01:00
Juliusz Chroboczek b7aea3a4d1 Remove incorrect guards from addMedia functions.
These functions require having joined a group, not just having
proper credentials.
2020-12-12 23:31:54 +01:00
Juliusz Chroboczek e35e6e5e10 Fix handling of join messages of kind change. 2020-12-12 13:51:08 +01:00
Juliusz Chroboczek 954c23cc3b Move disabling of volume slider into setVolumeButton. 2020-12-12 13:51:08 +01:00
Alain Takoudjou 6a403e1fd9 Set temporary placeholder for input area.
Co-authored-by: Juliusz Chroboczek <jch@irif.fr>
2020-12-12 13:51:08 +01:00
Alain Takoudjou 3faf46a1d7 Rework video player style
Reduce button size and reduce video control bar size.
Add a volume slider to control volume level when volume control is enabled
2020-12-11 18:37:13 +01:00
Alain Takoudjou b2f050e552 Fix size for present and unpresent button on mobile
There is no text on mobile layout
2020-12-11 18:37:13 +01:00
Juliusz Chroboczek ef1c211b7f SFU is now called Galène. 2020-12-06 19:51:02 +01:00
Juliusz Chroboczek 3cbbfbacdd Implement command renegotiate. 2020-12-05 21:02:28 +01:00
Juliusz Chroboczek c6108f08d5 Allow renegotiate to be called on down streams. 2020-12-05 20:44:55 +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 1c5bce2a38 Improve documentation for protocol functions. 2020-12-05 20:29:03 +01:00
Juliusz Chroboczek b6a6165650 Make fullscreen work on Safari. 2020-12-05 20:29:03 +01:00
Juliusz Chroboczek 9bb2499b85 Rework flushing of ICE candidates.
We now treat local and remote candidates differently, and flush
local candidates immediately after sending an offer.
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
Antonin Décimo f0cbe9c0c1 Fix wrong label reference. 2020-12-03 22:53:51 +01:00
Juliusz Chroboczek c5638a544f Mirror own video. 2020-12-03 18:38:36 +01:00
Alain Takoudjou 29e98f4f37 Fixed size for both present and unpresent button
To prevent size of menu to change when user click on present the unpresent button
2020-12-03 16:46:20 +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 4a4973fc44 Rename Present button to Panic. 2020-12-02 19:05:02 +01:00
Antonin Décimo 20fe37b459 Align checkboxes with labels in optionsdiv. 2020-12-02 13:49:53 +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
Juliusz Chroboczek 2f6c710f29 Fix side menu input elements.
Input elements have no contents.  Thanks to Antonin Décimo.
2020-12-01 21:17:10 +01:00
Antonin Décimo 7d4dabe30f JSDoc doesn't recognize {Promise<void>[]}, use {Array.<>}. 2020-12-01 21:07:44 +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
Antonin Décimo 22f9442cf4 Fix typos. 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 1a92535957 Respect whitespace in chat messages. 2020-11-30 20:04:58 +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 60470cf8cf Simplify Settings menu icon 2020-11-29 22:35:34 +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
Toke Høiland-Jørgensen 08b1a50d21 Fix CSS for new version of Font Awesome. 2020-11-25 17:02:27 +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 3d3182acf8 Fix typo in side menu. 2020-11-09 00:13:13 +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 c4f97b3cf0 make button on video more visible when background is white 2020-11-06 11:04:10 +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
Alain Takoudjou 581d2439ab video controls on mobile 2020-10-31 01:23:20 +01:00
Alain Takoudjou e900ef6d89 fix resize video on screen sharing too 2020-10-31 01:15:03 +01:00
Alain Takoudjou 4e2993dd1d put message send date in the msg header block 2020-10-31 00:37:03 +01:00
Juliusz Chroboczek 4911b7ad38 Buffer local ICE candidates.
Apparently, it is possible for an ICE candidate to be generated
before onnegotiationneeded triggers.  Avoid losing a candidate
in that case.
2020-10-30 00:35:36 +01:00
Alain Takoudjou 358cdd918d make video control buttons more visible 2020-10-29 09:55:32 +01:00
Juliusz Chroboczek 56641b8d84 Allow 1s slack for long time display. 2020-10-28 18:00:48 +01:00
Alain Takoudjou 5a526c24f6 sfu.js: fix display message time in chat box 2020-10-28 16:58:14 +01:00
Alain Takoudjou 2388dfd351 allow to disable camera on videoElement 2020-10-28 16:58:14 +01:00
Alain Takoudjou 2e0b195964 fix resizing when we have only 2 videos 2020-10-28 16:58:14 +01:00
Alain Takoudjou 31deef47f5 fix video resizing, add a button to close chat 2020-10-28 16:58:14 +01:00
Alain Takoudjou fc152d4377 allow to hide chat, improve settings bar and others 2020-10-28 16:58:14 +01:00
Alain Takoudjou fa694e67bf improve html interface, add custom controls for video 2020-10-28 16:58:14 +01:00
Juliusz Chroboczek 69540e23af Allow anonymous users to chat. 2020-10-08 15:19:29 +02:00
Juliusz Chroboczek 2b4372ad87 Sort usernames case-insensitively in user interface. 2020-10-08 15:11:52 +02:00
Juliusz Chroboczek 179b57a986 Display destination in private messages. 2020-10-05 20:48:44 +02:00
Juliusz Chroboczek 66dd71678e Implement private messages. 2020-10-01 16:59:09 +02:00
Juliusz Chroboczek 3bd9a1db4e Timestamp chat messages. 2020-09-30 00:54:12 +02:00
Juliusz Chroboczek 480922268e Some more tweaks to JS typing. 2020-09-29 18:16:54 +02:00
Juliusz Chroboczek 8399ee2c4a Implement group description. 2020-09-24 22:03:41 +02:00
Juliusz Chroboczek 6a4784da44 Hide share button if getDisplayMedia doesn't exist. 2020-09-23 21:53:59 +02:00
Juliusz Chroboczek 2e63c0f305 Error handling when attempting chat on closed connection. 2020-09-23 21:53:59 +02:00
Juliusz Chroboczek 667412e6ae Implement /set command. 2020-09-23 21:53:59 +02:00
Juliusz Chroboczek 0aa77441bd Improve typing of javascript code.
We now enable typing of sfu.js.
2020-09-20 17:25:41 +02:00