Commit Graph

1781 Commits

Author SHA1 Message Date
Max Franke
4cf98010a9 feat(message-form): add emoji button 2022-05-24 14:20:55 -03:00
gabriellpr
292b6889a6
Update bigbluebutton-html5/private/static/guest-wait/guest-wait.html
Co-authored-by: João Victor Nunes <62393923+JoVictorNunes@users.noreply.github.com>
2022-05-17 13:55:58 -03:00
gabriellpr
aa9719efff saving user-status for future reload
changed the loading message to be more understandable

...

...
2022-05-17 13:47:04 -03:00
Ramón Souza
32469846f8
Merge pull request #14989 from gabriellpr/emoji-chat
feat(chat): Auto convert text to emoji
2022-05-13 18:47:26 +01:00
Joao Victor
a7e5869c91 feat(video): upload of own webcam virtual background 2022-05-10 14:17:16 -03:00
Ramon Souza
0d3a5326fc Merge remote-tracking branch 'upstream/v2.5.x-release' into 25260-may10 2022-05-10 10:53:00 -03:00
gabriellpr
d97631cc40 auto convert to emoji 2022-05-10 09:47:51 -03:00
prlanzarin
e93176238a feat(audio): add sipjsAllowMdns option to control mDNS filtering in SIP.js
FreeSWITCH has mDNS resolution capabilities as of 1.10.7. Having the filtering
configurable in the client allows us to field trial whether we should keep that
on or off. The default is still to filter them out because FreeSWITCH does not
resolve mDNS candidates by default (ice_resolve_candidate in switch.conf.xml).
2022-05-06 13:38:44 +00:00
Mario Junior
dced094ad7
Merge pull request #14833 from lfzawacki/develop-bbb
New Layout code and push layout states for camera position, size, focus and presentation minize
2022-05-04 16:51:06 -03:00
Ramón Souza
50b3eceb46
Merge pull request #14912 from ramonlsouza/issue-14909
Breakout rooms: have multiple "remaining time" notifications
2022-05-03 13:12:54 +01:00
Joao Victor
34503251cf refactor: poll component - merge both auto optioning and file drag&drop into one single thing 2022-04-29 12:04:45 -03:00
Ramon Souza
9d9558953e support to multiple breakout time alerts 2022-04-29 10:05:29 -03:00
Lucas
2db9a1b343
Merge branch 'develop' into develop-bbb 2022-04-26 15:08:43 -03:00
prlanzarin
459e1a9514 refactor(audio): remove old listen only bridge (kurento.js)
- Remove the old listen only bridge (kurento.js), superseded by the equivalent
  and equally stable (AS FAR AS LISTEN ONLY IS CONCERNED) sfu-audio-bridge
  - Rename FullAudioBridge.js -> sfu-audio-bridge.js
    * A more generic name that better represents the capabilities and
      the nature of the bridge
    * The bridge name identifier in configuration is still the same
      ('fullaudio')
  - Remove the FreeSWITCH listen only fallback
  - Temporarily disable the "trickle ICE" pair gathering feature used
    in SIP.js (which was always experimental, nonstandard and disabled
    by default)
  - Updates to settings.yml keys in places where relevant
2022-04-20 20:46:32 +00:00
Paulo Lanzarin
cd96f30d22
chore: disable candidate signaling by default
mediasoup is the default media server in v2.5, so we don't need ICE candidates 
to be signaled to bbb-webrtc-sfu. Disabling it saves resources (client and server).
2022-04-19 11:50:45 -03:00
Anton Georgiev
825cfc8d9f
Merge pull request #14666 from OneScreenSolutions/feat-poll-auto-options
feat: Feat poll auto options
2022-04-18 09:52:14 -04:00
Anton Georgiev
9a8264ec6c
Merge pull request #14736 from prlanzarin/u25-wave-idea3
feat(audio): local echo test and audio energy meter
2022-04-14 17:07:28 -04:00
Ramon Souza
e4c585ac9a enable drag and drop polls by default 2022-04-14 13:57:23 -03:00
Lucas Zawacki
83847a21aa Merge branch 'v2.5.x-release-Layouts' of github.com:lfzawacki/bigbluebutton into develop-bbb 2022-04-13 21:08:32 +00:00
prlanzarin
bae731e59e fix(audio): PC loopback workaround for local echo in Chrome
Works around the fact that Chrome doesnt have AEC on streams that dont go through PCs
2022-04-13 14:37:39 +00:00
Anton Georgiev
8ab4023eb5
Merge pull request #14783 from frankemax/bbb-darkmode-25
feat(theme): add dark mode
2022-04-12 10:35:31 -04:00
prlanzarin
1e37924e41 refactor(audio): local echo initial hearing state is configurable, ...
public.media.showVolumeMeterInSettings => public.media.showVolumeMeter

public.media.simplifiedEchoTest => public.media.localEchoTest.enabled

