Commit Graph

902 Commits

Author SHA1 Message Date
Ramon Souza
a80fe263a3 move breakout room ended notification to akka 2022-04-07 09:39:32 -03:00
Joao Victor
e1453f672e Remove old UserJoinedMeeting and UserLeftMeeting notifications 2022-04-06 10:21:49 -03:00
Joao Victor
f3dc734c45 Remove old RecordingStarted and RecordingStopped notifications 2022-04-05 09:58:42 -03:00
Anton Georgiev
3d9c8d0e4c
Merge pull request #14706 from ramonlsouza/issue-14689-25
fix: setSwapLayout happens after other components change its value
2022-03-30 17:05:03 -04:00
Ramon Souza
eee4fde845 prevent setSwapLayout race condition 2022-03-30 15:43:00 -03:00
Ramon Souza
92688ca93a prevent setSwapLayout race condition 2022-03-30 15:31:19 -03:00
Paulo Lanzarin
1fc6584697
fix: remove spurious console.log in base.jsx 2022-03-29 17:52:29 -03:00
Gustavo Trott
057b7514b1 Implements disabledFeatures-chat 2022-03-09 11:19:25 -03:00
Ramón Souza
b55fb32f6e move loading-screen component to common folder 2022-02-15 14:55:08 +00:00
Ramón Souza
dba04834c7 Merge remote-tracking branch 'upstream/v2.4.x-release' into 2524-feb08 2022-02-09 15:52:42 +00:00
Joao Victor
a0434ff1e0 Change message queue concurrency to 1 2022-02-01 14:20:08 -03:00
Joao Victor
fbb807208e Undo presentation queue implementation 2022-02-01 14:18:16 -03:00
Joao Victor
914739ffc2 Add chaining operator 2022-01-28 10:18:55 -03:00
Joao Victor
da13e0aa93 Add own message queue for presentations 2022-01-28 09:59:41 -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
Ramón Souza
5e9f30b2a2 append build string to locales requests 2022-01-13 13:14:24 +00:00
Anton Georgiev
797fc49633 TEMP 2021-12-09 20:37:05 +00:00
Ramón Souza
4b1f1594b1 replace arrays in configuration override 2021-11-24 17:09:06 +00:00
KDSBrowne
e184912311 prevent properties of undefined (reading 'toUpperCase') 2021-11-22 00:55:51 +00:00
Ramón Souza
4121f61a59 restore 2.3 fullscreen 2021-11-19 19:26:04 +00:00
Mario Jr
1ee9203fad fix: enable useLocationOrigin in dynamic-import
This makes meteor to work with a reverse proxy, without changing it's
settings
2021-11-09 12:10:25 -03:00
germanocaumo
3dd679761f Merge branch 'v2.4.x-release' of https://github.com/bigbluebutton/bigbluebutton into f-h-prom-agent 2021-11-05 19:38:40 +00:00
germanocaumo
6f1e1d4f4a refactor(prom-html5): serve endpoint via meteor instead of http server +
- separate backend/frontend metrics, only add metrics related to the role
- add role and instance labels
2021-11-05 16:31:23 +00:00
Tainan Felipe
f5eef03f3f Improve data structure to not break on reconnections 2021-11-03 14:37:54 -03:00
Anton Georgiev
1622425cbc Merge branch 'develop' of github.com:bigbluebutton/bigbluebutton into 2.4-into-develop 2021-10-22 19:12:58 +00:00
prlanzarin
b677f805c1 refactor(virtual-backgrounds): move WASM binaries to public, let nginx serve them 2021-10-14 03:50:39 +00:00
Tainan Felipe
1de8e0779d Add server side reactivity to publications 2021-10-13 15:00:52 -03:00
Paulo Lanzarin
ced2b27f84 refactor: remove unused gauge in bbb-html5 metrics 2021-10-06 19:03:36 +00:00
germanocaumo
8b2fd271de feat(html5-server): add number of meteor methods metric in prometheus 2021-10-06 19:02:36 +00:00
germanocaumo
e5b012d007 refactor(html5-prom): use ES6 imports/exports 2021-10-06 18:56:55 +00:00
germanocaumo
30db4a4122 refactor(html5-prometheus): remove MCS references and change default port 2021-10-06 18:56:32 +00:00
germanocaumo
a0580431e0 feat(html5-server): add prometheus default instrumentation
Adds prometheus client to collect html5 server metrics.
Only default Node.js metrics in this initial version.

