Commit Graph

630 Commits

Author SHA1 Message Date
Anton Georgiev
064102daea
fix: Adjust string for session ending (#21402) 2024-10-21 08:34:06 -03:00
hiroshisuga
36c9819d24
[3.0.0 transcription] Add locales as much as possible (#21376)
* Update en.json

* Update settings.yml

* Create transcriptionLocale.ts

* Update component.tsx

* Update component.tsx

* Revert IN -> ID

Because it will be fixed in the main repository

* let -> const message

British -> GB

* Refactor audio captions messages and locales to fix issues reported by typescript code validation

---------

Co-authored-by: Ramón Souza <contato@ramonsouza.com>
2024-10-18 15:22:04 -03:00
João Victor
3f52a58335 fix(chat): Add ability to cancel an editing by clicking on the warning message 2024-10-17 13:39:51 -03:00
João Victor
825951f963 fix(chat): Adjust away message localization 2024-10-17 13:39:50 -03:00
João Victor Nunes
83514efe58 styles(chat): a new chat UI 2024-10-17 09:03:33 -03:00
Ramón Souza
349e04724e move set away toggle to options menu (#21447) 2024-10-16 14:13:12 -03:00
João Victor Nunes
93f82e2d90
feat(chat): message reactions (#21385)
* feat(chat): message reactions

* fix: Revert settings.yml change introduced in #21355
2024-10-16 13:33:07 -03:00
Tainan Felipe
a6c307c8b9
Add: new connection close error messages (#21392)
* Add: new connection close error messages

* Fix: TS type assertion

* Fix: Restore message description

* Add: Locale for server closed connection event
2024-10-14 21:23:58 -03:00
Joao
bc1da9b7db Merge branch 'v3.0.x-release' into chat-message-edit-and-delete 2024-10-04 11:25:39 -03:00
Joao
c47f88e3b4 fix(chat): some localization labels 2024-10-03 19:02:37 -03:00
Joao
f49e0c3a33 feat(chat): edit and delete messages 2024-10-03 18:46:59 -03:00
Paul Trudel
62e2f396cb
feat(API): Add file scanning to presentation upload (#21217)
* Add ClamAV file scanning

* Add file uploade virus message and event

* Add file virus message to front end

* Delete bigbluebutton-html5/.meteor/local/build/programs/web.browser/app/app.js

* Add error message to locale

* Fix typo in frontend error message

* Remove malicious file after detection

* Add property to enable/disable file scanning

* Create and send new message when file scanning fails

* Readd space in prop file

* Update bigbluebutton-html5/public/locales/en.json

Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>

---------

Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2024-10-03 16:30:38 -04:00
Joao
a4798695b4 feat(chat): message replies 2024-10-02 19:28:02 -03:00
Lucas
af2a24eef4
feat(screenshare): Option to show disabled screenshare button for non presenters (#21082)
* feat(screenshare): Option to show disabled screenshare button for non presenters

* Update bigbluebutton-html5/imports/ui/components/screenshare/service.js

---------

Co-authored-by: Ramón Souza <contato@ramonsouza.com>
2024-09-23 09:51:18 -03:00
Ramón Souza
323e8b73e6 lock public chat - frontend 2024-09-09 10:59:28 -03:00
Arthur B. Grossi
4626b4d7a4
feat(screenshare): add support for troubleshooting links (#21051)
* feat(screenshare): add support for troubleshooting links

Adds setting option to specify troubleshooting links to each error code
of screenshare. When a troubleshooting link for the given error exists,
the toast notification about the error is displayed with a 'Learn more'
button that when clicked leads the user to the external link. When there
is no link set for the specific error code, the button is not displayed.

* fix(screenshare): change toast type for error code 1136

Changed toast type from 'error' to 'warning' for error code 1136 when
sharing screen. This adjustment was made because error code 1136 is also
returned when the user cancels screen sharing during the tab selection
process. Displaying an error toast in this situation could cause
unnecessary alarm for users, as they were simply canceling an operation.

* fix(notification): help link button element

Uses the button element instead of a div to display the 'Learn more'
help link button.

---------

Co-authored-by: Carlos Henrique <carloshsc1998@gmail.com>
2024-09-09 08:51:34 -03:00
Arthur B. Grossi
064fd1d13c
feat(layout): Add propagate layout toggle (#21027)
* feat(layout): add propagation toggle

Transforms the 'update everyone' button in the layout modal into a
toggle, so that presenter get immediate visual feedback of the current
layout propagation setting when the modal is opened.

* fix: update propagation button locale to 'update to everyone'

* test: update layout test

---------

Co-authored-by: Anton B <antonbsa.bck@gmail.com>
2024-09-09 08:48:07 -03:00
KDSBrowne
64c9cf6a69
feat: Add Support For Audio Push To Talk (#21032)
* add push to talk

* fix setting toggle

* typescript errors
2024-08-29 11:54:27 -03:00
João Victor Nunes
d4b3f29641
fix(connection-status): add message for critical unresponsive connections (#20687) 2024-08-29 09:38:46 -03:00
Gustavo Trott
c56955c842
Merge pull request #21025 from gustavotrott/learning-dashboard-reactions
Refactor Learning Dashboard to use Reactions instead of EmojiStatus
2024-08-27 21:40:57 -03:00
Gustavo Trott
736c9a130f refactor learning dashboard to use Reactions instead of Emojis 2024-08-26 13:40:17 -03:00
prlanzarin
7fc8828c2b fix: audio settings UI adjustments
UI team suggested a few adjustments to the audio settings modal:
  - Larger (24px/1.5rem) margin between content and headers
  - Rephrasing of modal title, subtitle and volume indicator label
  - Change the "audio feedback" button to an outline or link styled
    button (there are currently two primary buttons and we want users to
    focus on the "Join audio" one)

Implement the suggested changes. The approach for the audio feedback
button is link-styled.
2024-08-23 03:05:10 +00:00
Tainan Felipe
ba32e21c0f
Add: Local history of rtt status changes (#20983)
* Change: Add local history of rtt status changes
2024-08-21 10:05:37 -03:00
prlanzarin
381718a353 fix(audio): unmute when going from "no mic" -> mic via unmute trigger, +
When going from "no mic" -> mic via the unmute action, the client isn't
unmuting itself after confirming the change. This is caused by not
waiting the liveChangeInputDevice method (which is a Promise) to be
fully executed before unmounting the AudioSettings modal -- the one
responsible for triggering the unmute. Since it unmounts before the
device is changed, the unmute action will be ignored because the device
is still "listen-only" (no mic).

Properly unmute audio when transitioning from "no mic" -> "mic" via the
unmute trigger by waiting for liveChangeInputDevice to resolve.
Additionally, some general improvements to UI/UX:
  - Display the AudioSettings modal title when gUM is on prompt mode
  - Add specific subtitles to the AudioSettings modal to 1) warn that no
    mic is selected 2) Give a hint that the user can test their devices
  - Always honor settings.yml's "initialHearingState" state (whether
    local echo feedback should be played by default in AudioSettings)
2024-08-15 03:30:18 +00:00
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
prlanzarin
325887e325 feat(audio): rework audio join without listen only
This is a rework of the audio join procedure whithout the explict listen
only separation in mind. It's supposed to be used in conjunction with
the transparent listen only feature so that the distinction between
modes is seamless with minimal server-side impact. An abridged list of
changes:
  - Let the user pick no input device when joining microphone while
    allowing them to set an input device on the fly later on
  - Give the user the option to join audio with no input device whenever
    we fail to obtain input devices, with the option to try re-enabling
    them on the fly later on
  - Add the option to open the audio settings modal (echo test et al)
    via the in-call device selection chevron
  - Rework the SFU audio bridge and its services to support
    adding/removing tracks on the fly without renegotiation
  - Rework the SFU audio bridge and its services to support a new peer
    role called "passive-sendrecv". That role is used by dupled peers
    that have no active input source on start, but might have one later
    on.
  - Remove stale PermissionsOverlay component from the audio modal
  - Rework how permission errors are detected using the Permissions API
  - Rework the local echo test so that it uses a separate media tag
    rather than the remote
  - Add new, separate dialplans that mute/hold FreeSWITCH channels on
    hold based on UA strings. This is orchestrated server-side via
    webrtc-sfu and akka-apps. The basic difference here is that channels
    now join in their desired state rather than waiting for client side
    observers to sync the state up. It also mitigates transparent listen
    only performance edge cases on multiple audio channels joining at
    the same time.

The old, decoupled listen only mode is still present in code while we
validate this new approach. To test this, transparentListenOnly
must be enabled and listen only mode must be disable on audio join so
that the user skips straight through microphone join.
2024-08-15 00:43:28 +00:00
Ramón Souza
59a2efd8f0 pass presentation to breakout - frontend 2024-08-05 10:29:42 -03:00
João Victor Nunes
5a00a85f07
fix(html5): a couple of fixes for the recording button (#20758) 2024-07-26 12:45:48 -04:00
André Möller
dc74ecfa65 Fix: [3.0] Breakout room invitation option missing from user dropdown 2024-07-23 15:21:26 -03: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
Anton Georgiev
50e3c5aa42
chore: rename meeting to session in en.json (#20743) 2024-07-22 08:50:49 -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
João Victor Nunes
1d737fbada
refactor(html5): recording start/stop modal (#20679)
* refactor(html5): recording start/stop modal

* Add suport for errors
2024-07-16 15:29:29 -03: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
Guilherme Pereira Leme
ccb2e74bc1
feat(plugin): Added sendGenericDataForLearningAnalyticsDashboard for plugins (#20628)
* [data-channel-analytics-options]  - Added data-channel analytics and record options and added a parameter options for the useDataChannel function

* Update bigbluebutton-html5/public/locales/en.json

Co-authored-by: Gustavo Trott <gustavo@trott.com.br>

* [data-channel-analytics-options] -created new sendDataAnalytics for plugin and change presentation toolbar button

* [data-channel-analytics-options]  - QUICK FIX

* [update-data-channel-function] - fix action metadata

* [data-channel-analytics-options] - changes in review

* [data-channel-analytics-options]  - changes in review

* [captionLocale] - Changes in review

* [data-channel-analytics-options]  - update SDK

* [data-channel-analytics-options]  Changes in review

* [data-channel-analytics-options] - changes in review

* [data-channel-analytics-options] - changes in review

* [data-channel-analytics-options] - changes in review

* Refactor learning dashboard json structure with genericData

* fix typo

* [data-channel-analytics-options] - changes according to new json structure

* changes in review

---------

Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
2024-07-05 16:49:45 -03: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
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
Tainan Felipe
c2364641d3
refactor: connection status for graphql connection (#20196)
* Add: connection status for graphql connection
2024-06-10 16:20:41 -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
João Victor Nunes
ab0e1da86c
improvement(webcam): refine webcam controls (#20374) 2024-06-04 14:10:16 -03:00
Gustavo Trott
b88854835c
Handling Validations and Error Reporting in bbb-graphql-actions (was in Hasura) (#20308) 2024-05-21 16:11:17 -03:00
Anton Georgiev
93e298910b
chore: Reword away, back from "away" mode 2024-05-15 06:58:27 -04:00
prlanzarin
983b8a85cf fix(audio): improve help modal for listen only scenarios
The audio troubleshooting modal has very microphone-specific strings,
which might confuse users trying to join listen only.

Review the Help screen so that listen only scenarios are more generic.
As a bonus, review the unknownError locale with a more actionable text.
2024-05-03 21:41:06 +00: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
Ramón Souza
8f93792bde Merge remote-tracking branch 'upstream/v3.0.x-release' into away-mode 2024-04-24 11:20:08 -03:00
Ramón Souza
d1bb7b685e change audio button labels based on away status 2024-04-23 15:29:11 -03:00
Ramón Souza
495fbf41a2 move away to reactions button 2024-04-23 14:56:23 -03:00
Tainan Felipe
abba1e26c6 Merge remote-tracking branch 'upstream/v3.0.x-release' into PR_19324 2024-04-17 21:51:39 -03:00