Commit Graph

916 Commits

Author SHA1 Message Date
Gustavo Trott
d018fd6490 Resolve conflicts 2023-08-16 16:24:34 -03:00
prlanzarin
8feb934169 feat(audio): add experimental transparent listen only mode
This is an initial, experimental implementation of the feature proposed in
https://github.com/bigbluebutton/bigbluebutton/issues/14021.

The intention is to phase out the explicit listen only mode with two
overarching goals:
  - Reduce UX friction and increase familiarity: the existence of a separate
  listen only mode is a source of confusion for the majority of users
  Reduce average server-side CPU usage while also making it possible for
  having full audio-only meetings.

The proof-of-concept works based on the assumption that a "many
concurrent active talkers" scenario is both rare and not useful. With
that in mind, this including two server-side triggers:
 - On microphone inactivity (currently mute action that is sustained for
   4 seconds, configurable): FreeSWITCH channels are held (which translates
   to much lower CPU usage, virtually 0%). Receiving channels are switched,
   server side, to a listening mode (SFU, mediasoup).
   * This required an extension to mediasoup two allow re-assigning producers
     to already established consumers. No re-negotiation is done.
 - On microphone activity (currently unmute action, immediate):
   FreeSWITCH channels are unheld, listening mode is deactivated and the
   mute state is updated accordingly (in this order).

This is *off by default*. It needs to be enabled in two places:
  - `/etc/bigbluebutton/bbb-webrtc-sfu/production.yml` ->
    `transparentListenOnly: true`
  - End users:
    * Server wide: `/etc/bigbluebutton/bbb-html5.yml` ->
      `public.media.transparentListenOnly: true`
    * Per user: `userdata-bbb_transparent_listen_only=true`
2023-08-07 19:43:18 -03:00
Paul Trudel
6ba58c3c86 Move size scale calculation to Postgres 2023-08-03 20:14:38 +00:00
Paul Trudel
5f9545997c Only update slide data for a single slide 2023-08-03 15:40:10 +00:00
Paul Trudel
2874a41e32 Removed slideId column from presPage table 2023-08-03 12:50:20 +00:00
Paul Trudel
14775e32eb Store page resize in postgres 2023-07-28 18:01:53 +00:00
Paul Trudel
8373eefdc3 Store slide position data in postgres 2023-07-27 19:10:51 +00:00
Paul Trudel
ec9deb1e67 Added podId, width, and height, columns to postgres 2023-07-26 13:53:15 +00:00
Gustavo Trott
185e48d36c Merge remote-tracking branch 'upstream/v2.7.x-release' into develop 2023-07-21 17:17:52 -03:00
Gustavo Trott
762ae78814 Implements func to Clear all users reaction 2023-07-21 11:10:10 -03:00
Gustavo Trott
a7cd1c5232 Merge 2.7 into Develop 2023-06-29 16:27:10 -03:00
Gustavo Trott
c8867fadb5
Merge pull request #18197 from Scroody/I-18127
Allow dynamic control on moderators invitation for breakouts
2023-06-29 13:39:26 -03:00
Gustavo Trott
5681e88c60 Merge 2.7 into Develop 2023-06-26 17:21:01 -03:00
Ramón Souza
af670883c1 remove unused code 2023-06-22 15:35:40 -03:00
Ramón Souza
ae1e6079e1 rename includeMods -> sendInviteToModerators 2023-06-22 13:55:23 -03:00
Gustavo Trott
6ba4aad05a
Merge branch 'v2.7.x-release' into user-raiseHand-away-flags 2023-06-22 08:27:20 -03:00
Anton Georgiev
43b96b47c4
Merge pull request #17724 from lfzawacki/v2.7.x-release
feat: Implement automatic closed captions using an open transcription server
2023-06-22 05:25:14 -04:00
Ramón Souza
56d16f0330 back-end part 2023-06-21 16:47:28 -03:00
Paul Trudel
2d737aa0ef Change target to release for java 17 2023-06-12 21:15:33 +00:00
Gustavo Trott
22a2c8ce7c Merge remote-tracking branch 'upstream/v2.7.x-release' into graphql-timer 2023-06-12 10:06:22 -03:00
Anton Georgiev
c8b0437df3
Merge pull request #18133 from GuiLeme/port-timer-with-events-suggestions
feat(timer): Port timer (Mconf) with events suggestions
2023-06-08 15:56:10 -04:00
Gustavo Trott
8263dd17ca Introduces flags user.away and user.raiseHand 2023-06-07 22:10:07 -03:00
Ramón Souza
22b02ead28 Merge remote-tracking branch 'upstream/v2.7.x-release' into 16120 2023-06-06 08:45:29 -03:00
Anton Georgiev
70b3220f41 Merge branch 'v2.7.x-release' of github.com:bigbluebutton/bigbluebutton into june5-27 2023-06-05 17:09:35 -04:00
Anton Georgiev
748c7a4a0b Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into june227 2023-06-02 09:45:34 -04:00
Arthurk12
1431e76bfe feat(timer): add fields to the activate message
Adds fields(stopwatch, running, time, accumulated, track) to the
activate timer message response in order to be able to log them in the
events.xml file.
2023-06-02 09:12:43 -03:00
prlanzarin
4d1aa87a88 feat: only record media while meeting is being actively recorded
Only record media (microphone, webcams and screens) while meeting is
being actively recorded (ie an user has enabled recording in the
conference). If the conference's recording is paused, media capture will
stop as well (with appropriate recording events).