Enable via configs in private.app.prometheus
2021-10-06 18:55:19 +00:00
Anton Georgiev
ab845b3078 Merge branch 'v2.4.x-release' of github.com:bigbluebutton/bigbluebutton into merge-24-rc-1-into-dev 2021-09-22 15:28:13 +00:00
Ramon Souza
6d95cab29c prevent invisible cameras issue on page load 2021-09-16 09:25:51 -03:00
Ramon Souza
6bc8ec5782 create BaseContainer 2021-09-13 08:34:03 -03:00
Ramon Souza
098826c70a rename layout functions 2021-09-10 17:48:52 -03:00
Ramon Souza
981e707612 add selector to containers, remove old layoutContext + convert base component into function 2021-09-10 14:21:04 -03:00
Ramon Souza
65382e72af remove saveLocale static method 2021-08-25 14:06:57 -03:00
Ramon Souza
86df6ee96f prevent endless loop if locale file is invalid json 2021-08-25 13:12:38 -03:00
Ramon Souza
b048e77f10 user leave alerts feature 2021-08-20 13:14:12 -03:00
Vitor Mateus De Almeida
145ca61d40 linting some files 2021-08-09 11:24:02 -03:00
Anton Georgiev
5cfb723e07 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into aug6-merge 2021-08-06 15:23:36 +00:00
Vitor Mateus De Almeida
1b18977eac rename all NewLayout.. to Layout.. 2021-08-05 08:03:24 -03:00
Vitor Mateus De Almeida
09082734c9 remove old media, webcam draggable and panel components 2021-08-05 04:26:03 -03:00
Vitor Mateus De Almeida
abf089ae73 remove layout manager legacy 2021-08-05 01:22:07 -03:00
Ramon Souza
57d5ee8735 fix override default locale api parameter 2021-08-02 11:24:35 -03:00
prlanzarin
9071ba8bc4 refactor(virtual-backgrounds): re-organize virtual background code
Changes (maybe not a complete list):
  - Disable virtualbgs by default
  - Move the virtualbg selector in video-preview to the side below the
profile selection
  - Restore old video-preview sizes
  - Add a wrapper class for MediaStreams (BBBVideoStream)
  - Centralize virtualbg services and business logic code into BBBVideoStream
  - Refactor and centralize virtualbg constant fetching
  - Refactor and centralize virtualbg config fetching
  - Organize virtualbg type definitions
  - Remove added states in video-provider to prevent further bloat
  - Remove added states in video-preview to prevent further bloat
  - Lock virtual bg switching while video-preview itself is locked
  - Add proper virtualbg error surfacing via toasts
  - Refactor iOS availability detection to use centralized UA checker
  - Avoid calling gUM when toggling virtualbgs on/off
  - Make virtualbg video-list-item action a toggle instead of a
state-aware action
  - Make virtualbg switching work in video-preview for cameras that are
already shared. Especially useful when there are multiple source
cameras, and will be important in the near future
  - Add Derivative Work notices in files that are partially copied from
jitsi-meet
  - Simplify track replacing in video-provider
  - Split video-preview UI code for virtualbgs into a separate functional component
