Commit Graph

339 Commits

Author SHA1 Message Date
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
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
prlanzarin
b677f805c1 refactor(virtual-backgrounds): move WASM binaries to public, let nginx serve them 2021-10-14 03:50:39 +00: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
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
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
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
Ramon Souza
02aea0a3de template syntax in string literal 2021-05-07 08:38:19 -03:00
Anton Georgiev
91b57f82f9 feat: allow to omit chat message from logging 2021-04-26 16:04:57 -04: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
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
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
Joao Siebel
31d49536e8 Add extra logs when handling messages on redis 2021-02-24 17:56:14 -03:00
Anton Georgiev
111109674e
Merge pull request #11247 from ramonlsouza/language-dropdown
Reduces the number of options displayed on locale settings dropdown
2021-02-22 15:44:29 -05:00
Aaditya Prakash
c3a7fde807 Implemented merge option for default and local settings. 2021-02-19 14:44:23 +01:00
Anton Georgiev
683847304d on frontend attempt to handle events without matching queue 2021-02-17 20:51:36 +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
Anton Georgiev
8c0f0fdd52 Split Meteor roles backend-frontend revisit 2021-02-05 17:47:46 +00:00
Ramon Souza
55651506a4 improve language selector filter, closes #10706 2021-02-02 15:44:58 -03:00
Joao Siebel
68b2752e0d Add flag to enable sync 2021-01-29 14:27:13 -03:00
Joao Siebel
8c7c21f936 Sync users in collection with server active connections 2021-01-26 16:22:32 -03:00
Anton Georgiev
fc93b5a91c correctly add chat message without flattening 2020-12-17 22:02:38 +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
8b65f9e15b Set bbb-html5 loadbalancing to be round robin 2020-12-15 01:55:57 +00:00
Anton Georgiev
9239d515a5 dispatch whiteboard events to html5 redis channel only 2020-12-12 01:45:38 +00:00
Anton Georgiev
0be8773e4c Loadbalance bbb-html5 in bbb-web based on CPU 2020-12-11 21:36:06 +00:00
Joao Siebel
5b0d6c59e6 Code clean up 2020-12-10 14:05:22 -03:00
Joao Siebel
e9d05454ea Remvoe console 2020-12-10 13:52:25 -03:00
Joao Siebel
bf5a45d303 Create Metrics class 2020-12-10 12:07:06 -03:00