Initial hearing state can be configured in public.media.localEchoTest.initialHearingState
2022-04-11 21:04:08 +00:00
prlanzarin
d6c7f23a0e feat(audio): local echo test and audio energy meter
New features:
  - A simplified echo test mode that only does a local loopback (instead of
  going to FS and back)
  - A volume meter for microphone streams to the AudioSettings view

Those two features are experimental and disabled by default; see
public.app.media.simplifiedEchoTest and public.app.media.showVolumeMeter configs

Collateral changes:
  - fix: localize fallback device strings in AudioSettings/DeviceSelector
  - Refactor on some media stream utils to be re-usable across components
  - Refactor in AudioSettings to keep gUM #uses stable.
    * TODO: need to pass streams through AudioManager to avoid the surplus gUM.
  - fix(audio): drop ScriptProcessorNode usage (deprecated)
    * Used in volume meter for tracking - use hark instead
2022-04-11 19:21:56 +00:00
Anton Georgiev
3afb57fa66
Merge pull request #14788 from ramonlsouza/merge-2425-apr08
chore: Merge 2.4 into 2.5
2022-04-08 20:37:32 -04:00
Ramon Souza
1c873bd8d6 Merge remote-tracking branch 'upstream/v2.4.x-release' into merge-2425-apr08 2022-04-08 17:30:21 -03:00
Max Franke
6b05e431dd feat(theme): add dark mode theme 2022-04-08 16:05:29 -03:00
germanocaumo
a04fbc56e1 feat(html5): add error logs and redis prometheus metrics
New config: settings.private.prometheus.collectRedisMetrics disabled by default
2022-04-08 14:21:55 +00:00
muhammadameen252
7b7f3ff41c added auto optioning feature in poll 2022-03-21 22:58:11 +05:00
prlanzarin
a18ae31def refactor(video): remove frameRate constraints from quality control profiles
Rationale: the important thing here is bitrate. Disabling constraints should have no meaningful on 1) client-side bw 2) client-side cpu 3) server-side bw/cpu - while it will also guarantee seemingly smoother streams
2022-03-14 12:01:13 -03:00
prlanzarin
4ae5c70248 feat(video): add flag to disable quality change exemptions (floor, pin) 2022-03-14 11:58:53 -03:00
prlanzarin
ccbb6c6651 fix(video): add debounce and option to exclude constraints from dynamic camera profiles
Tries to mitigate too-rapidly-switching camera profiles causing video freezes
due to encoder resets. Excluding constraints might not help a lot since
the thing that actually restarts the encoder is the bitrate change, but
they're not really important in the context of dynamic profiles.
We can't get rid of bitrate changes, though, since it's what does the actual
quality constraining.

The camera profile change debounce timer is 2.5s by default (which is
the same timer used for floor changes).

