Commit Graph

233 Commits

Author SHA1 Message Date
Gustavo Trott
de4688bcdc Implement new param disabledFeatures 2022-02-07 10:22:52 -03:00
Ramón Souza
16cd3c4ebb Merge remote-tracking branch 'upstream/v2.4.x-release' into dev-24-0125 2022-01-25 16:56:52 +00:00
Pedro Beschorner Marin
810deb907b refactor(etherpad): access control et al.
Move all Etherpad's access control from Meteor to a separated [Node application](https://github.com/bigbluebutton/bbb-pads).
This new app uses [Etherpad's API](https://etherpad.org/doc/v1.8.4/#index_overview)
to create groups and manage session tokens for users to access them. Each group
represents one distinct pad at the html5 client.

- Removed locked users' access to pads: replaced readOnly pad's access with a new pad's content sharing routine
- Pad's access is now controlled by [Etherpad's API](https://etherpad.org/doc/v1.8.4/#index_overview)
- Closed captions edited content now reflects at it's live feedback
- Improved closed caption's dictation mode live feedback
- Moved all Etherpad's API control from Meteor to a separated [app](https://github.com/bigbluebutton/bbb-pads)
- Included access control both in akka-apps and bbb-pads
2022-01-21 16:56:01 -03:00
Gustavo Trott
7d55cac005 Implements virtualBackgroundsDisabled param to API /create 2022-01-12 18:21:58 -03:00
Ramón Souza
f6e65f58c5 merge 2.4 into develop and resolve conflicts - partial 2022-01-12 16:40:45 +00:00
prlanzarin
21c124b854 feat(webcams): server-side logic to allow moderators to close user's webcams
Includes a new create param/web conf called allowModsToEjectCameras, false by
default.

Ejection does not work in breakout rooms or with non-mod users

Ejection closes _all_ webcams shared by the target user
2021-12-13 19:49:41 +00:00
Ramón Souza
d1c516fef6 resolve html5 conflicts 2021-12-10 21:07:35 +00:00
Anton Georgiev
797fc49633 TEMP 2021-12-09 20:37:05 +00:00
hiroshisuga
0bc62f66f4
Feat(meeting): minimise sequential user pick (#13831)
Updating random user picker to reduce the probability that the exact same viewers would be selected first in successive random-pick runs
2021-12-07 12:36:34 -05:00
Gustavo Trott
8555187df3 Resolve conflicts with Develop branch 2021-11-11 14:02:03 -03:00
Gustavo Trott
e919e24b38 Auto assign breakout names and users using lastBreakout or groups 2021-11-11 10:10:31 -03:00
Bohdan Zhemelinskyi
d5c80fc060 Improvement based on comments 2021-11-04 15:16:47 +00:00
Bohdan Zhemelinskyi
a20ee430ed Improvements based on sonar cloud feedback 2021-11-03 19:16:55 +00:00
Bohdan Zhemelinskyi
7ae476af3d Stabilized rndom user select(commented) 2021-10-27 19:17:21 +00:00
Bohdan Zhemelinskyi
bb0ee66977 Stabilized rndom user select 2021-10-27 18:47:48 +00:00
Gustavo Trott
cd15f17394 Refactor all references for activity-report renaming to learning-dashboard 2021-08-25 11:38:35 -03:00
Gustavo Trott
e4ef1582f2
Merge branch 'develop' into activity-report 2021-07-22 11:33:47 -03:00
Gustavo Trott
3c6155a73e Creates config activityReportTracking to enable Activity Report 2021-07-22 11:09:44 -03:00
Joao Siebel
8462465a5f Allow default layout config in bbb-web. close #12668 2021-07-19 11:02:58 -03:00
Gustavo Trott
45d4c310c2 Merge branch 'develop' into activity-report 2021-07-13 11:12:45 -03:00
Ramon Souza
604ae9cf6f change default layout to smart 2021-07-13 09:25:53 -03:00
Gustavo Trott
0417cbb03f Adds Activity Dashboard initial version and generate activityReportAccessToken 2021-06-30 00:01:46 -03:00
Ramon Souza
ae49d7a9c6 remove layoutManager from meeting collection 2021-06-22 09:48:48 -03:00
Anton Georgiev
0c0eb8a4d5
Merge pull request #12548 from ramonlsouza/layout-meeting-collection
feat: layout manager in meeting collection
2021-06-18 18:03:19 -04:00
Ramon Souza
381207cb5a set legacy as default layout manager 2021-06-18 17:05:29 -03:00
Pedro Beschorner Marin
068b82b1fa refactor(connection status): remove legacy monitor
Remove parts of a previous connection monitor.

To add some context (as far as my memory goes) to the multiple connection
monitor features the product has, `stats` (currently named `connection status`)
was introduced at the Flash client back in ~2016. @fcecagno and I did it
as a BigBlueButton's Summit activity. Our work was squashed into a single
commit in 92554f8b3e :).

I'm not sure about the whole story behind `network information` (the late
connection monitor added to the HTML5 client) but I assume it should work
as a collector for a bunch of different connectivity monitors. I remember
when it was introduced but I don't know why it wasn't adopted. My best guess
would be because of some performance issues the `user list` had back then.