A bigbluebutton.properties/API#create parameter called
`recordFullDurationMedia` is added to control this behavior. The default
is false (only capture while recording is active). Setting it to `true`
enables the current (legacy) behavior: always capture media if the
meeting's `recorded` prop is true.
2023-05-31 16:36:11 -03:00
Gustavo Trott
51bdcededc Merge 2.7 into develop 2023-05-26 10:50:39 -03:00
Paulo Lanzarin
5447666c15
Merge branch 'v2.7.x-release' into port-timer 2023-05-26 10:33:38 -03:00
Paulo Lanzarin
171c7a6587
Merge branch 'v2.7.x-release' into v2.7.x-release 2023-05-26 09:27:14 -03:00
Anton Georgiev
4948731fe7
Merge pull request #17764 from lfzawacki/reactions-port
feat: Port Mconf Reactions into BBB 2.7
2023-05-26 08:05:02 -04:00
Anton Georgiev
1a1f442d5a
Merge pull request #17746 from Carloshsc/port-present-webcam-27
feat(camera as content): present webcam
2023-05-26 08:01:40 -04:00
prlanzarin
7c77fc7433 Merge remote-tracking branch 'origin/v2.7.x-release' into reactions-port 2023-05-25 19:54:01 -03:00
Arthurk12
196d2c1e0a feat(reactions): sync expiration with akka
Currently, the reactions are cleared on mongo based on the expire time.
So to sync its state with akka, an observer is atattched to the user
reactions collection and whenever a reaction is removed because of the
expiration time, akka is notified with message 'UserReactionTimeExpiredCmdMsg'.
2023-05-25 17:32:27 -03:00
Arthurk12
3efdbd9012 feat(reactions): add akka messages to clear all emojis status
Adds two new messages which clear the users emoji statuses. This messages
enables this task to be done in a single call, instead of triggering one
method call for each user.
'ClearAllUsersEmojiCmdMsg' is sent from meteor to akka and updates all the
emoji states in the users model.
'ClearedAllUsersEmojiEvtMsg' is sent from akka to meteor. This triggers the
 mongo collection update.
2023-05-24 10:49:42 -03:00
Arthurk12
f13217607e feat(timer): add model and messages to akka apps
This commit makes the messages of the timer feature to be proxied by
akka-apps and also adds a timer model that is updated based on these
messages.
Moving the timer panel opening logic to the timer button component in
the navigation panel was a consequence of these changes.
2023-05-18 15:29:42 -03:00
GuiLeme
1b26302745 [issue-17531] - merge upstream/v2.7.x-release 2023-05-16 15:30:15 -03:00
Gustavo Trott
e5f31e2f0b Add user customParameters to graphql 2023-05-15 17:21:36 -03:00
GuiLeme
89eafc6315 [issue-17531] - changes in review 2023-05-12 12:40:07 -03:00
GuiLeme
4c2806a018 [issue-17531] - changes in review and ES-lint fixes 2023-05-11 18:06:48 -03:00
Arthurk12
e902f2ee27 feat(screenshare): add contentType field
This commit adds a contentType field in the back-end components of the
screenshare feature in order to accomodate the new 'camera as content'
feature.
2023-05-09 17:21:47 -03:00
GuiLeme
d2c5b33eec [issue-17839] - back-end part for hide_presentation_on_join issue 2023-05-09 12:01:55 -03:00
GuiLeme
90078aedc7 [issue-17531] - resolve conflicts with 2.7 2023-05-04 08:56:27 -03:00
GuiLeme
f03c01399f [issue-17531] - added ConvertedPresentationName to be referenced when getting the link to downloading the original file 2023-05-02 11:14:40 -03:00
Lucas Fialho Zawacki
fee6ff026a feat(captions): Use setUserSpeechLocale as an akka event and catch it in the transcription manager 2023-04-25 09:54:34 -03:00
Lucas Fialho Zawacki
6979432c36 feat(transcription): Server side open source transcriptions 2023-04-24 18:23:34 -03:00
Gustavo Trott
768c4224a1 Resolve conflicts with 2.7 upstream 2023-04-24 18:02:06 -03:00
Gustavo Trott
d19d286811 Adds prop color for voiceUsers create msgs 2023-04-19 12:16:35 -03:00
GuiLeme
90bbb10de6 [issue-17531] - insert tag besides the presentation's name 2023-04-17 09:04:58 -03:00
Gustavo Trott
e3a2e4b01a Store sessionToken in akka-apps (in order to invalidate connections in graphql-middleware) 2023-04-14 15:48:10 -03:00