Also fixed an issue with camera profile backfiring due to badly defined peers
2022-03-14 11:56:48 -03:00
prlanzarin
41f89536d6 fix: specify height in high and hd camera profiles
Set height to 720 in those profiles so that aspect ratio has a better chance to
be cohesive in all environments. Having only width set was causing certain
devices to output videos with non-standard ARs
2022-03-14 10:31:59 -03:00
Lucas Zawacki
31ddd9a8d8 fix(layout): Better config names for layout push/toggle 2022-03-09 18:10:09 -03:00
Lucas Zawacki
559b6f59c2 fix(layout): Remove unused options 2022-03-09 18:04:21 -03:00
Max Franke
0f27b1add4 feat(layout): new layout modal
Add a new modal that makes it easier to switch between layouts
Adds a new flag in html5 settings that allows to enable/disable
keepPushing layout
2022-03-09 17:00:06 -03:00
Lucas Zawacki
e113fa489b layout(fix): Fix hidePresentation yml option 2022-03-09 16:12:53 -03:00
Anton Georgiev
6890988381
Merge pull request #14527 from pedrobmarin/r-g-ipi
refactor(guest): increase polling interval
2022-03-03 15:26:21 -05:00
Pedro Beschorner Marin
3879f87f2b refactor(guest): increase polling interval
Reduce the number of guest status' polls per minute.
2022-03-03 16:07:58 -03:00
prlanzarin
ae6564f276 fix: specify height in high and hd camera profiles
Set height to 720 in those profiles so that aspect ratio has a better chance to
be cohesive in all environments. Having only width set was causing certain
devices to output videos with non-standard ARs
2022-03-02 20:28:29 -03:00
Pedro Beschorner Marin
f267cf29e0 refactor(pads): unneeded redis subscription
Since bbb-pads the html client Etherpad redis' channel subscription isn't
needed anymore. All communication between Etherpad and BigBlueButton goes
through bbb-pads.
2022-03-01 09:54:43 -03:00
Ramón Souza
138f4d64e4 Merge remote-tracking branch 'upstream/v2.4.x-release' into v2.5.x-release 2022-02-24 14:49:56 +00:00
Arthurk12
7b5049f14c feat(layout): settings
Adds settings flag to activate/deactivate layout propagation button in actions
bar menu.
2022-02-22 18:18:56 -03:00
Anton Georgiev
41164facaa
Merge pull request #14131 from Tainan404/remove-guest-attempt-limit
Remove guest attempts limit on guestWait endpoint
2022-02-18 08:52:27 -05:00
Anton Georgiev
89bbddf254 chore: Enable displayBbbServerVersion in settings.yml 2022-02-17 17:21:54 +00:00
Anton Georgiev
db6941970c build: automatically set BBB version in settings.yml 2022-02-17 17:21:02 +00:00
Anton Georgiev
0a3f879bd8
chore: updated bbbServerVersion to 2.5 2022-02-17 08:54:17 -05:00
gustavo-em
fe6428d665 add settings.yml and rule in component to show version 2022-02-04 16:41:46 -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
Anton Georgiev
5f4c5cdedb
Merge branch 'develop' into r-r-e-acea 2022-01-24 16:05:57 -05: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
Arthurk12
45fcd54ab9 refactor(presentation): upload extra hint
Adds text hint about the accepted presentation file size limit.
2022-01-20 17:50:50 +00:00
Tainan Felipe
e7690fe52e Remove guest attempts limit on guestWait endpoint 2022-01-18 17:03:01 -03:00
Aleksandar Vasilev
6935b8293c
Merge branch 'bigbluebutton:develop' into position-in-waiting-queue 2022-01-16 02:59:40 +01:00
Paulo Lanzarin
e87a633da3
chore(bbb-html5): enable camera pin/screenshare volume control by default 2022-01-13 19:08:14 -03:00
Anton Georgiev
2d1aab563d
chore: Updated year to 2022 in bbb html settings.yml 2022-01-12 16:59:24 -05:00
Ramón Souza
f6e65f58c5 merge 2.4 into develop and resolve conflicts - partial 2022-01-12 16:40:45 +00:00
SashoVihVas
2d7c82e73d Add position in waiting queue for guest users 2022-01-12 03:08:43 +00:00
Mario Jr
1621834239 feat(audio): add settings for audio websocket connection
Default values were kept, but now this can be changed in settings.yml.
If not set in settings.yml, the old hardcoded values are used.
2022-01-10 18:56:29 -03:00
Anton Georgiev
14d3922846 refactor: Rename L Dashboard to L Analytics Dashboard 2022-01-07 19:22:05 +00:00
Max Franke
7e2a3c3bca feat(webcams): client side implementation of webcam pin 2021-12-21 16:58:39 -03:00
Anton Georgiev
ad97eb2ebe
Merge pull request #13871 from prlanzarin/u24-lifeforms-longforms
feat(bbb-html5): add a general forceRelay flag
2021-12-14 16:44:36 -05:00
Paulo Lanzarin
775150471c
Merge pull request #13688 from Arthurk12/screenshare-volume
feat(screenshare): volume control
2021-12-14 14:06:37 -03:00
Anton Georgiev
797fc49633 TEMP 2021-12-09 20:37:05 +00:00
prlanzarin
93b5f4c93d feat(bbb-html5): add a general forceRelay flag
public.media.forceRelay forces relay usage on all browsers, environments and media modules

