Commit Graph

43235 Commits

Author SHA1 Message Date
Anton Georgiev
0cb406a846
Merge pull request #21478 from germanocaumo/bbb-breakout-room-permissions
feat: allow parent room moderators to kick other users in breakouts
2024-10-22 12:01:37 -04:00
germanocaumo
1d29ec156f chore(docs): add bbb_parent_room_moderator to docs 2024-10-22 12:55:01 -03:00
Anton Georgiev
5788731745
Merge pull request #21211 from Arthurk12/sdk/issue/112
fix(plugins): unmount extensible areas
2024-10-22 10:14:24 -04:00
Anton Georgiev
78550a07dc
Merge pull request #21489 from prlanzarin/u30/fix/audio-overlapping-join
fix(audio): clear input device IDs if getUserMedia fails, +
2024-10-22 10:11:58 -04:00
Átila
a017cc239e
fix(dark-logo): darkreader changes are propagated to the user list (#21421) 2024-10-22 10:22:42 -03:00
KDSBrowne
8705ae52a9
only show hide toolbar to presenter and users with access to wb (#21484) 2024-10-22 09:26:08 -03:00
Arthurk12
7d9c6ee691 Merge remote-tracking branch 'bigbluebutton/v3.0.x-release' into sdk/issue/112 2024-10-21 16:29:00 -03:00
prlanzarin
c2161b9a14 fix(audio): clear input device IDs if getUserMedia fails
Stored input device IDs are not cleaned up whenever getUserMedia fails
with `NotFoundError` (i.e.: device not found). This causes a couple of
issues whenever skipEchoIfPreviousDevice is enabled:
  - An unnecessary error screen if the user retries audio from scratch
    (it should just go straight to the audio settings modal)
  - A retry loop if no other devices are present in the system

Guarantee that stored input device IDs are cleared up whenever
getUserMedia fails with error name `NotFoundError`. This both the retry
loop and the unnecessary error screen.
2024-10-21 19:22:54 +00:00
prlanzarin
d0ad8afe64 fix(audio): prevent overlapping sessions from gUM-induced timeouts
`getUserMedia` is called by each audio bridge if it hasn't been
triggered during pre-flight screens. This ties gUM to the bridge's
negotiation timers and audio-manager's activation tracking, leading to
two issues:
  - A gUM prompt left unanswered for over 30 seconds can cause an
    incorrect 1010 (negotiation timeout) audio error.
  - If `retryThroughRelay: true`, and a joinAudio timeout occurs due to an
    unanswered gUM prompt, but the user responds while the system retries
    the connection, it can create overlapping audio sessions, resulting in
    mute state inconsistencies when `muteOnStart: true`.

This commit addresses these issues by moving gUM handling to the
audio-manager before any bridge action. This removes gUM from the
negotiation timeout trackers, ensuring that gUM errors are treated as
browser API errors (as expected).

Additionally, audio activation tracking in audio-manager has been updated
to exclude gUM times. Initially, gUM was included to catch unintended
browser-related gUM timeouts (e.g., Chrome bugs), but this skewed the
metric intended for tracking *negotiation times*. With this change,
`secondsToActivateAudio` will now focus solely on negotiation.
2024-10-21 19:19:49 +00:00
Guilherme Pereira Leme
060aa384c3
feat(plugin): Add possible way of updating a component without changing it completely (#21476) 2024-10-21 15:11:10 -03:00
André Castro
5c85b0a4d4
Fix/mobile breakouts: Clicking one user would select another user (#21351) 2024-10-21 14:51:43 -03:00
Guilherme Pereira Leme
a9e0e872b1
feat(akka): Plugin Js relative entrypoint and refactor of pluginManifests parameter (#21485)
* [js-relative-endpoint-refactors] - Added relative js entrypoint - just the name and extension

* [js-relative-endpoint-refactors] - Changes name and references of  to  and adapt all the rest.

* [js-relative-endpoint-refactors] changes in review
2024-10-21 11:27:31 -04:00
Arthurk12
a9f33ab460 chore: updtae SDK version to 0.0.65
Updates SDK to v0.0.65
2024-10-21 12:11:55 -03:00
prlanzarin
a07e319e90 fix(audio): check error codes before retrying on start failure
The check for whether an error code is deemed "retryable" in
sfu-audio-bridge's joinAudio code is reversed - which may cause
unwarranted audio retries on join failures.
Since only one of the retry points is broken, this is a rare issue.
For end users, the visible behavior is a duplicate error alert
since non-retryable errors are likely to fail again in subsequent
attempts

Fix the check to properly skip audio retries if the error is not
retryable.
2024-10-21 14:43:12 +00:00
Guilherme Pereira Leme
873b590e91
chore(html5): Add stack trace to better investigate error in webcam background (#21444)
* [add-stack-trace] - Add stack trace to better investigate error

* Update bigbluebutton-html5/imports/ui/components/video-preview/component.jsx

---------

Co-authored-by: Tiago Jacobs <tiago.jacobs@gmail.com>
2024-10-21 09:44:51 -04:00
dependabot[bot]
72e57392f3
build(deps): bump the npm_and_yarn group across 5 directories with 4 updates (#21426)
Bumps the npm_and_yarn group with 3 updates in the /bbb-graphql-actions directory: [cookie](https://github.com/jshttp/cookie), [express](https://github.com/expressjs/express) and [path-to-regexp](https://github.com/pillarjs/path-to-regexp).
Bumps the npm_and_yarn group with 2 updates in the /bbb-graphql-client-test directory: [cookie](https://github.com/jshttp/cookie) and [express](https://github.com/expressjs/express).
Bumps the npm_and_yarn group with 2 updates in the /bbb-learning-dashboard directory: [cookie](https://github.com/jshttp/cookie) and [express](https://github.com/expressjs/express).
Bumps the npm_and_yarn group with 3 updates in the /bigbluebutton-html5 directory: [cookie](https://github.com/jshttp/cookie), [express](https://github.com/expressjs/express) and [postcss](https://github.com/postcss/postcss).
Bumps the npm_and_yarn group with 2 updates in the /docs directory: [cookie](https://github.com/jshttp/cookie) and [express](https://github.com/expressjs/express).


Updates `cookie` from 0.6.0 to 0.7.1
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Commits](https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.1)

Updates `express` from 5.0.0 to 5.0.1
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/v5.0.0...5.0.1)

Updates `path-to-regexp` from 8.1.0 to 8.2.0
- [Release notes](https://github.com/pillarjs/path-to-regexp/releases)
- [Changelog](https://github.com/pillarjs/path-to-regexp/blob/master/History.md)
- [Commits](https://github.com/pillarjs/path-to-regexp/compare/v8.1.0...v8.2.0)

Updates `cookie` from 0.6.0 to 0.7.1
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Commits](https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.1)

Updates `express` from 4.21.0 to 4.21.1
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/v5.0.0...5.0.1)

Updates `cookie` from 0.6.0 to 0.7.1
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Commits](https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.1)

Updates `express` from 4.21.0 to 4.21.1
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/v5.0.0...5.0.1)

Updates `cookie` from 0.6.0 to 0.7.1
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Commits](https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.1)

Updates `express` from 4.21.0 to 4.21.1
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/v5.0.0...5.0.1)

Updates `postcss` from 8.4.45 to 8.4.47
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.45...8.4.47)

Updates `cookie` from 0.6.0 to 0.7.1
- [Release notes](https://github.com/jshttp/cookie/releases)
- [Commits](https://github.com/jshttp/cookie/compare/v0.6.0...v0.7.1)

Updates `express` from 4.21.0 to 4.21.1
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/v5.0.0...5.0.1)

---
updated-dependencies:
- dependency-name: cookie
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: express
  dependency-type: direct:production
  dependency-group: npm_and_yarn
- dependency-name: path-to-regexp
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: cookie
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: express
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: cookie
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: express
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: cookie
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: express
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: postcss
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: cookie
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: express
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-21 08:57:28 -04:00
Anton Georgiev
064102daea
fix: Adjust string for session ending (#21402) 2024-10-21 08:34:06 -03:00
Gustavo Trott
301e2998ae
fix (gql-middleware): Fix memory leaks (#21479) 2024-10-18 20:04:21 -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
Max Franke
17c5f01e52 fix(breakout-room): allow remove user
This commit follows the UI behavior.
Remove constraint for actions in breakouts on akka
This partially reverts 1218b8b610
2024-10-18 13:52:42 -03:00
Pedro Beschorner Marin
9268e4c1a5 Kick users from breakout rooms
Parent room's moderators are able to kick users from breakout rooms.

Included a new userdata `userdata-bbb_parent_room_moderator` so akka-apps can
signal the HTML5 client that the user had a moderator role when the breakout room
was created. This user will have an extra permission inside the breakout room where
he/she will be able to kick other users out.
2024-10-18 13:52:36 -03:00
Pedro Beschorner Marin
235020924f Avatar URL in breakout room join
Since we started using images as user's avatar this was missing. Now akka-apps
will add the user's avatarURL along with the join API URL's params generated
for each user.
2024-10-18 13:52:29 -03:00
Ramón Souza
c8aac3f6e4
Merge pull request #21367 from hiroshisuga/patch-12
[3.0.0b2] Fix Hindi locale
2024-10-18 13:18:46 -03:00
Ramón Souza
9001a7102b
Merge pull request #21465 from germanocaumo/fix-meeting-metadata
fix(client): convert meeting metadata to expected format
2024-10-18 10:37:00 -03:00
Ramón Souza
5dbe083730
Merge pull request #21472 from ramonlsouza/adjust-raise-hand
style: adjust raise hand icon position
2024-10-18 09:13:37 -03:00
Ramón Souza
3f4d5bda76 adjust raise hand icon position 2024-10-17 16:35:51 -03:00
Ramón Souza
225f69a08d
Merge pull request #21370 from germanocaumo/fit-to-width-zoom-fixes
fix(whiteboard): fit to width and zoom misc fixes
2024-10-17 15:37:32 -03:00
Ramón Souza
e945a86f47
Merge pull request #21430 from JoVictorNunes/new-chat-ui-30
styles(chat): a new chat UI
2024-10-17 15:08:45 -03:00
João Victor
0f20eb936b fix(chat): Do not highlight messages that does not have toolbar 2024-10-17 14:28:20 -03:00
João Victor
4725e64229 fix(chat): Reset both editing and replying states after sending an message 2024-10-17 13:39:51 -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
ad5b19e03e style(chat): Replied message and reply preview with white background 2024-10-17 13:39:51 -03:00
João Victor
fdb0805805 fix(chat): Canceling a reply intention not working 2024-10-17 13:39:50 -03:00
João Victor
825951f963 fix(chat): Adjust away message localization 2024-10-17 13:39:50 -03:00
João Victor
621c1ad0bf style(chat): Add background color to message content 2024-10-17 13:39:50 -03:00
Ramón Souza
d1ee773564
Update bigbluebutton-html5/imports/ui/components/chat/chat-graphql/chat-message-list/page/chat-message/message-toolbar/component.tsx
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2024-10-17 10:31:41 -03:00
germanocaumo
b74d791105 fix(client): convert meeting metadata to expected format
The metadata is comming from server with { name: metaname, value: metavalue }, which is not compatible with
getFromMeetingSettings, so it's not reading corretly.
Convert it before storing.
2024-10-17 10:25:05 -03:00
João Victor
6602b8469f Merge branch 'v3.0.x-release' into new-chat-ui-30 2024-10-17 09:09:34 -03:00
João Victor
e3fc7e713c test(chat): Adjust notification message selector 2024-10-17 09:04:29 -03:00
João Victor Nunes
83514efe58 styles(chat): a new chat UI 2024-10-17 09:03:33 -03:00
João Victor Nunes
f895266eb0
fix(external-video): Video file sharing is broken (#21448)
- Avoids calling seekTo before the onStart event. In such case, React Player remounts the player, triggering a new onReady event, which was causing an infinite loop.
2024-10-16 16:10:27 -03:00
Tainan Felipe
f91903945d
Remove: Remove stack trace and error code from error screen (#21450) 2024-10-16 16:02:53 -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
Tiago Jacobs
51c763dfc0
Merge pull request #21457 from gustavotrott/gql-list-of-users-have-connected
feat (gql-server): Introduces graphql Type `user_presenceLog` to indicate users that have joined
2024-10-16 12:05:44 -03:00
Gustavo Trott
4628ffb0a6 Introduces graphql Type user_presenceLog to indicate users that have joined in the meeting at some point.
subscription {
  user_presenceLog {
    extId
    userId
    currentlyInMeeting
    isModerator
  }
}

It is necessary to provide for the teacher the list of presence even after some users left.
2024-10-16 10:37:14 -03:00
André Castro
dfd3e252b0
style(nav-bar/recording-indicator): Refactor padding in RecordingStatusViewOnly for consistent spacing. (#21454)
* style(nav-bar/recording-indicator): Refactor padding in `RecordingStatusViewOnly` for consistent spacing.

* TS fix
2024-10-16 09:55:38 -03:00
Gustavo Trott
3f22a22067
Merge pull request #21449 from GuiLeme/regex-meta-param-plugin
fix(common-web): Make plugin manifest accept "-" character for placeholders
2024-10-15 17:42:44 -03:00
Guilherme Pereira Leme
338b199009
Update bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java
escape characters to clarify that they are not special characters.

Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
2024-10-15 17:33:15 -03:00
Guilherme Leme
14fdfad7be [regex-meta-param-plugin] - changed regex in meta-parameter in plugins to handle case of '-' caracter 2024-10-15 17:09:50 -03:00