2021-07-22 18:53:42 +00:00
Bartu Bazna
9f791a8892 Squashed virtual background commits 2021-07-21 20:00:19 +00:00
Anton Georgiev
4baf67c24d
Merge pull request #12796 from ramonlsouza/fix-start-closed-chat
fix: start closed chat option does not work
2021-07-20 16:25:35 -04:00
Anton Georgiev
472c9a6107 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into 237-into-develop 2021-07-20 15:21:21 +00:00
Ramon Souza
92edd08448 fix start closed chat option 2021-07-20 10:19:48 -03:00
Ramon Souza
a7c545ff1f refactor reason -> ejectedReason 2021-07-08 13:09:25 -03:00
Ramon Souza
8fe8a0ac6b display endWhenNoModerator message 2021-07-08 11:51:00 -03:00
Anton Georgiev
6cf863ff3d
Merge pull request #12604 from KDSBrowne/bbb-api-unit-tests
test: Add Unit Tests For Meteor Polls API
2021-07-06 16:56:46 -04:00
Anton Georgiev
b9cc633286 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-2.3.5-into-develop 2021-07-06 19:36:19 +00:00
Anton Georgiev
b5851aa152 removeUser: handle connections in frontends, db changes in backend 2021-06-30 20:08:00 +00:00
Joao Siebel
f23cdf4dbf Restore mongo metrics feature 2021-06-28 12:00:09 -03:00
KDSBrowne
cf6672b1c9 Add unit tests for poll api modifiers | 2x handlers 2021-06-17 02:20:49 +00:00
Anton Georgiev
5ee5ed1970 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-june16 2021-06-16 19:54:28 +00:00
Anton Georgiev
4780da6a79 Set Divehi as RTL 2021-06-14 16:33:17 +00:00
Ramon Souza
3ba15a83dd different navbar height for large fonts 2021-06-04 10:44:50 -03:00
Anton Georgiev
fd9b68b526
Revert "fix: different navbar size for locales with large fonts" 2021-06-03 10:42:02 -04:00
Ramon Souza
f4f01818f8 add localeChanged event to resize presentation area 2021-06-02 09:41:15 -03:00
Ramon Souza
8d2474135a formatting 2021-06-01 14:46:29 -03:00
Ramon Souza
96edb582f7 different navbar height for large fonts 2021-06-01 14:45:16 -03:00
Anton Georgiev
4356ea9e3d
Merge pull request #12439 from ramonlsouza/issue-12376
fix: replace power-queue dependency
2021-05-25 10:07:08 -04:00
Anton Georgiev
2eb09a15db
Merge pull request #12394 from vitormateusalmeida/layoutManagerNew
Add New Layout Manager
2021-05-25 10:06:35 -04:00
Ramon Souza
57cdf3f6b7 replace power-queue with queue 2021-05-24 16:41:22 -03:00
Ramon Souza
34007f5bc5 lint 2021-05-20 15:14:19 -03:00
Ramon Souza
f3260ed8bf handle additional cases for locales 2021-05-20 14:01:58 -03:00
Vitor Mateus De Almeida
047b573d10 Fix auto resize when open/close panels 2021-05-19 19:29:03 -03:00
Vitor Mateus De Almeida
444b29a346 Merge remote-tracking branch 'upstream/develop' into layoutManagerNew 2021-05-19 11:54:22 -03:00
Vitor Mateus De Almeida
88a1edcc06 Fix userlist item button, Fix polling close button 2021-05-19 11:51:31 -03:00
Ramon Souza
165545ee77 remove useless conditional in base component 2021-05-19 08:57:32 -03:00
Vitor Mateus De Almeida
1326f3f791 Add New Layout Manager 2021-05-17 17:25:07 -03:00
Ramon Souza
02aea0a3de template syntax in string literal 2021-05-07 08:38:19 -03:00
Ramon Souza
3678348fdf remove unused code 2021-04-29 13:52:22 -03:00
Anton Georgiev
e00b7efb04
Merge pull request #12165 from vitormateusalmeida/issue-12050
Fix layout broken after open+close shared notes
2021-04-27 11:11:17 -04:00
Vitor Mateus De Almeida
340e0ba052 fix layout broken after opne close shared notes 2021-04-26 20:04:34 -03:00
Anton Georgiev
91b57f82f9 feat: allow to omit chat message from logging 2021-04-26 16:04:57 -04:00
Mario Jr
af6cea1734 fix: client may crash when loading develop version
Removed the reference for invalidateCookie, since it doesn't exist anymore.
2021-04-23 10:58:08 -03:00
Ramon Souza
75b9261f6f remove unused imports/variables 2021-04-22 13:17:20 -03:00
Vitor Mateus De Almeida
3374e638bb fix layout doesn't update when screen is shared 2021-04-16 18:02:47 -03:00
Anton Georgiev
abd9539405
Update redis.js 2021-04-08 15:55:55 -04:00
Anton Georgiev
30229cebb6
Remove bbb-html5-backend log when meeting handled by other backend 2021-04-08 15:51:57 -04:00
Ramon Souza
9218262e0a all device info moved to helper 2021-03-31 14:13:36 -03: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
Ramon Souza
c4fc7bcd92 locales fetch rework 2021-03-23 10:09:28 -03:00
Ramon Souza
5f2138ddea check if user settings are loaded 2021-03-17 15:01:08 -03:00
Ramon Souza
9ed8af666e fix chat panel appearing after webcam share/unshare 2021-03-17 13:20:59 -03:00
Ramon Souza
ca345de246 add check after extractCredentials is used 2021-03-16 13:15:41 -03:00
Anton Georgiev
a41fa87bdd
Re-enable redis.js log for meetings handled by other processes
I was shown a case just now where `CreateNewPresentationPodEvtMsg` can happen prior to the full add of a meeting. This log line becomes relevant once again
2021-03-15 12:55:51 -04:00
Anton Georgiev
8568bb03b9
Disable redis.js log for meetings handled by other processes
Disabled `'Backend meeting queue had not been initialized'` which was added to pinpoint an issue with handling of meeting create events, but the issue seems to be unrelated (and has not been hit after resolving a memory leak)
2021-03-15 12:30:02 -04:00
Ramón Souza
0105373cee
Applies changes needed to serve locale files as static content (#11234)
* moving locales folder to /public and applying changes needed to serve locales as static files

* better dev/prod check

* transifex pull script changes to match new locales directory + ignore locales with less than 100 lines

* fix local/prod locales path

* merge fallback messages

* applies new locale changes to legacy client

`bbb-html5.nginx` file content should also be changed to the following:

```
location /html5client/locales {
  alias /usr/share/meteor/bundle/programs/web.browser/app/locales;
}

location /html5client/compatibility {
  alias /usr/share/meteor/bundle/programs/web.browser/app/compatibility;
}

location /html5client/resources {
  alias /usr/share/meteor/bundle/programs/web.browser/app/resources;
}

location /html5client/svgs {
  alias /usr/share/meteor/bundle/programs/web.browser/app/svgs;
}

location /html5client/fonts {
  alias /usr/share/meteor/bundle/programs/web.browser/app/fonts;
}

location /html5client {
  # proxy_pass http://127.0.0.1:4100; # use for development
  proxy_pass http://poolhtml5servers; # use for production
  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection "Upgrade";
}
```
2021-03-11 06:42:41 -05:00
Ramon Souza
fb22eca58d fix legacy client with customHeartbeat:false 2021-03-10 15:14:25 -03:00
Mario Jr
c7df108f5a Improve the way we observe changes on Users's collection
It is safer to look at subscriptions's state to users instead of depending
on the initial state of the collection at mounting time. Although
i couldn't force any race conditions on this, there's a chance it could
happen. The fix avoid this problem.
This complements #11533
2021-03-08 18:08:56 -03:00
Mario Jr
9b1630186c Move some validations to the User's collection query
Also removed unnecessary fields
2021-03-05 15:56:42 -03:00
Mario Junior
d4620b024d
Update bigbluebutton-html5/imports/startup/client/base.jsx
Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2021-03-05 15:14:19 -03:00
Mario Jr
837b1cfb52 Improve performance when doing user join notifications
Complements #11533
2021-03-05 15:10:31 -03:00