If true, overrides public.kurento.[4~forceRelayOnFirefox
2021-12-09 11:35:56 +00:00
prlanzarin
e49aa1c959 refactor(screenshare): revert volume control to HTMLMediaElement, make it configurable
I have growing concerns about gain node`s effect on audio quality the way it
was implemented, so I opted to fall back to HTMLMediaElement`s volume control
for the time being until we can gauge quality impacts properly later on

Add a new configuration flag enableVolumeControl, false by default while the
feature undergoes a field trial
2021-12-08 16:24:31 +00:00
Anton Georgiev
578332a094
Merge pull request #13731 from schrd/cluster_proxy
Allow BBB to run behind a proxy the avoid gUM permission queries per node
2021-12-03 11:32:07 -05:00
Anton Georgiev
def60fbcbc
Merge pull request #13818 from prlanzarin/u24-lift-wsb
feat(webcam): add a way to re-open video preview without multiple cameras
2021-12-02 17:26:23 -05:00
prlanzarin
da6ab02122 chore: add forceRelayOnFirefox option (false by default)
- forceRelayOnFirefox: whether TURN/relay usage should be forced to work
around Firefox's lack of support for regular nomination when dealing with
ICE-litee peers (e.g.: mediasoup).
  * See: https://bugzilla.mozilla.org/show_bug.cgi?id=1034964
- iOS endpoints are ignored from the trigger because _all_ iOS browsers
  are either native WebKit or WKWebView based (so they shouldn't be affected)
2021-11-30 20:31:12 +00:00
prlanzarin
f8034b8e04 refactor(audio): remove unused relayOnlyOnReconnect config
Removed/left behind when SIP.js was bumped for 0.7.x to 0.15.x
2021-11-30 19:22:38 +00:00
Maxim Khlobystov
b7cf670aec Remove the support for iframe postMessage API (recording and self-muting) 2021-11-29 22:53:12 +00:00
Mario Jr
54bda21287 chore(video): change default setting to enable webcam's button selector
Renamed this setting and added some docs about it
Complements #979
2021-11-26 13:12:07 +00:00
Max Franke
310add10ed feat(webcam): add a little button to webcam button
Add the <ButtonEmoji/> to the webcam button. Now it
is possible to change the webcam settings and change
your settings without having to turn off sharing.
Modifies the <ButtonEmoji/> component so that it can
receive an onClick per props.
It is possible to disable this feat in the settings.yml
2021-11-26 12:53:11 +00:00
Daniel Schreiber
c46556e1f6 Allow BBB to run behind a proxy the avoid gUM permission queries per node
The idea is to run a loadbalancer node which maps each BBB node to a
path. That way each user gets only one gUM permission query for a
cluster. The loadbalancer node only serves the html5 client, each BBB
node will serve its own API and handle the websockets for freeswitch and
bbb-webrtc-sfu.

Configuring a cluster setup
===========================

* let bbb-lb.example.com be the loadbalancer node
* let bbb-01.eaxmple.com be a BBB node

Loadbalancer
------------

On the loadbalancer node add an nginx configuration similar to this one
for each BBB node:

```
location /bbb-01/html5client/ {
  proxy_pass https://bbb-01.example.com/bbb-01/html5client/;
  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection "Upgrade";
}

```

BBB Node
--------

On the BBB node add the following options to
`/etc/bigbluebutton/bbb-web.properties`:

```
defaultHTML5ClientUrl=https://bbb-lb.example.com/bbb-01/html5client/join
presentationBaseURL=https://bbb-01.example.com/bigbluebutton/presentation
accessControlAllowOrigin=https://bbb-lb.example.com
```

Add the following options to `/etc/bigbluebutton/bbb-html5.yml`:

```
public:
  app:
    basename: '/bbb-01/html5client'
    bbbWebBase: 'https://bbb-01.eaxmple.com/bigbluebutton'
    learningDashboardBase: 'https://bbb-01.eaxmple.com/learning-dashboard'
  media:
    stunTurnServersFetchAddress: 'https://bbb-01.eaxmple.com/bigbluebutton/api/stuns'
    sip_ws_host: 'bbb-01.eaxmple.com'
  presentation:
    uploadEndpoint: 'https://bbb-01.eaxmple.com/bigbluebutton/presentation/upload'
```

Create the following unit file overrides:

* `/etc/systemd/system/bbb-html5-frontend@.service.d/cluster.conf`
* `/etc/systemd/system/bbb-html5-backend@.service.d/cluster.conf`

with the following content:

```
[Service]
Environment=ROOT_URL=https://127.0.0.1/bbb-01/html5client
```

Change the nginx `$bbb_loadbalancer_node` variable to the name of the
load balancer node in `/etc/bigbluebutton/nginx/loadbalancer.nginx` to
allow CORS requests:

```
set $bbb_loadbalancer_node https://bbb-lb.example.com
```

Prepend the mount point of bbb-html5 in all location sections except
from the `location @html5client` section in
`/etc/bigbluebutton/nginx/bbb-html5.nginx`

```
location @html5client {
    ...
}
location /bbb-01/html5client/locales {
    ...
}
```
2021-11-20 22:13:47 +01:00
Mario Jr
117bb91a0e fix(audio): rename fullaudio bridge to FullAudioBridge
updated whitelist, also according to sonar checks
2021-11-09 12:10:36 -03:00
Mario Jr
db4e2f9c47 update(audio): correctly retrieves the media-server-fullaudio from meta params
Previously we were using the same for listenonly, which for default
environments points to kurento, and didn't make any difference in media server
selection.
This could be problematic in those environments where meta param
for listeonly media server is set , though.
Fullaudio has now it's own meta param that can be passed through API:
"meta_media-server-fullaudio"
2021-11-09 12:09:28 -03:00
Mario Jr
42778adeaf feat(audio): add base code for fullaudio bridge
This bridge will work with bbb-webrtc-sfu to handle microphone audio.
2021-11-09 12:08:45 -03:00
Mario Jr
7e218c3eca feat(audio): add bridge configurable scheme
we are now able to switch between audio bridges, by selecting it in
config files.
2021-11-09 12:08:09 -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
Mario Jr
c1c0a2341f Merge branch 'develop' into allow-chrome-in-ios 2021-10-28 13:38:18 -03:00
Mario Jr
94cbc3bbc8 feat: allow users in iOS join from chrome mobile version 94+
Complements #13562
2021-11-03 11:47:36 -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
Anton Georgiev
e5c37a7cf8
Merge pull request #13490 from ramonlsouza/old-minimize-button
Restore old button to hide presentation (under a flag)
2021-10-20 13:43:58 -04:00
Anton Georgiev
c1c357bbd9
Merge pull request #13482 from prlanzarin/u24-zones
refactor(virtual-backgrounds): move WASM binaries to /public and let nginx serve them
2021-10-18 12:16:14 -04:00
Ramón Souza
9e71583ec7 restore old minimize presentation button and add a flag to switch 2021-10-14 19:31:47 +00:00
Anton Georgiev
719afa6cd2 Merge branch 'v2.4.x-release' of github.com:bigbluebutton/bigbluebutton into merge-24-dev 2021-10-14 15:14:22 +00:00
Anton Georgiev
24d672a832 Merge branch 'v2.4.x-release' of github.com:bigbluebutton/bigbluebutton into merge-24-dev 2021-10-14 15:13:17 +00:00
prlanzarin
b677f805c1 refactor(virtual-backgrounds): move WASM binaries to public, let nginx serve them 2021-10-14 03:50:39 +00:00
KDSBrowne
27e3500b6d Merge branch 'v2.4.x-release' of https://github.com/bigbluebutton/bigbluebutton into BBB-WCAG2.1-FINAL 2021-10-13 12:03:58 +00:00
KDSBrowne
b39f07d996 add BigBlueButton to guest lobby heading 2021-10-10 17:29:18 +00:00
Philipp Memmel
a145426aca localize guest wait page heading 2021-10-09 08:46:10 +00:00
Arthur B. Grossi
4c3c03c4ed style(guest wait): adjust font
Adds client's font to the guest's waiting page.
2021-10-07 16:56:19 +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
59fc722529 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-23-24 2021-10-05 17:14:46 +00:00
Arthur B. Grossi
978841aa71 style(guest wait): loading dots
Adjusts guest waiting page loading dots to be the same as the one displayed
at the client.
2021-10-04 19:21:36 +00:00
Anton Georgiev
c0beede63b
Merge pull request #13335 from prlanzarin/u24-white-rabbit
chore(webrtc): let the server generate subscriber offers by default (backports #13254)
2021-10-04 12:58:50 -04:00
Anton Georgiev
17bf52fe5b
Merge pull request #13279 from prlanzarin/u24-trash-stratum
chore(virtual-backgrounds): cleanup and update tflite resources
2021-10-04 10:30:33 -04:00
Paulo Lanzarin
9c09b36b23 chore(webrtc): let the server generate subscriber offers by default 2021-09-29 21:21:00 +00:00
KDSBrowne
0a5548a058
Add comment 2021-09-29 11:08:35 -04:00
KDSBrowne
0cbb7b662f Merge branch 'v2.4.x-release' of https://github.com/bigbluebutton/bigbluebutton into BBB-WCAG-09 2021-09-29 02:14:23 +00:00
KDSBrowne
9cf0dde128 add approved redirect message in guest wait page 2021-09-29 02:13:31 +00:00
Pedro Beschorner Marin
c43ca7a22d fix(guests): max participants
Waiting users shouldn't count as valid participants at the meeting's
`maxParticipants` constraint.

Avoid calling `enter` at the waiting page.

Reference https://github.com/bigbluebutton/bigbluebutton/pull/10542
2021-09-28 08:31:18 -03:00
Paulo Lanzarin
d2498ad31d
Merge pull request #13281 from prlanzarin/u24-telomere
feat(webrtc): add EXPERIMENTAL option to disable ICE candidate signaling
2021-09-27 11:15:16 -03:00
Anton Georgiev
1d3918411f
Merge pull request #13278 from KDSBrowne/BBB-WCAG-08
refactor: WCAG2.1 - Guest Wait Page
2021-09-27 09:34:50 -04:00
prlanzarin
1cb412529d feat(webrtc): add EXPERIMENTAL option to disable ICE candidate signaling
ICE lite servers (eg mediasoup) dont need candidates signaled out-of-band; neither does KMS in certain scenarios

Disable their signaling saves us some ticks in bbb-webrtc-sfu and some bandwidth all around
2021-09-24 17:24:06 +00:00
prlanzarin
42b53749f1 chore(virtual-backgrounds): update tflite backends wrappers and WASMs
Use the latest version in the volcomix repo

Add coments to the wrappers stating which changes we did manually in them
2021-09-23 14:46:33 +00:00
Anton Georgiev
7c11600518
Merge pull request #13266 from mariogasparoni/dynamic-bridges
feat(audio): add bridge configurable scheme
2021-09-22 16:00:46 -04: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
Paulo Lanzarin
f8dee2f064
chore(webrtc): let the server generate subscriber offers by default 2021-09-21 13:29:08 -03:00
Anton Georgiev
becf921280
Merge pull request #12528 from bhuvankrishna/patch-1
Update settings.yml
2021-09-20 11:36:49 -04:00
KDSBrowne
ef02662132 update guest lobby title 2021-09-20 01:12:08 +00:00
KDSBrowne
508ead40ec wcag 2.1 access update to guest-waiting room 2021-09-19 22:09:49 +00:00
Mario Jr
4fcd051223 feat(audio): add bridge configurable scheme
we are now able to switch between audio bridges, by selecting it in
config files.
2021-08-31 15:50:53 -03:00
prlanzarin
fe5e86052a refactor(html5): media server adapter config is undefined by default
Undefined by default means that the governing configuration is in bbb-webrtc-sfu

Also add some inline docs in settings.yml about the media server adapter configs
2021-08-31 01:58:51 +00:00
prlanzarin
c741cea715 feat(video): add media server adapter config for cameras in bbb-html5
Allows configuring, via bbb-html5, which media server adapter will be used by cameras; server wide
2021-08-31 00:30:06 +00:00
prlanzarin
c57fb0b388 feat(audio): add media server adapter config for listen only in bbb-html5
Allows configuring, via bbb-html5, which media server adapter will be used by listen only; server wide
2021-08-31 00:24:41 +00:00
prlanzarin
86a715dc15 feat(screenshare): add media server adapter config in bbb-html5
Allows configuring, via bbb-html5, which media server adapter will be used by screen sharing; server wide
2021-08-31 00:19:51 +00:00
Anton Georgiev
6682b7c9d5
Merge pull request #13106 from antobinary/enable-network-status
chore: Enable by default enableNetworkStats
2021-08-30 14:49:11 -04:00
Anton Georgiev
51023b18b8
Merge pull request #13068 from ramonlsouza/prevent-locales-loop
fix: prevent endless loop if locale file is invalid json
2021-08-30 14:32:51 -04:00
Anton Georgiev
a820f7bb09 chore: Enable by default enableNetworkStats 2021-08-30 18:30:12 +00:00
Anton Georgiev
4ecb24b4fa Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-aug30 2021-08-30 18:11:16 +00:00
Anton Georgiev
46af0a8ee0
Merge pull request #13059 from jfsiebel/allow-to-remove-all-presentations
Allow presenter to remove all presentations
2021-08-27 14:06:37 -04:00
Mario Jr
fe7c7fe685 allow network stats information and copy button to be enabled in config file 2021-08-25 16:38:36 -03:00
Ramon Souza
86df6ee96f prevent endless loop if locale file is invalid json 2021-08-25 13:12:38 -03:00
Anton Georgiev
e6eebfaa81
Merge pull request #12983 from prlanzarin/u24-fantas
refactor(webcams, screenshare, listen-only): let the server generate subscriber offers
2021-08-24 16:37:44 -04:00
Joao Siebel
f3f9ec19eb Allow presenter to remove all presentations 2021-08-23 18:04:16 -03:00
Ramon Souza
b048e77f10 user leave alerts feature 2021-08-20 13:14:12 -03:00
prlanzarin
54d04fdb77 refactor(listen-only): let the server generate subscriber offers 2021-08-12 13:45:18 +00:00
prlanzarin
387c453076 refactor(screnshare): let the server generate subscriber offers 2021-08-12 13:45:04 +00: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
Anton Georgiev
1ff6a26967
Merge pull request #12897 from ramonlsouza/issue-12887
Add override locale support - guest wait page
2021-08-05 11:18:11 -04:00
Jibon Costa
4ec70505f0 added option to allow to use customStyleUrl from config 2021-08-05 02:36:30 +00:00
Ramon Souza
7def76c0c7 get overrideLocale param from api 2021-08-02 17:08:32 -03:00
Ramon Souza
f40166ff85 get overrideLocale value from settings file in guest wait 2021-08-02 14:41:29 -03:00
Anton Georgiev
cb6ff58e37
chore: Enable VirtualBackgrounds by default
To allow for more extensive usage/testing by community
2021-07-23 13:06:21 -04:00
Anton Georgiev
1a46c1b2c0
Merge pull request #12495 from schiesslm/virtual_background
Virtual background
2021-07-23 12:56:18 -04: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
Ramon Souza
28ed62a128 remove default layout from settings file 2021-07-22 08:20:53 -03:00
Bartu Bazna
9f791a8892 Squashed virtual background commits 2021-07-21 20:00:19 +00:00
Anton Georgiev
5e1fe55731
Merge pull request #12760 from ramonlsouza/change-default-layout
Set new Layout Manager as default
2021-07-13 09:06:32 -04:00
Vitor Mateus De Almeida
6cfd7ee958 Clean code and add some missing css 2021-07-13 09:30:10 -03:00
Ramon Souza
604ae9cf6f change default layout to smart 2021-07-13 09:25:53 -03:00
Vitor Mateus De Almeida
f0145e001e Add resizable and draggable in cameras dock
Remove settings and change resizable context data

Add resizable draggable drop areas in cameras dock
2021-07-13 04:25:03 -03: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
Mario Jr
c4abd274e8 feat(audio): add option for enabling/disabling kms's trickle for mic 2021-07-02 12:51:00 -03:00
germanocaumo
bd29d156b3 fix(poll): Respect maxCustom property in quick-polls
More than 5 answers are now of Custom type poll and answers passed directly.
Increase A-I slide options detection
2021-06-30 15:19:09 +00:00
Anton Georgiev
19a49c83f1
Merge pull request #12620 from germanocaumo/quick-poll-max-custom
fix(poll): Respect maxCustom property in quick-polls
2021-06-24 14:55:45 -04:00
Anton Georgiev
905e0dd4dd
Updated bbbServerVersion to 2.4 2021-06-23 10:35:18 -04:00
Ramon Souza
1ac5350fd4 change layout ui 2021-06-22 09:17:11 -03:00
germanocaumo
4f06b1fbf8 feat(poll): add option to disable poll chat message 2021-06-18 14:13:20 +00:00
germanocaumo
2c262483d2 fix(poll): Respect maxCustom property in quick-polls
More than 5 answers are now of Custom type poll and answers passed directly.
Increase A-I slide options detection
2021-06-18 14:02:09 +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
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
Max Franke
8b274476b1 feat(video): indicate who is sharing webcam
Add the `camera` icon in the user list for whoever is sharing,
in order to improve the understanding of who is sharing the webcam.
It is possible to enable/disable this indication in the settings.yml
2021-06-12 13:40:47 -03:00
Ramon Souza
97aa7278a5 add option to emphasize moderator messages in public chat 2021-06-08 08:56:59 -03:00
Bhuvan Krishna
d89aa1d120
Update settings.yml
Updated langauge
2021-06-06 18:06:12 +00:00
Bhuvan Krishna
00d23aade1
Update settings.yml
Changed language
2021-06-06 17:39:52 +00:00
Anton Georgiev
96474f2ca7
Merge pull request #12501 from Tainan404/fix-user-dropdown
Add field to toggle the download of the public chat message
2021-06-04 15:39:30 -04:00
Tainan Felipe
bf6bbfca69 Add conditional to don't show dropdown when no opition avaible 2021-06-04 15:51:29 -03:00
Tainan Felipe
25bf0096c5 Add field to toggle the download of the public chat message 2021-06-02 11:50:26 -03:00
Anton Georgiev
230d24b7b4 Removed fallback locale for removed locales 2021-06-01 17:33:58 +00:00
Anton Georgiev
4957f0218b chore(locales): Pulled HTML5 locales on May 31, 2021 2021-05-31 23:26:14 +00:00
Ramon Souza
8277f431da remove unused function 2021-05-21 08:59:07 -03:00
Ramon Souza
43ea9d941e lint 2021-05-21 08:23:47 -03:00
Ramon Souza
74143b7782 localize guest wait page 2021-05-21 08:21:37 -03:00
Ramon Souza
098746d3c0 add setting to enable/disable raise hand action button 2021-05-18 13:39:09 -03:00
Anton Georgiev
b4e609f2c8 feat(guests): Introduce dynamicGuestPolicy in setting.yml 2021-05-12 16:01:04 +00:00
Joao Siebel
70e72cca25 Add warning on meeting end modal about content in meeting. close #10721 2021-05-11 14:34:18 -03:00
Mario Junior
35d3f7a0fd
Update bigbluebutton-html5/private/config/settings.yml
Explicitly set showAudioFilters to true

Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2021-05-06 12:02:32 -03:00
Mario Jr
69b2608f88 feat(audio): add showAudioFilters option in settings.yml
This allows showing (or hiding) the option from users in the conference.
Default value is true (show this option to users).
Fixed some eslint warnings.
2021-05-06 11:43:06 -03:00
Anton Georgiev
e62eda3d72
Merge pull request #12272 from mariogasparoni/fix-12190
fix: first audio join in breakout fails with specific config
2021-05-04 10:42:37 -04:00
Mario Jr
db4158dc30 fix: first audio join in breakout fails with specific config
When listenOnlyMode=false, skipCheck=true and skipCheckOnJoin=true, the
audio tries to start a session more than one time, causing it to fail
at the first one (and reconnect after that).

Now we check if user is already connecting before trying to start a new
audio session.

Added some info in settings.yml for the options related to this commit
Closes #12190
2021-05-04 10:11:33 -03:00
Anton Georgiev
613e24665e
Merge pull request #12227 from pedrobmarin/fix-guest-navigator-language
fix(guest): navigator language
2021-05-02 09:12:04 -04:00
Pedro Beschorner Marin
1add75d41d fix(guest): navigator language
The substr string method is receiving the wrong type of parameter
as length (boolean instead of number) forcing it to always use the
english fallback.
2021-04-30 14:33:18 -03:00
Anton Georgiev
040f8c615a
Removed "dev" from 2.3 versioning in settings.yml 2021-04-30 13:19:04 -04:00
Pedro Beschorner Marin
41793087bc chore(guest): pt/es guest lobby localization 2021-04-29 22:04:45 -03:00
Anton Georgiev
e590b9d8a9 fix: Include missing guest-wait messages 2021-04-30 00:32:39 +00:00
Anton Georgiev
6443b0955a fix: Include missing guest-wait messages 2021-04-30 00:32:39 +00:00
Anton Georgiev
2216511891
Merge pull request #12213 from danimo/guest-wait-l10n
feature(bbb-html5): localize guest-wait.html
2021-04-29 16:55:17 -04:00
Anton Georgiev
60778bf171
Merge pull request #12100 from jfsiebel/better-upload-feedback
Improve feedback to user after a failed file upload
2021-04-29 13:21:37 -04:00
Daniel Molkentin
735b7fd046 feature(bbb-html5): localize guest-wait.html
This introduces initial translations for the guest-wait pages.
The only supported languages are en and de for now. Needs a concept
to hook it up with transifex.
2021-04-29 18:55:15 +02:00
Joao Siebel
60f25939c0 Add configuration for max length typed answer in poll 2021-04-29 13:54:39 -03:00
Maxim Khlobystov
848fdc3ed0 Make the random user picking countdown optional 2021-04-28 15:44:08 +00:00
Joao Siebel
2f89598d2d Merge remote-tracking branch 'upstream/develop' into better-upload-feedback 2021-04-27 17:46:22 -03:00
Anton Georgiev
db769d081b
Merge pull request #12145 from prlanzarin/u23-seepferdchen
feat(screenshare): add screen bitrate config in bbb-html5
2021-04-26 17:36:23 -04:00
Anton Georgiev
341a268fa1 chore: connection status logs enhancement 2021-04-26 21:19:17 +00:00
Anton Georgiev
2a0bca4890
Merge pull request #12139 from pedrobmarin/connection-status-server-log
chore(connection status): log status change at the server
2021-04-26 16:41:10 -04:00
Anton Georgiev
91b57f82f9 feat: allow to omit chat message from logging 2021-04-26 16:04:57 -04:00
prlanzarin
84cbda75a3 feat(screenshare): add screen bitrate config in bbb-html5 2021-04-24 19:12:59 +00:00
Pedro Beschorner Marin
83c813ac6f refactor(connection status): interval and log configuration
Simplify how connection status inteval is configured and make server
log the solo logging option.
2021-04-23 19:15:32 -03:00
Paulo Lanzarin
160e2a238a
feat(video): set audio floor sorting as default for pagination
Set paginationSorting to VOICE_ACTIVITY_LOCAL by default (audio floors -> alphabetical -> local stream).

Rationale: a more sensible default mode for pagination that actually works a bit better for the end user than
the previous mode (presenter -> alphabetical). Should reduce the need for page switching by focusing on
the ones that are actually active in the conference.
2021-04-22 16:20:13 -03:00
Ramon Souza
d6e3f137c4 remove webcamsDefaultPlacement unused settings 2021-04-22 14:26:59 -03:00
Joao Siebel
c5071093d9 Improve feedback to user after a failed file upload 2021-04-20 14:21:12 -03:00
prlanzarin
001ab9554c video: added voice activity stream sorting, made stream sorting extensible
Video streams can be sorted by voice floor activity in the client according to FreeSWITCH´s floor events. The feature works together with pagination, essentially giving an Last-N like experience while not disrupting too much

Made video stream sorting extensible in a way. The sorting modes for pagination and unbounded can be configured in settings.yml and new sorting modes can be added to the stream sorting util under video-provider. Inline docs explain how to do that

Changed how the stream ID attribute from video-streams collection was passed to downstream components; we had an array map that was executed every change just to map stream to cameraId, which is bizarre. So I changed the cameraId usage in downstream components to be conformat with the collection attributes and shaved off the map where it wasnt needed

Add better selectors to video-list-item container´s VoiceUser fetch
2021-04-12 19:06:07 +00:00
Anton Georgiev
056ffc9e2a
Removed memoryMonitoring from settings.yml 2021-04-06 19:54:11 -04:00
Ramon Souza
9a0babd5d8 new default for showAllAvailableLocales (true) 2021-04-05 08:29:12 -03:00
Anton Georgiev
4b68749fb9
Set breakoutRoomLimit to 16
With defaults of 2 backend and 2 frontend bbb-html5 nodejs processes we can handle more breakouts. @ritzalam confirmed no audio changes are needed
2021-04-01 17:22:16 -04:00
Anton Georgiev
6695f7a119
Merge pull request #11813 from mariogasparoni/merge-update-pr-10129
Update and some improvements on PR #10129 - dynamic change audio device
2021-03-30 13:50:30 -04:00
Anton Georgiev
7d1d9fd8e7
Enabled by default Shared notes in 2.3
Packaging already replaces `url: ETHERPAD_HOST` so it should be safe to have `note:enabled: true`
2021-03-30 09:28:01 -04:00