To follow on why `connection status` replaced `network information` at the
HTML5 client, when I did the `multiple webcams` feature I had to refactor
a big chunk of the `video provider` (#8374). Something that wasn't really
helping there was the adaptation of `stats` that was made to show local
feedback for each webcam connection. Although this feature wasn't being
used anymore, `network information` did rely on that to build up data. With
this monitor gone I assumed it was my responsibility to provide an alternative
so I promoted Mconf's port of the Flash `stats` monitor to BigBlueButton's
HTML5 client (#8579).

Well, that's my perspective on how things went for those features. If
anyone would like to correct me on something or add something else on
that history I would appreciate to know.
2021-06-13 14:02:46 -03:00
Ramon Souza
da924234d3 store layout manager in meeting collection 2021-06-09 15:30:08 -03:00
Ramon Souza
1ac3767ed4 store layout type in meeting collection 2021-06-09 14:08:11 -03:00
Max Franke
7f926edfcc refactor(external videos): add own collection
Refactor the external videos collection, moving the logic and functionalities
outside of /imports/api/meetings to a new location in /external-videos/server/modifiers
in order to decrease the coupling between the functionalities, favoring
the maintenance.
2021-06-02 12:50:40 -03:00
Gustavo Trott
00240c925e Implements endWhenNoModerator 2021-05-17 17:52:59 -03:00
hiroshisuga
4db28a2824
Fancy random viewer selection (#11297)
* Revert "Delete bbb-icons-ori.woff"

This reverts commit 84937a0d07.

* Revert "Add files via upload"

This reverts commit 391434445a.

* Revert "Delete bbb-icons.woff"

This reverts commit 7c245c666d.

* Revert "Add files via upload"

This reverts commit 6f8c764c4b.

* Revert "Delete tmp.woff"

This reverts commit 5141e65359.

* Revert "Add files via upload"

This reverts commit c8f7b17b04.

* Revert "Create tmp.woff"

This reverts commit 73c4506594.

* Revert "Delete bbb-icons.woff"

This reverts commit 9d01d58527.

* Revert "Revert "Delete bbb-icons.woff""

This reverts commit d221d290cd.

* Revert "Revert "Revert "Delete bbb-icons.woff"""

This reverts commit c415ff02d1.

* Revert "Revert "Delete bbb-icons.woff""

This reverts commit d221d290cd.

* Revert "Revert "Create tmp.woff""

This reverts commit 267dc412d5.

* Revert "Delete bbb-icons-ori.woff"

This reverts commit 84937a0d07.

* Revert "Delete bbb-icons.woff"

This reverts commit 7c245c666d.

* Revert "Add files via upload"

This reverts commit 6f8c764c4b.

* Revert "Add files via upload"

This reverts commit c8f7b17b04.

* Revert "Create tmp.woff"

This reverts commit 73c4506594.

* Revert "Delete bbb-icons.woff"

This reverts commit 9d01d58527.

* Revert "Revert "Delete bbb-icons.woff""

This reverts commit 64a48f2bd6.

* Revert "Revert "Revert "Delete bbb-icons.woff"""

This reverts commit 9d1b4a068a.

* Revert "Revert "Revert "Revert "Delete bbb-icons.woff""""

This reverts commit b60491d933.

* Revert "Revert "Revert "Revert "Revert "Delete bbb-icons.woff"""""

This reverts commit 16e357091d.

* Revert "Revert "Revert "Revert "Revert "Revert "Delete bbb-icons.woff""""""

This reverts commit e0b70f2055.

* Revert "Revert "Revert "Revert "Revert "Revert "Revert "Delete bbb-icons.woff"""""""

This reverts commit 7b1bde97ed.

* Update UsersMgs.scala

* Update selectRandomViewer.js

* Update clearRandomlySelectedUser.js

* Update addMeeting.js

* Update updateRandomViewer.js

* Update component.jsx

* Update container.jsx

* Update component.jsx

* Update container.jsx

* Update styles.scss

* Update en.json

* Update SelectRandomViewerReqMsgHdlr.scala

* code simplification

* in case only one person to be selected

* Update en.json

* Create en.json

* Update en.json

* Update component.jsx

* Update styles.scss

* Update en.json

* Update updateRandomViewer.js

Fix a typo

* Update component.jsx

When the presenter is moved to a viewer, in the modal of ex-presenter "somebody is selected" should be displayed. Before this modification, "somebody is the only viewer" was displayed.

* add a comment

explaining why a condition is needed.

* Update en.json

* Update en.json

* revert (due to the rename UserMgs -> UserMsgs)

* Update UsersMsgs.scala
2021-04-15 11:12:10 -04:00
Anton Georgiev
ff45cccd66 Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into apr1-merge 2021-04-01 18:11:13 +00:00
Joao Siebel
c1503a2931 Remove banned users structure and handle reasonCode in validateAuthToken 2021-03-30 10:09:25 -03:00
Pedro Beschorner Marin
1aa7685dcc Refactor Etherpad API calls
Isolate most Pad related functions and secure shared notes and closed
captions creation to only when there is a reachable Etherpad server
configured.
2021-03-29 18:35:33 -03:00
Anton Georgiev
ded205e196
Merge pull request #11722 from Tainan404/issue-11081
Add collection user persistent data
2021-03-26 08:56:41 -04:00
Pedro Beschorner Marin
0c4cf0135d Handle pad's events and Meteor's instances
Since Meteor was split in multiple process and events started to be
filtered by instances, all Etherpad's Redis events were being discarded.

Etherpad has a Redis' publisher plugin that is unaware of BigBlueButton's
existence. All the communication between them is kept simple with minimal
of internal data exchange. The concept of distincts subscribers at Meteor's
side broke part of this simplicity and, now, Etherpad has to know which
instance must receive it's messages. To provide such information I decided
to include Meteor's instance as part of the pad's id. Should look like:

 - [instanceId]padId for the shared notes
 - [instanceId]padId_cc_(locale) for the closed captions

With those changes the pad id generation made at the recording scripts had to
be re-done because there is no instance id available. Pad id is now recorded at
akka-apps and queried while archiving the shared notes.
2021-03-23 18:03:50 -03:00
Tainan Felipe
e8f4d11446 Add collection user persistent data 2021-03-19 17:12:27 -03:00
Pedro Beschorner Marin
defc33a043 Removed callback from setGuestPolicy 2021-03-12 09:22:08 -03:00
Lucas Zawacki
07b51a6bf0 Correctly set guestPolicy to not overwrite userProps 2021-03-12 09:19:53 -03:00
Pedro Beschorner Marin
af64232e45 Change guest policy 2021-03-12 09:19:22 -03:00
Pedro Beschorner Marin
17f47fa4ea
Removed callback from setGuestLobbyMessage 2021-03-10 09:09:15 -03:00
Pedro Beschorner Marin
0365018e92 Add guest lobby messages
Moderators are able to send a message to the meeting's guest lobby. This new
event reaches bbb-web and is sent to the guest user with her/his status response
while polling. All guest users that are waiting for acceptance will be able to
read this message.

enableGuestLobbyMessage is disabled by default.
2021-03-09 11:02:25 -03:00
Anton Georgiev
0b6496618c Merge branch 'develop' of github.com:amguirado73/bigbluebutton into external-video-sync-lucas 2021-02-21 11:04:39 +00:00
Anton Georgiev
b2c4244276 Merge branch 'develop' of github.com:bigbluebutton/bigbluebutton into 2.3-alpha5-with-split-meteor-roles-10349 2021-02-16 19:55:10 +00:00
Anton Georgiev
1cedc56504 process only some of CreateMeeting logic in frontends to avoid meeting duplication 2021-02-16 15:12:25 +00:00
Anton Georgiev
f43560d535 Support for backend vs frontend nodejs instances bbb-html5 2021-02-16 03:19:31 +00:00
Joao Siebel
0e79203119 Clear screenshare collection when meeting has ended while screensharing 2021-02-09 14:26:43 -03:00
Joao Siebel
7f4b2789f2 Clear screenshare collection when meeting has ended while screensharing 2021-02-09 13:44:49 -03:00
Anton Georgiev
3d78045363 Clear meeting-time-remaining collection 2021-02-09 12:44:33 -03:00
Joao Siebel
811d6d3f98 Clear guestUsers, voiceCallStates and whiteboard-multi-user collections on meeting end 2021-02-09 12:44:10 -03:00
Anton Georgiev
6b3c97037f Clear meeting-time-remaining collection 2021-02-09 11:23:51 -03:00
Joao Siebel
2eb8abcba9 Clear guestUsers, voiceCallStates and whiteboard-multi-user collections on meeting end 2021-02-09 09:30:09 -03:00
Anton Georgiev
e2e0b78d40 Merge branch 'develop' of github.com:bigbluebutton/bigbluebutton into split-meteor-roles-on-top-of-2.3-alpha6 2021-02-08 23:39:42 +00:00
Anton Georgiev
8c0f0fdd52 Split Meteor roles backend-frontend revisit 2021-02-05 17:47:46 +00:00
Pedro Beschorner Marin
0bbef12ac7 Authenticated guests feature controlled at bbb-web properties 2021-01-23 21:48:02 -03:00
Anton Georgiev
45c1ff6e40
Merge pull request #11175 from MaximKhlobystov/select-random-user
Presenter selecting a random viewer
2021-01-22 15:31:00 -05:00
Maxim Khlobystov
5238dac647 Remove callbacks from update and clear Mongo operations for randomly selecting a user 2021-01-19 01:53:13 +00:00
Anton Georgiev
c1ffced27d Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into develop 2020-12-17 21:14:29 +00:00
Joao Siebel
c5b8f30f5d Add option to generate heapdump file and improve metrics 2020-12-15 13:10:39 -03:00
Anton Georgiev
0be8773e4c Loadbalance bbb-html5 in bbb-web based on CPU 2020-12-11 21:36:06 +00:00
Anton Georgiev
244a239810 Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into 2020-12-01-merge 2020-12-01 20:02:50 +00:00
Joao Siebel
77d493792f Prevent a case where voiceUser collection was being clean for entire server 2020-11-30 17:01:41 -03:00
Joao Siebel
ccda3b3a34 WIP remove callback from update methods 2020-11-26 13:23:57 -03:00
Joao Siebel
11f1a1ac47 Merge remote-tracking branch 'upstream/v2.2.x-release' into remove-callbacks 2020-11-25 10:54:18 -03:00
Joao Siebel
a244fc1acf WIP remove callback from remove operations 2020-11-24 17:44:13 -03:00
Joao Siebel
bcc1d6c880 WIP remove callback from mongo operations 2020-11-23 10:13:46 -03:00
KDSBrowne
2f46c1fd28 Merge branch 'develop' of https://github.com/bigbluebutton/bigbluebutton into 2.3-user-rand-select 2020-11-02 16:16:29 +00:00
KDSBrowne
3e8eebdd1b move random viewer selection to akka-apps 2020-09-25 19:41:30 +00:00
Joao Siebel
b2adffa4c2 Merge remote-tracking branch 'upstream/develop' into connection-manager 2020-09-18 16:30:20 -03:00
Anton Georgiev
377dc27a8d Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into 09-16-merge 2020-09-17 14:37:28 +00:00
Joao Siebel
96bd372f15 Fix banned users log 2020-09-08 13:56:17 -03:00
Joao Siebel
2873eb2c1b Merge remote-tracking branch 'upstream/develop' into connection-manager 2020-09-01 09:08:33 -03:00
Joao Siebel
b8f42ac712 Create ClientConnections structure and auth-token-validation collection 2020-09-01 09:07:56 -03:00
Anton Georgiev
14f464087f
Merge pull request #8417 from pedrobmarin/backend-cleanup
Backend cleanup
2020-08-28 15:37:00 -04:00
KDSBrowne
e9d4f8e42c adds a select random user feature for presenter 2020-08-28 17:23:27 +00:00
root
851c2645ea Committer: Antonio Guirado <amguirado73@gmail.com>
Changes to be committed:
	new file:   akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/externalvideo/ExternalVideoApp2x.scala
	new file:   akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/externalvideo/StartExternalVideoPubMsgHdlr.scala
	new file:   akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/externalvideo/StopExternalVideoPubMsgHdlr.scala
	new file:   akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/externalvideo/UpdateExternalVideoPubMsgHdlr.scala
	modified:   akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala
	modified:   akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala
	modified:   akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/FromAkkaAppsMsgSenderActor.scala
	new file:   bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/ExternalVideoMsgs.scala
	new file:   bigbluebutton-html5/imports/api/external-videos/server/eventHandlers.js
	new file:   bigbluebutton-html5/imports/api/external-videos/server/handlers/startExternalVideo.js
	new file:   bigbluebutton-html5/imports/api/external-videos/server/handlers/stopExternalVideo.js
	new file:   bigbluebutton-html5/imports/api/external-videos/server/handlers/updateExternalVideo.js
	modified:   bigbluebutton-html5/imports/api/external-videos/server/index.js
	modified:   bigbluebutton-html5/imports/api/external-videos/server/methods.js
	modified:   bigbluebutton-html5/imports/api/external-videos/server/methods/emitExternalVideoEvent.js
	modified:   bigbluebutton-html5/imports/api/external-videos/server/methods/startWatchingExternalVideo.js
	modified:   bigbluebutton-html5/imports/api/external-videos/server/methods/stopWatchingExternalVideo.js
	new file:   bigbluebutton-html5/imports/api/external-videos/server/streamer.js
	modified:   bigbluebutton-html5/imports/api/meetings/server/handlers/meetingDestruction.js
	modified:   bigbluebutton-html5/imports/api/meetings/server/modifiers/addMeeting.js
	modified:   bigbluebutton-html5/imports/api/meetings/server/modifiers/meetingHasEnded.js
	modified:   bigbluebutton-html5/imports/api/users/server/handlers/validateAuthToken.js
	modified:   bigbluebutton-html5/imports/api/users/server/store/bannedUsers.js
	modified:   bigbluebutton-html5/imports/startup/server/index.js
	modified:   bigbluebutton-html5/imports/startup/server/redis.js
	modified:   bigbluebutton-html5/imports/ui/components/external-video-player/service.js
	modified:   bigbluebutton-html5/private/config/settings.yml
2020-08-28 12:58:55 +02:00
Anton Georgiev
5be5aed1d9 Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into merge-2020-08-12 2020-08-12 17:12:58 +00:00
Anton Georgiev
9aefa76ded allow more tags in welcome message/ mod only message 2020-08-10 16:59:09 -04:00
Anton Georgiev
0d6faa0b57 only allow for https uri in welcome and modOnly messages 2020-07-29 16:08:47 -04:00
Anton Georgiev
2c32608cd5 allow for img tag in welcome and modOnly messages 2020-07-29 15:09:15 -04:00
Anton Georgiev
1ea72ccb95 sanitize modOnlyMessage in html5 client 2020-07-29 11:31:00 -04:00
Anton Georgiev
4456a4db1f move sanitazing of welcome message to backend 2020-07-27 16:33:10 -04:00
Pedro Beschorner Marin
526f79e8f2 Merge remote-tracking branch 'bigbluebutton/v2.2.x-release' into bigbluebutton/develop 2020-06-30 18:15:18 -03:00
Anton Georgiev
0cb7759cb2
Merge pull request #9824 from jfsiebel/fix-banned-users-join-try
Prevent banned user from trying to validateAuthToken multiple times
2020-06-17 17:09:40 -04:00
Joao Siebel
45f99fed8b Prevent banned user from trying to validate auth token multiple times. close #9798 2020-06-12 13:24:11 -03:00
Joao Siebel
e3692e5321 Clear video streams collection on meeting end. close #9154 2020-06-03 13:29:44 -03:00
Anton Georgiev
ac6fd2824c
Merge branch 'develop' into 2.3-audio-stats 2020-05-26 12:36:15 -04:00
Pedro Beschorner Marin
22c8eee0c7 Connection status first commit 2020-05-14 10:32:55 -03:00
Chad Pilkey
6a4ba7a300 watch for voice call state updates instead of DTMFs in the client 2020-02-18 14:03:06 -08:00
Pedro Beschorner Marin
b11113c165 Remove meeting inactivity monitor 2019-12-11 17:11:57 -03:00
Joao Siebel
72cc05abee Merge with cursor streamer stuff 2019-10-31 19:20:46 -03:00
Joao Siebel
d5865d49db Update cursor streams logic 2019-10-24 17:49:21 -03:00
Joao Siebel
d0f0d91c01 Update annotations streams logic 2019-10-22 22:26:25 -03:00
Tainan Felipe
2ee12df878 Clear record props when the meeting ends 2019-08-27 09:53:53 -03:00
Tainan Felipe
932c5bf58c Fix nav bar performance issue and move recordProp to own collection 2019-08-21 14:42:37 -03:00
Chad Pilkey
027c28c320 add lock setting option to hide viewers from each other 2019-08-09 16:45:26 -07:00
Joao Siebel
d556661873 save settings in a collection. close #7774 2019-07-29 11:17:38 -03:00
KDSBrowne
1bccb5b660 fix webcams of other viewers lock toggle 2019-07-18 15:48:18 +00:00
Chad Pilkey
87381b240e change unsafe Users upserts to updates 2019-07-06 23:47:33 +00:00
Anton Georgiev
ac36732849
Merge branch 'master' into closed-captions-prototype 2019-05-29 11:51:45 -04:00