Commit Graph

1863 Commits

Author SHA1 Message Date
prlanzarin
120bef5cc1 refactor(audio): improve audio settings' UI
We are missing a way to select transcription languages in some
scenarios, e.g.: listenOnlyMode=false. The audio settings UI is also not
handling item disposition very well on smaller devices.

This commit does the following to improve those blind spots:
  - Add the transcription language selector to it whenever applicable
  - Add proper styling to the transcription selector
  - Handle small screens by changing the disposition of elements to
    portrait mode
  - Improve how elements are disposed to a more familiar view: Mic ->
    Activity Indicator; Speaker -> Speaker test. This is more in line
    with how other platforms do audio configuration/pre flight screens.
2024-08-15 00:43:37 +00:00
Anton Georgiev
b6b06e714e
chore: add list of supported languages for captions (#20924) 2024-08-13 14:09:09 -04:00
Ramón Souza
f150d92bde rename param 2024-08-09 11:20:58 -03:00
Ramón Souza
3907293692 add muteSpeakerIfAway config 2024-08-09 09:54:34 -03:00
Ramón Souza
8689a0d961 introduce allowUploadNewDocsInBreakouts in settings.yml 2024-08-05 10:56:10 -03:00
Anton Georgiev
c26ebf8348
fix: Remove unnecessary instanceId property in settings.yml (#20744) 2024-08-01 19:32:30 -04:00
prlanzarin
24ae746a88 fix(connection-status): jitter causes false positive critical alerts
Jitter evaluation, as an alert trigger, was changed in 3.0 to get the internal
average jitter used in the conn-status component data (which is total jitter
delay divided by jitterbuffer emit events). This was done accidentally and that
metric is _very_ different from the one used in 2.7 (point-in-time jitter from
remote-inbound-rtp/inbound-rtp, highest on the interval, gathered on
/utils/stats.js).  The alert thresholds were preserved, which makes it overly
sensitive in regards to jitter (and thus causes it to be critical whenever the
user is in audio).

Remove jitter as a connection status alert trigger, which fixes the
false positive. The implementation on <= 2.7 is also not ideal - if
anything, it generates false negatives. That's why I'm removing jitter for
the time being since it's ill-suited (at least in the way it's used)
for what we want to achieve.
2024-07-30 18:59:49 +00:00
Arthur B. Grossi
291809bff0
feat(private-chat): message read confirmation feedback (#20722)
* feat(graphql-server): add new view `v_chat_private_read_feedback`

Adds a view called `v_chat_private_read_feedback` to retrieve the last seen time
of the recipient of a private chat.

* refactor(chat): removes unused prop `lastSeenAt`

* feat(private-chat): message read confirmation feedback

Adds message read confirmation feedback feature to private chats.
This feature uses the private chat recipient's `lastSeenAt' attribute to
check which messages were read. Messages read are show in the chat with
a check icon next to it.
Feature behind a flag in settings.yml, which is disabled by default:
- `public.chat.privateMessageReadFeedback.enabled`

* fix(chat): poll chart message

Fixes poll chart message which was not using the full chat width due to
previous changes in chat messages `flex-direction`.

* fix: adds missing initial value for `privateMessageReadFeedback`

* fix: linter errors

* fix(chat): add `recipientHasSeen` property to existing view

This commit changes the way the messages read by the recipient are
tracked. The previous strategy required the client to calculate the read
messages and as a consequence all messages of the given chat
were re-rendered every time the recipient `lastSeenAt` time
changed. The current strategy consists of calculating the read messages
on the server(based on recipient `lastSeenAt`) and just expose to the
client a boolean(`recipientHasSeen`) for each message that indicates whether
it has already been read or not.

* fix: typo in message description

* fix: typo in settings flag

* fix: vertically align icon
2024-07-22 12:01:24 -04:00
Guilherme Pereira Leme
6fcb1995e9
docs: enhance readability and information availability for presentation files supported (#20741) 2024-07-19 15:32:21 -04:00
Gustavo Trott
0cf7c90663
Merge pull request #20736 from gustavotrott/remove-user_connection_auth
remove (gql-server): Removes old PG user/tabled created for Meteor auth
2024-07-19 13:40:26 -03:00
Gustavo Trott
cf0b32efff
Merge pull request #20682 from germanocaumo/skip-ecoTest-if-previous
Microphone: add option to skip echo test if session has valid input/output devices stored
2024-07-19 13:16:11 -03:00
Gustavo Trott
7e0295d0a9 Removes old PG user/tabled created for Meteor auth 2024-07-19 11:38:46 -03:00
germanocaumo
6502cfe646 refactor: rename skipCheckIfPreviousDevice to skipEchoTestIfPreviousDevice
changed userData from bbb_skip_check_if_previous_device to bbb_skip_echotest_if_previous_device
2024-07-19 11:29:38 -03:00
Guilherme Pereira Leme
a3e56171d7
fix(bbb-web and html5): removed .odi and .odc file-type supports (#20729)
* [issue-20346] - removed .odi and .odc not supported anymore by soffice files.

* [issue-20346] - changes in review

* [issue-20346] --
2024-07-19 09:21:55 -04:00
germanocaumo
cbe0b4f6ae
feat(webcams): skip video preview if valid input devices stored (#20696)
* feat(webcams): skip video preview if valid input devices stored

Additionally:

- refactor: re-use the existing VirtualBackground_* storage info instead
  of creating a new one
- fix: store background choices per deviceId instead of globally
- fix: guarantee background restore attempts are *critical* when
  video-preview is supposed to be skipped. We want the preview to be
  shown if the previous background could not be restored to preserver
  the user's privacy choice
- fix: cameras could not be shared if no previous device info was in
  the user's session
- fix: uploaded background images were not correctly restored
- fix: do not spin up virtual bg workers for brightness if it has not
  been altered by the user
- refactor: remove old video-provider background restore routine,
  centralize it in video-preview

* fix(skip-video-preview): correct storage check and add playwright test and docs

---------

Co-authored-by: prlanzarin <4529051+prlanzarin@users.noreply.github.com>
2024-07-18 16:24:10 -04:00
Gustavo Trott
c6b9ab35ae
refactor: Remove old userStatus Emoji (#20717)
* Remove old userStatus Emoji

* tweak docs

* fix bkroom errors
2024-07-18 08:58:38 -04:00
germanocaumo
eeafc22259 feat(echo-test): add skipCheckIfPreviousDevice option 2024-07-10 14:54:17 -03:00
KDSBrowne
a6f3d02f18 add configuration to disable infinite wb in breakouts 2024-07-06 17:36:21 +00:00
Anton Georgiev
abeb12146b
Merge pull request #20480 from KDSBrowne/v30-enable-whiteboard-infinite-canvas
feat(whiteboard): Add infinite whiteboard for presentation slides
2024-07-05 17:54:55 -04:00
KDSBrowne
c341ea44f8 update canvas names to whiteboard 2024-07-05 20:13:30 +00:00
Anton Georgiev
ba1f3e3a4a
commit infinite wb disabled (still experimental) 2024-07-05 15:17:01 -04:00
Tainan Felipe
0e7fe3c688
Change: improve client connection status (#20630) 2024-07-04 17:26:09 -03:00
KDSBrowne
687ee36d29 add functionality to enable infinite whiteboard 2024-07-03 17:14:47 +00:00
André Castro
9128a2dde8
Refactor: Remove the old user status (reaction/emoji) (#20455)
* Refactor: Remove the old user status (reaction/emoji)

* Update settings.yml

* test: remove old user status testing code related

---------

Co-authored-by: Anton B <antonbsa.bck@gmail.com>
2024-06-26 15:40:18 -03:00
Paulo Lanzarin
36ec3e9f24
fix(webcams): lower pageChangeDebounceTime to 1s
Webcam pagination has a timed camera negotiation debounce
after a page change is triggered. The goal is to avoid overlapping
negotiation requests on sequential page changes. That value is
configurable and set to 2.5 seconds by default, which is too
conservative for today's standards.

Lower the default pageChangeDebounceTime to 1s.
2024-06-18 16:50:17 -03:00
Lucas
9bf3f54183
feat: Initial BBB 3.0 Gladia transcriptions implementation (#20295)
* feat(html5): initial implementation of Gladia transcriptions to BBB 3.0

* fix(transcription): Add missing locales and fix invalid cc menu key

* fix(bbb-transcription-controller): Bump transcription controller to fix some bugs

* fix: adjust yq syntax for setting fs esl password in transctiption-controller

* fix(transcription): Use newer useSettings format from transcription options

* fix(captions): Correctly use captions settings

---------

Co-authored-by: João Victor <joaovictornunes973@gmail.com>
Co-authored-by: Anton Georgiev <anto.georgiev@gmail.com>
Co-authored-by: Ramón Souza <contato@ramonsouza.com>
2024-06-12 12:06:07 -04:00
André Castro
365bd27e89
Client: Updating: userdata-bbb_multi_user_tools, userdata-bbb_presenter_tools and userdata-bbb_multi_user_pen_only (#20218)
* Client: Updating: userdata-bbb_multi_user_tools, userdata-bbb_presenter_tools and userdata-bbb_multi_user_pen_only

---------

Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2024-06-07 16:13:25 -04:00
João Victor Nunes
5d3178f15d
refactor(guest-wait): turn guest wait page into a React component (#20344)
* refactor(guest-wait): turn guest wait page into a React component

* Fix rendering when the meeting is ended

* refactor(guest-wait): Backend portion for migration of `guest-wait` to Graphql

* Add message timeout

* Remove static guest wait page

---------

Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
2024-06-05 17:41:23 -03:00
prlanzarin
a3a1245078 fix(audio): review audio modal help screen
- Adds a new Help view for unknown error codes
- Correctly detect NotAllowedError (permissions) - they are currently
  being treated like unknown errors in the Help modal
- Rephrase NotAllowedError help text; make it more succint and direct
- Rephrase the unknown error help text; make it more succint and direct
  - Add error code and message to that view
- Add public.media.audioTroubleshootingLinks to allow referencing KB
  links on the Help modal
  - See inline docs
2024-05-03 20:50:03 +00:00
Anton Georgiev
205d110f5b
Merge pull request #20104 from Tainan404/remove-redis
!remove: Frontend Redis client listener
2024-05-03 09:02:08 -04:00
Anton Georgiev
7c667453ca
Merge pull request #19812 from antobinary/march15-02
fix(bbb-html5): customHeartbeat would not close stale sessions (port)
2024-04-30 09:29:46 -04:00
Tainan Felipe
e58086c99e Remove: Frontend Redis client listener 2024-04-26 11:01:50 -03:00
Tainan Felipe
6247c4dc8d Remove: meteor connection validation 2024-04-25 12:48:48 -03:00
Tainan Felipe
e6c4e06c81 Merge remote-tracking branch 'upstream/v3.0.x-release' into remove-user-info 2024-04-24 09:13:59 -03:00
Tainan Felipe
e80cc5a223 Remove: user-info collection 2024-04-23 14:38:07 -03:00
Tainan Felipe
f2c4e7348f Change: remove on/off button 2024-04-23 10:21:23 -03:00
Gustavo Trott
7a4e9f0736 Revert audioCaptions.enabled=true 2024-04-11 10:40:58 -03:00
Gustavo Trott
30a4233ed3 Provide list of available locales through settings.yml 2024-04-11 10:39:59 -03:00
Ramón Souza
f1c8ec0c77
Merge pull request #19225 from vitormateusalmeida/16068-custom-webcam-highlight-color
Adds custom color highlight option for webcam
2024-04-10 10:36:54 -03:00
João Victor Nunes
0b1249b62e
fix: limit mutation payloads to 10MB by default (#19945) 2024-04-02 13:31:43 -03:00
Tainan Felipe
e3ca2a5b3d
Merge branch 'v3.0.x-release' into remove-pick-random-user 2024-03-26 09:43:45 -03:00
Tainan Felipe
f3465827dd
Migrate meeting collection to graphql (#19853) 2024-03-26 08:57:28 -03:00
Tainan Felipe
3105bee74b Merge remote-tracking branch 'upstream/v3.0.x-release' into PR_19785 2024-03-20 11:59:45 -03:00
Anton Georgiev
ef300cf28e
chore: Fix typo (found by typos) (port) #19834
Co-authored-by: Stefan Weil <sw@weilnetz.de>
2024-03-18 09:58:53 -04:00
prlanzarin
4df5a5dd9d fix(bbb-html5): customHeartbeat would not close stale sessions, +
The [disabled by default] custom heartbeat included in Meteor's server
does not end connections when they are considered unhealthy/stale, which
deviates a bit from the default implementation. See:
https://github.com/bigbluebutton/bigbluebutton/pull/11486.

This commit includes a call to the default heartbeat termination timeout
so sockets are correctly cleaned up when the custom heartbeat is
activated. It also adds a customHeartbeatUseDataFrames config to allow
controlling whether the custom heartbeat should use WS data frames as
valid heartbeats as well - this should only be useful for
testing/debugging purposes and the default behavior (true) is
maintained.

As a side note: this change spun off from an investigation where some
problematic networks were triggering periodic client re-connects due to
the default heartbeat failing. Investigation points to the control
frames being put alongside fragmented WS data frames and the server side
failing to recognize the former - which means pong frames would be missed and
the health check would fail. Since the default heartbeat _does not_
account for data frame traffic (eg DDP payloads), it would shut down the
client's WS even though it was healthy.
The custom heartbeat _does_ account for data frames, which mitigates
that scenario and prevents unecessary reconnections.
2024-03-15 11:18:27 -04:00
Tainan Felipe
789da5c064 Refactor: Remove pick random user 2024-03-12 20:01:12 -03:00
André Castro
58a0efe708
Migrate auth and settings to graphQL (#19507) 2024-03-06 14:28:18 -03:00
Anton Georgiev
f06338f941
chore: Bump copywrite year to 2024 2024-03-05 16:13:49 -05:00
Ramón Souza
b36da8ef18 restore askForConfirmationOnLeave default value 2024-02-23 14:15:01 -03:00
André
a622ce6265 Labeless leave meeting applied and also tweaks 2024-02-06 10:12:25 -03:00