Commit Graph

1030 Commits

Author SHA1 Message Date
Guilherme Leme
322a04b845 resolve conflicts 2024-06-10 17:41:06 -03:00
Guilherme Leme
ba74a41fd2 [update-data-channel-function] - (WIP) Initial work 2024-06-10 11:32:48 -03:00
Gustavo Trott
81d30480bd
feature: Introduces API /sendChatMessage endpoint (#20323)
* feature: Introduces API /sendChatMessage endpoint

* only allow GET requests for sendChatMessage

---------

Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2024-06-06 15:49:52 -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
Guilherme Pereira Leme
bbf43f1e55
feat(html5): Added captionLocale property and related logic (#20272)
* [captionLocale] - added captionLocale

* [captionLocale] - changes in review

* [captionLocale] - Added new mutation captionAddLocale and removed captionSetOwner

* [captionLocale] - add action validation

* [captionLocale] - Changes in review

* [captionLocale] - fix update of graphql server

* [captionLocale] - merge conflicts
2024-06-03 16:14:32 -04:00
Gustavo Trott
4e2e3254e7
refactor (akka-apps): Remove unused UserJoinMeetingAfterReconnectReqMsg (#20370)
* Replace tabId by clientSessionUUID

* refactor gql-middleware to perform validations and send errors properly

* small tweaks

* fix linter errors

* refresh session variables on invalidate user connection

* set clientIsMobile on join

* Remove unused UserJoinMeetingAfterReconnectReqMsg
2024-05-30 13:18:48 -03:00
Gustavo Trott
fd3071c28a
Refactor (gql-middleware): Introduces clientSessionUUID and validations (error handling) (#20353) 2024-05-29 17:43:17 -03:00
Guilherme Leme
778375f81f [change-data-channel-return] - changes in review 2024-05-23 12:25:49 -03:00
Guilherme Leme
7b81148972 [change-data-channel-return] - Changed data-channel payloadJson to be a json instead of a string 2024-05-22 17:34:43 -03:00
Gustavo Trott
9e93f57958
Merge pull request #20274 from gustavotrott/init-timer
refactor (akks-apps): Init Timer and Remove legacy messages/handlers/fields
2024-05-15 13:25:17 -03:00
Gustavo Trott
3a8bd4dfa4 Remove unnecessary msgs and handlers 2024-05-15 10:44:25 -03:00
Gustavo Trott
65d22e3b93 rename modOnlyMessage to welcomeMsgForModerators and delete welcomeMsgTemplate 2024-05-14 09:40:51 -03:00
Anton Georgiev
58cdb75c45 refactor: remove html5InstanceId 2024-05-01 12:53:11 -04:00
Gustavo Trott
1723e9d4a8 Add new create param loginURL 2024-04-24 17:40:35 -03:00
Guilherme Pereira Leme
cfbeb92cd7
feat(plugins) - refactor format of receiving data for data-channels (#19997) 2024-04-23 18:17:32 -03:00
Gustavo Trott
97dc51e8c3 Simplify user connection status flow 2024-04-01 09:36:28 -03:00
Gustavo Trott
03ed0b7311 Merge with upstream 2024-03-27 11:37:47 -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
Gustavo Trott
c1113e5eab Remove pick random user (backend) 2024-03-19 15:13:10 -03:00
Lucas Fialho Zawacki
10aefc6017 feat(gladia): Print Gladia errors in the console 2024-03-18 11:35:46 -04:00
Lucas
4dea4b9967 feat: Initial implementation of Gladia transcriptions to BBB 2.7 (#19091)
---------

Co-authored-by: Anton Georgiev <anto.georgiev@gmail.com>
2024-03-18 10:44:56 -04: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
Gustavo Trott
ea40168ed6 Create actions for updating user connection status 2024-03-05 19:32:15 -03:00
Gustavo Trott
e4320e9f56
Introduces a ping-pong mechanism designed to verify the availability of a middleware service (#19623)
* Implements a ping-pong system to check gql-middleware-activity

* Improve clean code
2024-02-14 13:28:19 -03:00
Ramón Souza
fd9615e1b8
Merge pull request #19541 from Scroody/i-19517
Client: Presentation's chat upload message
2024-02-13 13:19:17 -03:00
Gustavo Trott
f8e008eada Define an unique ID for bbb-graphql-middleware 2024-02-12 17:11:30 -03:00
André
0715337257 Variable name swapping and requested changes 2024-02-05 11:18:31 -03:00
Guilherme Leme
bb07edd34e [i-19517] - refactor 2024-02-02 11:25:13 -03:00
Guilherme Leme
b8ce51a372 [i-19517] - WIP flow to send presentation's name to chat download 2024-02-02 10:49:55 -03:00
André
5047d75245 WIP 2024-02-01 16:46:15 -03:00
Gustavo Trott
cd03c116b0 Add configs from /enter to Graphql 2024-01-24 11:33:38 -03:00
Gustavo Trott
f4e5803b15 Makes timer.accumulated be calculated on the backend 2024-01-19 13:36:20 -03:00
Gustavo Trott
5118d1f68b Add actions to delete/reset plugin data channel 2024-01-18 23:31:06 -03:00
Gustavo Trott
de9221be23 Fix and Refactor moderatorChatEmphasize 2024-01-10 10:53:29 -03:00
Gustavo Trott
095085310d
refactor: Graphql middleware enhancements (#19336)
* Convert all go chan to SafeChannel

* Remove unnecessary comments

* Refactor graphql message names

* Fix renamed function
2023-12-14 14:01:47 -03:00
Gustavo Trott
d5ea98ec12 Make guest-wait page fetch data from Hasura 2023-12-12 17:42:44 -03:00
Gustavo Trott
57197051c1 Add user actions to graphql 2023-11-30 16:41:46 -03:00
Gustavo Trott
a60a77584b
Merge pull request #19175 from gustavotrott/param-enforceLayout
feature: Add new API join param: enforceLayout
2023-11-20 17:09:20 -03:00
Gustavo Trott
9532d68bad Add new JOIN param enforceLayout 2023-11-20 11:53:53 -03:00
Gustavo Trott
33e3be0cb0 Eliminate Meteor dependency in setting up Presenter In Pod 2023-11-16 17:01:26 -03:00
Paul Trudel
f9f419cdf1
Refactor: Add chat message to Postgres when user status changes (#18980)
* Insert chat msg on use status change

* Insert system message for user status change

* Close pres file resources

* Remove unused code

* Remove trailing whitespace

* Remove more trailing whitespace

* Use frontend message

* Send user name and add validation

* Fix js errors

* Modify user validation for sending away msg
2023-11-14 10:47:09 -03:00
Gustavo Trott
6a10a27f2a
graphql: Provide Upload Token through Graphql (#19081)
* Provide Upload Token through Graphql

* Remove wrong file

* Rename type to pres_presentation_uploadToken

* Implements graphql-action to request an upload token
2023-11-07 13:47:44 -03:00
Gustavo Trott
8f0ecf2d63 Insert presentation on UploadTokenReq 2023-11-01 11:38:19 -03:00
Gustavo Trott
fb224428e4 refactor update Presentations on Hasura 2023-10-27 17:29:36 -03:00
Gustavo Trott
55ccf52816
graphql: Add pluginDataChannelMessage and associated back-end (#18999) 2023-10-26 11:53:41 -03:00
Paul Trudel
419eb6bf5f Store presentation content in Postgres 2023-10-16 20:05:23 +00:00
Guilherme Pereira Leme
4ef078ccf5
feature: Override client settings through API /create call (#18782)
* akka-with-client-configs

* [akka-with-client-configs] -  inserted client configs in akka

* [issue-18588-create-override] - WIP

* [akka-with-client-configs] - Remove unnecessary code

* [issue-18588] - test some thesis

* [akka-with-client-configs] - refactor to add jackson and immutable.Map

* [issue-18588-create-override] - new architecture for overriding client configs]

* [issue-18588-create-override] - implemented settings

* Refactor on clientSettingsOverride module and add allowOverrideClientSettingsOnCreateCall conf

---------

Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
2023-10-10 21:00:20 -03:00
Guilherme Pereira Leme
a8f50b107e
reafactor (akka-apps): Read and store Client Settings as property to RunningMeeting (#18712) 2023-10-02 13:00:05 -03:00
Gustavo Trott
09f3e6fae4
graphql-server: Insert client graphql connections into the database (#18875) 2023-09-29 20:05:23 -03:00
Gustavo Trott
49d60f6f88
Merge pull request #18842 from gustavotrott/graphql-bkroom-msg
refactor (graphql-server): Adds new chat msg type 'breakoutRoomModeratorMsg'
2023-09-25 12:41:02 -03:00
Gustavo Trott
afb1801695 Adds new chat msg type 'breakoutRoomModeratorMsg' 2023-09-25 12:37:05 -03:00
Paul Trudel
20890dc261 Fixed some imports 2023-09-01 20:03:39 +00:00
Paul Trudel
808a520cda Removed Akka dependencies 2023-09-01 18:13:44 +00:00
Paul Trudel
d1c8254f37 Merge branch 'develop' of github.com:bigbluebutton/bigbluebutton into akka-pekko-migration 2023-08-31 19:11:16 +00:00
Paul Trudel
90eef86bc1 Use Pekko in bbb-common-message, bbb-common-web, and akka-apps 2023-08-31 18:03:00 +00:00
Gustavo Trott
5eb04aab91 Resolve conflicts 2023-08-30 15:31:32 -03:00
Paul Trudel
225b2f2d74 Merge branch 'develop' of github.com:bigbluebutton/bigbluebutton into akka-pekko-migration 2023-08-29 12:06:56 +00:00
Gustavo Trott
5a82b4e119
Merge pull request #18540 from paultrudel/remove-add-slide-positions-msg
refactor: Remove unnecessary addSlidePositionsPubMsg
2023-08-18 15:11:14 -03:00
GuiLeme
cf472511fc [issue-18449] - changes in review 2023-08-18 10:57:50 -03:00
Paul Trudel
ee56979fa4 Use presentation svg to compute dimensions 2023-08-17 22:27:52 +00:00
Paul Trudel
f645dd2a12 Replaced Akka with Pekko in akka-fsesl 2023-08-17 14:20:50 +00:00
Gustavo Trott
d018fd6490 Resolve conflicts 2023-08-16 16:24:34 -03:00
GuiLeme
3761fc333b [plugin-architecture-implementation] - fix for disable downloadable 2023-08-16 11:18:51 -03:00
Paul Trudel
e615233ae8 Removed addSlidePositionsPubMsg 2023-08-11 18:11:18 +00:00
GuiLeme
a1746da6fe [issue-18449] - added possibility of download original presentation with original format 2023-08-10 12:18:59 -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