Commit Graph

2764 Commits

Author SHA1 Message Date
Gustavo Trott
59ddf3e8e3 broadcast NewPresAnnFileAvailableMsg to html5 2022-07-20 20:20:32 -03:00
Pedro Beschorner Marin
51eeb092b3 refactor(captions): configurable languages
Move the language collection to the HTML settings file. This data defines
the available languages available for the speech API.

These language tags are used to filter SpeechSynthesis' API `getVoices`
result. Tags must use BCP 47 format.

https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesisVoice/lang
2022-07-20 17:20:52 +00:00
Pedro Beschorner Marin
b52c67d7a7 feat(captions): first pass on recording
Add the main server-side adapter for using the legacy closed captions
recording process with the audio captions data.
2022-07-20 17:20:52 +00:00
Pedro Beschorner Marin
fb48e61d6d feat(captions): add talking indicator feedback
Inform other users about who are the current talkers with the speech
recognition enabled.
2022-07-20 17:20:51 +00:00
Pedro Beschorner Marin
307ab6ea40 feat(captions): add author avatar
Include captions' author avatar at the live feedback to improve identification.
2022-07-20 17:20:50 +00:00
Pedro Beschorner Marin
75969ec93c feat(captions): audio captions app
Add a server-side app for the audio captions feature and record proto-events
for this data.

As it is, only behaves as a pass-through module. The idea is to include all
the business intelligence in this app.
2022-07-20 17:20:48 +00:00
Pedro Beschorner Marin
944edf2ccf feat(captions): web speech prototype
Hardcoded pt-BR prototype for closed captions generated by the browser's
WebSpeech API.
2022-07-20 17:20:48 +00:00
prlanzarin
d23189d1ed refactor(audio): log VoiceUser cleanup on User remove and centralize it
There's a VoiceUser cleanup procedure bound to the User's cleanup
routine in Meteor's server-side. That cleanup is _silent_ and does not
use a dedicated modifier from voice-user et al, which is not
straightforward and might waste a few minutes of understanding what's
happening when debugging audio collections.

This commit centralizes that cleanup in a new clearVoiceUser modifier in
voice-user as well as logs when it works.
2022-07-20 12:13:37 +00:00
Joao Victor
cff1c087a8 feat: front-end support for exporting presentations with annotations 2022-07-19 16:36:00 -03:00
Paulo Lanzarin
a156db25e4
Merge pull request #15358 from frankemax/fix-audio-infinite-joining
fix(audio): prevent race condition when joining audio
2022-07-15 15:24:14 -03:00
Paulo Lanzarin
383fe89653
Merge pull request #15364 from prlanzarin/u26/refactor/kutils-kboom
refactor: remove kurento-utils-js
2022-07-15 14:53:10 -03:00
Ramon Souza
db5ac1428a Merge tag 'v2.5.3' into merge25-26-jul14 2022-07-15 11:08:02 -03:00
prlanzarin
45049cbd65 refactor: swap kurento-utils for new peer wrapper in screen sharing and audio 2022-07-15 14:00:12 +00:00
Max Franke
70bf69182a fix(audio): prevent race condition when joining audio
Sometimes the handler that listens for the state change in the callState is
not updated correctly.
In these rare cases, the state of the callstate changes directly to in_conference,
not taking the expected path: call_started -> in_echo_test -> in_conference
2022-07-11 14:09:43 -03:00
germanocaumo
217fd6c06e fix(tldraw): wrong initial/viewer zoom
Fixes a case when the presentation is just uploaded and a wrong initial zoom was set.
Also fix viewer zoom not correclty adjusting to the area size when zoomed out.
2022-07-08 15:06:00 +00:00
Ramón Souza
16d871bdb5
Merge pull request #15174 from ramonlsouza/fix-poll-results-chat
fix: wrong poll results displayed in the chat when answers are grouped
2022-07-06 14:42:28 +01:00
Gustavo Trott
807f0286c9
Merge pull request #14786 from paultrudel/recording-api-changes 2022-06-30 15:57:23 -03:00
Paulo Lanzarin
240bb9e1cb
Merge pull request #15292 from prlanzarin/u26/fix/audio-undef-broker-onstop
fix(audio): check if broker exists before trying to stop
2022-06-29 15:42:05 -03:00
prlanzarin
f026c397d9 fix(audio): check if broker exists before trying to stop
There are scenarios where the full audio broker (SFU) stop  procedure
may be called multiple times in a very short timestamp - eg a concurrent
stop + connection failure; a timeout in the transfer procedure + a
reconnect attempt, [...]. When that happens, calls to exitAudio may throw
errors if the broker was already released - and that's not the expected
behavior.
2022-06-29 17:44:52 +00:00
prlanzarin
602238b84e refactor(audio): remove caller ID from fullaudio bridge start request
The callerId is assembled server-side as of bbb-webrtc-sfu
v2.9.0-alpha.3 based on the work done in commit
d940bff541b6fe3c4976428ca471457bc67ac97e.
2022-06-28 20:33:36 +00:00
mvasylenko
a2164e45d9 fix for issue #15209
Some slides of presentation not selectable if image is embedded
2022-06-28 09:10:18 -03:00
Ramon Souza
45dae6953d external upload area in presentation upload modal 2022-06-24 13:47:17 -03:00
Anton Georgiev
4402f20c34 chore: Merged BBB 2.5.2 into v2.6.x-release 2022-06-22 16:11:48 +00:00
mvasylenko
e0784b9c18
fix for issue #15209
Some slides of presentation not selectable if image is embedded
2022-06-20 15:50:49 +02:00
Ramon Souza
edeb70de0d Merge tag 'v2.5.1' into merge25-26-jun16 2022-06-16 13:58:54 -03:00
Ramon Souza
69eba762d3 fix grouping of poll results in chat 2022-06-13 13:08:44 -03:00
gabriellpr
79ed1d289b Swap version of bbb-diff npm dependency 2022-06-03 14:00:44 -03:00
Ramón Souza
f6b190aaa8
Merge pull request #15078 from lfzawacki/develop-layout
fix(layout): Fix propagation bugs and allow moderators to set the pushLayout flag
2022-06-02 19:48:07 +01:00
Ramón Souza
66286bf40d
Merge pull request #15080 from schrd/issue-14969
Fix: voice users not removed from participants list
2022-05-27 13:27:08 +01:00
Daniel Schreiber
9493929fec Fix: voice users not removed from participants list
`removeUser` was called with wrong parameters
2022-05-25 14:16:58 +02:00
Lucas Zawacki
cd13446c5a fix(layout): Moderators could not change layout if pushLayout was true 2022-05-24 17:31:35 -03:00
Ramón Souza
211953b242
Merge pull request #15013 from ramonlsouza/multi-tab-fix
fix: prevent user join from multiple tabs with same sessionToken
2022-05-23 14:31:53 +01:00
germanocaumo
6d4bd1e77c fix typo 2022-05-20 17:25:41 +00:00
germanocaumo
0bfda4bc53 fix persist of other tldraw shape operations (including groups and copy/paste) +
fix shape not persisting when other user than the owner changed it
2022-05-20 17:14:32 +00:00
KDSBrowne
8e612ee6db remove orphan console log 2022-05-20 12:42:39 +00:00
germanocaumo
dc56b969ed fix viewer crash when there is no presentation + some cleanup 2022-05-20 12:12:58 +00:00
germanocaumo
3a156ace07 fix camera zoom bugs and mantain zoom when switching slides 2022-05-19 17:24:47 +00:00
Ramon Souza
8986fe2853 prevent disconnect in same tab 2022-05-17 13:09:41 -03:00
Ramon Souza
5bddbdb4cf adjustments 2022-05-17 09:39:15 -03:00
Ramon Souza
3800065380 remove chat name 2022-05-13 17:44:41 -03:00
Ramon Souza
5397498746 prevent user join from multiple tabs with same sessionToken 2022-05-13 16:18:51 -03:00
KDSBrowne
5033898fe9 remove lockfileVersion and duplicate method 2022-05-13 02:47:41 +00:00
germanocaumo
45febec644 panAndZoom through akka + some cleanup 2022-05-13 02:47:41 +00:00
germanocaumo
cee766d1b6 cursor updates through akka 2022-05-13 02:47:40 +00:00
germanocaumo
234b2869e5 WIP: tldraw in akka-model & starting cleanup 2022-05-13 02:47:39 +00:00
KDSBrowne
10c8d3759d hack adding pres slide images and page switching 2022-05-13 02:43:40 +00:00
KDSBrowne
5cb29535f7 embed Tldraw into BBB client 2022-05-13 02:21:35 +00:00
prlanzarin
53570deb86 fix(screenshare): make viewers reconnect immediately mid-call
If a viewer session failed mid-call, it was being scheduled for a reconnect via
the min-max connection timers (30s-60s), which is terrible UX.

This commit makes screen sharing viewers try to reconnect immediately when
appropriate.
2022-05-10 14:35:59 +00:00
prlanzarin
d45aecdbcc fix(screenshare): remove broken presenter screen reconnect
Outbound/presenter screen sharing reconnect was broken from inception, so it's
being removed until it´s properly re-implemented.

This also fixes an issue where presenter disconnections would be silent for the
end user - now an error toast is shown and the error properly logged.
2022-05-10 14:35:59 +00:00
prlanzarin
98ec11c9b5 fix(screenshare): properly reset connection attempts on stop
Fixes an issue where subsequent failures might lead to wrong error codes being
reported;

Splits the screen sharing bridge stop method into a reconnect-safe version and
a public one - should also address some quirks with inbound stream reconnection.
2022-05-10 14:22:45 +00:00
Paulo Lanzarin
ae6ea67699
Merge pull request #14973 from prlanzarin/u26-wasserwelt-technik
fix(screenshare): guarantee local stream is cleaned up
2022-05-10 11:13:14 -03:00
Paulo Lanzarin
2ad4d08bab
Merge pull request #14972 from prlanzarin/u26-tenebrous-suite
fix(screenshare): race condition - local stream ends while broker starts
2022-05-10 11:01:59 -03:00
prlanzarin
83e26b7f63 fix(screenshare): race condition - local stream ends while broker stars
There could be a race condition where the local getDisplayMedia stream ends
(eg via Chrome`s stop sharing toast) while the broker hasn't finished starting.
That would lead to a scenario where the broker wouldn't emit an end event,
causing screen sharing to be flagged as started with a blank/invalid stream.
2022-05-09 18:00:30 +00:00
prlanzarin
68f090fbe5 fix(screenshare): guarantee local stream is cleaned up
There could be a scenario where the local gDM stream wasnt cleaned up;
eg.: SFU is offline.

This commit guarantees all tracks from the local stream are stopped.
2022-05-07 16:50:41 +00: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
prlanzarin
f5a2c4c8e7 fix(audio): fix change output device error log
this.user.callerIdName doesnt exist; error was logged as in its raw form (wrong)
2022-05-03 14:51:30 +00:00
prlanzarin
6a0e0a87c2 fix(audio): abide to signalCandidates configuration flag 2022-05-02 13:49:47 +00:00
Lucas
2db9a1b343
Merge branch 'develop' into develop-bbb 2022-04-26 15:08:43 -03:00
prlanzarin
ccc95583ee refactor(audio): restore trickle candidate filtering in new audio bridge
+ better error handling, log messages for that code
2022-04-25 16:45:18 +00:00
prlanzarin
1decc5d343 fix(audio): respect public.media.listenOnlyOffering in new audio bridge 2022-04-25 16:22:49 +00: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
prlanzarin
6fd6a52d47 fix(audio): prevent uncaught rejections in the experimental audio bridge startup 2022-04-20 17:40:06 +00:00
prlanzarin
1e80d050b7 refactor(audio): generic use of sfu audio broker to cover mic and listen only 2022-04-20 17:26:52 +00:00
prlanzarin
d125b34117 refactor(audio): address linter warning in FullAudioBridge.js 2022-04-19 19:18:04 +00:00
prlanzarin
3f03a94d29 fix(audio): use correct media server in listen only via fullaudio bridge 2022-04-19 19:16:22 +00:00
Arthurk12
cff605e996 feat(webcam): pin multiple cameras simultaneously
Adds support for multiple cameras pins.
The pinned cameras are stored in a FIFO-type queue
When a camera is pinned the oldest one is removed.
The queue size can be set via create parameter 'maxPinnedCameras',
if not defaults to 3.
2022-04-18 20:17:58 +00: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
Pedro Beschorner Marin
a21de5e5b7 fix(layout): enforce data type
Make sure the broadcasted payload data matches the message body's data
types.
2022-04-14 19:40:19 +00:00
Lucas Zawacki
7a5086cde8 fix(layout): Remove stray code from merge and fix indentation 2022-04-14 19:22:21 +00:00
Lucas Zawacki
378d0f18a0 Merge branch 'develop' of https://github.com/bigbluebutton/bigbluebutton into develop-bbb 2022-04-14 18:48:02 +00:00
Anton Georgiev
3ce6dbf997
Merge pull request #14665 from JoVictorNunes/breakout-update
feat: move users among breakouts
2022-04-14 08:22:49 -04: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
Anton Georgiev
aaef76cd2e Merge branch 'v2.5.x-release' of github.com:bigbluebutton/bigbluebutton into merge-25-dev 2022-04-13 20:58:02 +00:00
Gustavo Trott
725bed6797 Small fixes 2022-04-13 14:22:02 -03:00
Gustavo Trott
ecbfee26db Missing parts 2022-04-12 13:56:54 -03:00
Anton Georgiev
96c2fc9d86
Merge pull request #14734 from JoVictorNunes/issue-14721
fix: link sanitizing in welcome message
2022-04-12 10:36:59 -04:00
Gustavo Trott
77a8aba1f5 Merge remote-tracking branch 'upstream/develop' into breakout-updated 2022-04-12 09:54:25 -03:00
Gustavo Trott
102eee3ba5 Backend portion of breakout Manage Users 2022-04-12 09:50:19 -03:00
prlanzarin
f4ba6dd9a2 refactor(audio): use preloaded audio stream if provided
Avoids a surplus gUM with local echo test et al
2022-04-11 22:29:20 +00:00
prlanzarin
0d85905c83 fix(audio): centralize default in/out device id definitions, make them an empty string
"default" is not an universally valid default value for deviceIds which was causing issues with Firefox and Safari in some specific scenarios where exact deviceId constraints were being used
2022-04-11 19:23:32 +00:00
Anton Georgiev
1500fb6a29 Merge branch 'v2.5.x-release' of github.com:bigbluebutton/bigbluebutton into merge-25-dev 2022-04-09 00:55:25 +00:00
Anton Georgiev
33575e60e6 Merge branch 'develop' of github.com:bigbluebutton/bigbluebutton into v2.5.x-release 2022-04-09 00:48:14 +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
germanocaumo
cacba3c7e7 feat(html5): add meteor rtt as prometheus metric 2022-04-08 14:27:35 +00:00
Joao Victor
9a674c0df8 Merge remote-tracking branch 'upstream/develop' into breakout-update 2022-04-06 11:25:39 -03:00
Joao Victor
0e29c1fdc3 Fix link sanitizing in welcome message. 2022-04-04 17:34:16 -03:00
Ramon Souza
06da4e5e0d fix errors caused by develop merge 2022-04-04 16:52:43 -03:00
Ramon Souza
4c328bc4ea Merge remote-tracking branch 'upstream/develop' into issue-14382 2022-04-04 16:25:50 -03:00
Anton Georgiev
324388aa8e
Merge pull request #14016 from Tainan404/wip-new-msg-userLeftFlag
refactor: add msg userLeftFlag
2022-04-04 14:08:40 -04:00
Tainan Felipe
159a09be49 Small adjustments 2022-04-04 14:26:00 -03:00
Gustavo Trott
73977036cc Remove garbage 2022-04-01 17:30:39 -03:00
Gustavo Trott
839aeb2685 Remove UserEjectedFromMeetingEvtMsg occurrences 2022-04-01 17:11:28 -03:00
Anton Georgiev
72d37d799b
Merge pull request #14703 from ramonlsouza/pr-issue-14493
refactor: Add server side notification
2022-04-01 09:23:22 -04:00
Anton Georgiev
2a131086a7 Merge branch 'v2.5.x-release' of github.com:bigbluebutton/bigbluebutton into merge-25 2022-03-31 15:32:14 +00:00
Anton Georgiev
74db3a630b
Merge pull request #14658 from ramonlsouza/issue-14655
fix: Clear chat button is not working
2022-03-31 11:17:22 -04:00
Ramon Souza
b9a76feb18 use Meteor Random.id() for id generation 2022-03-31 11:43:58 -03:00
Anton Georgiev
bb92689904
Merge pull request #14601 from ramonlsouza/lgtm-mar15
refactor: remove unused imports/variables
2022-03-31 10:14:48 -04:00
Ramon Souza
0794f5188b Merge remote-tracking branch 'upstream/develop' into lgtm-mar15 2022-03-31 09:21:59 -03:00
Anton Georgiev
478605b6b0 Merge branch 'v2.5.x-release' of github.com:bigbluebutton/bigbluebutton into merge-25-develop 2022-03-30 18:19:28 +00:00
Ramon Souza
6874156190 add messageDescription in notifications 2022-03-30 11:01:12 -03:00
Ramon Souza
41778cb959 filter all messages by meetingId 2022-03-30 10:15:47 -03:00
Anton Georgiev
fc688f2038 Merge branch 'meteor-261' of github.com:ramonlsouza/bigbluebutton into meteor-261 2022-03-29 20:27:26 +00:00
Ramon Souza
4da4b8d7a9 Merge remote-tracking branch 'upstream/develop' into pr-issue-14493 2022-03-29 17:27:20 -03:00
Gustavo Trott
35ecbdbf80 Wait for user removal before kill connections 2022-03-29 16:08:34 -03:00
Guilherme Leme
c6653cd4b2 [Issue-14321]- Changes in Review 2022-03-25 14:12:10 -03:00
Ramon Souza
68f55b8c7b Merge remote-tracking branch 'upstream/develop' into issue-14382 2022-03-25 09:21:15 -03:00
Joao Victor
923e52a03a fix conflicts 2022-03-24 11:16:12 -03:00
Joao Victor
0ea405b67f feat: allow for moving users among breakouts + modal design updates 2022-03-24 10:56:07 -03:00
Ramon Souza
3c2c5a8080 fix clear chat 2022-03-23 17:11:01 -03:00
Anton Georgiev
351b7126c7 Merge branch 'v2.5.x-release' of github.com:bigbluebutton/bigbluebutton into develop 2022-03-23 15:11:47 +00:00
Lucas Zawacki
21703d9662 fix(layout): Fix propagation of layout type, simplify code 2022-03-22 19:13:52 +00:00
Gustavo Trott
a6c3af7b0f Add disabledFeatures=virtualBackgrounds 2022-03-22 16:01:27 -03:00
Arthurk12
eacce4ee46 fix(layout): camera resize when pushing
Adds isResizing property to LayoutMeetings collection.
Moves the point where the last camera dock size is stored from webcam
component to custom layout component, since it is the only one with
this feature.
2022-03-22 15:29:49 -03:00
Mario Junior
5778306626
Merge pull request #9283 from znerol-forks/feature/develop/sip-user-agent
Send browser UA string in SIP UA, also add BBB server and client version
2022-03-22 11:18:06 -03:00
Gustavo Trott
4cb563085f Implements param lockSettingsHideViewersCursor 2022-03-21 15:25:41 -03:00
Anton Georgiev
adfbaa4409
Merge pull request #14599 from gustavotrott/disabledFeatures-breakoutRooms
feat: Support to disable breakout rooms via disabledFeatures
2022-03-18 14:41:02 -04:00
Paulo Lanzarin
5fa7c18b43
Merge pull request #14621 from prlanzarin/u25-victorio-fuzz
fix(audio): clean up sfu broker, guarantee peer exists in getLocalStream
2022-03-17 14:39:41 -03:00
prlanzarin
13c6b12f89 fix(audio): clean up sfu broker, guarantee peer exists in getLocalStream 2022-03-17 11:20:19 -03:00
Ramon Souza
a89e9da4ea Merge remote-tracking branch 'upstream/develop' into issue-14382 2022-03-16 16:53:17 -03:00
Ramon Souza
2a7d8eb043 Merge remote-tracking branch 'upstream/develop' into lgtm-mar15 2022-03-16 16:30:24 -03:00
Gustavo Trott
6562cbc6e7
Merge branch 'v2.5.x-release' into disabledFeatures-breakoutRooms 2022-03-16 14:57:46 -03:00
Anton Georgiev
405d326ea7
Merge branch 'v2.5.x-release' into meteor-261 2022-03-16 11:55:31 -04:00
Anton Georgiev
0d1d45245c
Merge pull request #14570 from gustavotrott/disabledFeatures-notes
feat: Support to disable shared notes and captions via disabledFeatures
2022-03-16 11:45:52 -04:00
Paulo Lanzarin
e9c400e61b
Merge pull request #14211 from prlanzarin/u25-victorio-fuzz
feat(fullaudio): implement echo test, device change and audio filters (new bridge)
2022-03-16 12:36:50 -03:00
Ramon Souza
429a9de4dd remove unused imports and variables 2022-03-15 13:11:20 +00:00
Guilherme Leme
b080e889f6 Merge remote-tracking branch 'upstream/v2.5.x-release' into issue-14243 2022-03-14 16:05:44 -03:00
Gustavo Trott
5fdacf93dd Merge remote-tracking branch 'upstream/v2.5.x-release' into disabledFeatures-breakoutRooms 2022-03-14 15:33:04 -03:00
Gustavo Trott
adc1c8cef8 Implements disabledFeatures=breakoutRooms 2022-03-14 15:30:41 -03:00
Guilherme Leme
b765312a2e [issue-14321] - refactored name of variable presId to tmpPresId in order to make more sense in the context of presentation-token-upload and presentation collections. 2022-03-14 14:46:51 -03:00
Guilherme Leme
9104a0308e [issue-14321] - Changes to make it possible to send 2 presentations with the same name 2022-03-14 12:10:27 -03:00
Ramón Souza
35ae2a9e77 record notify modal 2022-03-11 20:26:26 +00:00
Tainan Felipe
fbb0f23510
Merge branch 'v2.5.x-release' into wip-notifications 2022-03-10 16:42:43 -03:00
Tainan Felipe
8858878d0d Add server side notification 2022-03-10 16:33:25 -03:00
Gustavo Trott
9f939513b0 Implements disabledFeatures=captions 2022-03-10 15:02:20 -03:00
prlanzarin
d9c329df27 refactor(fullaudio): remove server-provided RPC parameters 2022-03-10 14:59:43 -03:00
prlanzarin
b9f9043d9c feat(fullaudio): handle forceRelayOnFirefox flag 2022-03-10 14:31:42 -03:00
Pedro Beschorner Marin
5cd2b0b635 Merge remote-tracking branch 'bigbluebutton/v2.5.x-release' into f-v-amccc 2022-03-10 12:25:17 -03:00
Lucas Zawacki
559b6f59c2 fix(layout): Remove unused options 2022-03-09 18:04:21 -03:00
Gustavo Trott
537704ef0e Implements disabledFeatures=sharedNotes 2022-03-09 16:23:38 -03:00
Ramón Souza
266d62a350 replace deprecated dependency http 2022-03-09 16:41:53 +00:00
Pedro Beschorner Marin
6ff1d680d9 feat(video): add meeting camera cap control
Include `meetingCameraCap` API param on create and enforce both server and
client to control the number of simultaneous webcams a meeting can have.

Disabled by default.
2022-03-07 09:36:55 -03:00
Gustavo Trott
f045aa7c31
Merge branch 'v2.5.x-release' into disabledFeatures-learningDashboard 2022-03-03 15:48:49 -03:00
Anton Georgiev
5f884f6674 Merge remote-tracking branch 'bbb/v2.4.x-release' into merge-24-into-25 2022-03-03 18:35:05 +00:00
Lucas Zawacki
140e08a730 Adapt code for merge 2022-03-02 11:24:54 -03:00
Anton Georgiev
3bd37f2ea4
Merge pull request #14492 from ramonlsouza/issue-14488
fix: Client crashing when clicking to "Select random user"
2022-03-02 09:20:58 -05:00
Anton Georgiev
212578b7c8
Merge branch 'v2.5.x-release' into disabledFeatures-learningDashboard 2022-03-02 08:46:31 -05:00
Anton Georgiev
9f6c6b7a0b
Merge pull request #14441 from pedrobmarin/r-s-fpr
refactor(screenshare): FreeSWITCH partial removal
2022-03-02 08:36:14 -05:00
Gustavo Trott
9d6eaead02 Move api param learningDashboardEnabled to disabledFeatures 2022-03-01 17:27:54 -03:00
Ramón Souza
3c8d620811 fix client crash in random user selection modal 2022-03-01 14:01:21 +00:00
Lucas Zawacki
9f51c19c24 fix(layout): Avoid crash on layout when reconnecting 2022-02-25 15:05:34 -03:00
Anton Georgiev
8c29a6568f
Merge pull request #14344 from zhem0004/fixPhoneJoinPermission
Fix: dial in users obey guest policy
2022-02-24 15:26:44 -05:00
Anton Georgiev
a75ab0c073
Merge pull request #14421 from gustavotrott/update-breakout-duration
feat: Update breakout duration
2022-02-24 15:18:54 -05:00
Anton Georgiev
57f53918f0
Merge branch 'v2.5.x-release' into fixPhoneJoinPermission 2022-02-24 15:16:11 -05:00
Gustavo Trott
6839a424c1 Merge remote-tracking branch 'origin/update-breakout-duration' into update-breakout-duration 2022-02-24 13:53:01 -03:00
Lucas Zawacki
6dfdc6a579 feature(layout): Push most layout parts with custom layout 2022-02-24 13:21:16 -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
Lucas Zawacki
48fb85d2b7 feature(layout): Separate layout data into a different collection 2022-02-23 17:46:54 -03:00
Pedro Beschorner Marin
6d80a413cf refactor(screenshare): FreeSWITCH partial removal
Remove part of the old FreeSWITCH dependent WebRTC screenshare feature.
2022-02-23 13:03:51 -03:00
Max Franke
9cddb7eaf5 feat(layout): layout default userdata
Adds the option to change a user's default layout via userdata.
userdata-bbb_change_layout=<smart/videoFocus/presentationFocus/custom>
2022-02-23 12:04:26 -03:00
Pedro Beschorner Marin
e8ff5ebdc8 feat(video): add user camera cap control
Include `userCameraCap` API param on create and enforce both server and
client to control the number of simultaneous webcams an user can share.

Default set to 3.
2022-02-22 13:13:48 -03:00
Guilherme Leme
55f8d9266e [issue-14243] - Fix to accept the chatEmphasizedText in recording and akka components. 2022-02-22 12:00:36 -03:00
Gustavo Trott
fb263babe6 Implements update breakout duration, and removes extend 2022-02-21 08:14:34 -03:00
Anton Georgiev
60302d3e35
Merge pull request #14405 from antobinary/2.4.4-branch
Merge 2.4.4 into 2.5-alpha-1
2022-02-18 12:19:13 -05:00
Anton Georgiev
2d3c12def3
Merge pull request #14264 from GuiLeme/issue-14014
Created endpoint to insert file into presentation.
2022-02-16 15:10:12 -05:00
Tainan Felipe
83426eec3a Remove eject message usage and use user left message instead 2022-02-16 16:39:24 -03:00
Tainan Felipe
68346a8ac9 Rename the message to userLeftFlagUpdated 2022-02-16 15:46:02 -03:00
Tainan Felipe
3061f29751 Merge remote-tracking branch 'upstream/v2.5.x-release' into wip-new-msg-userLeftFlag 2022-02-16 11:29:15 -03:00
Pedro Beschorner Marin
abdea74fc9
Merge pull request #14314 from frankemax/webcam-sync
fix(webcam): add state sync between bbb-html5 and akka-apps
2022-02-14 10:19:58 -03:00
Guilherme Leme
2baf0930da [issue-14243] - On front-end, added feature to keep the role in the message, and did some refactor to change name of isModerator variable. 2022-02-14 10:10:32 -03:00
Anton Georgiev
006a9f9ffc
Merge pull request #14293 from gustavotrott/api-param-disabledFeatures
feat: new api Create param: disabledFeatures
2022-02-10 15:51:34 -05:00
Guilherme Leme
0055e08373 [issue-14014] - Resolved merging conflicts. 2022-02-10 15:41:16 -03:00
Guilherme Leme
f9d97ca562 [issue-14014] / [issue-14313] / [issue-14312] - Fixed and refactored back-end to fit the logic of passing parameters, not only by document with url, but by base64 encoded document too. And refactored front-end. 2022-02-10 15:27:44 -03:00
Bohdan Zhemelinskyi
c02c899dac fix on comment 2022-02-10 15:43:19 +00:00
Bohdan Zhemelinskyi
0c63f0899e fixed join permission for Phone Users 2022-02-10 15:42:26 +00:00
Paulo Lanzarin
8d91bae7e8
Revert "fix: Phone users to abide by guest policy" 2022-02-09 20:02:38 -03:00
Max Franke
d75734391a fix(webcam): add state sync between bbb-html5 and akka-apps 2022-02-09 16:48:16 -03: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
Guilherme Leme
006340489d [issue-14014] - Reverted debug changes in front-end and implemented the new front-end logic to fit the insert api end-point. 2022-02-09 10:37:40 -03:00
Anton Georgiev
f13266e3b9
Merge pull request #14295 from Tainan404/backport-validatonAuthToken
Backport the validationAuthToken refactor
2022-02-07 14:59:28 -05:00
Gustavo Trott
56de9af7d4 Undo comma removing 2022-02-07 16:00:13 -03:00
Gustavo Trott
580ebdc066 Move disabledFeatures to meetingProp, and rename feat screensharing to screenshare 2022-02-07 15:55:45 -03:00
Gustavo Trott
dad9be2a6a Merge remote-tracking branch 'upstream/v2.5.x-release' into api-param-disabledFeatures 2022-02-07 10:23:28 -03:00
Gustavo Trott
de4688bcdc Implement new param disabledFeatures 2022-02-07 10:22:52 -03:00
Guilherme Leme
ea09c7001c [issue-14014] - WIP adding current tag on presentation payload 2022-02-04 14:52:53 -03:00
Anton Georgiev
196e069160
Merge pull request #14173 from GuiLeme/issue-13238
feat(presentation): Add removable and downloadable attributes to payload.
2022-02-03 12:16:10 -05:00
Anton Georgiev
7152d23e39
Merge pull request #14147 from zhem0004/fixPhoneJoinPermission
fix: Phone users to abide by guest policy
2022-02-03 12:07:47 -05:00
Anton Georgiev
68f9c36d8e
Merge pull request #14228 from gustavotrott/breakouts-message-to-all
feat: Send a chat message to all breakouts simultaneously
2022-02-03 10:25:20 -05:00
Guilherme Leme
75f3eab3f8 Resolve merging conflicts 2022-02-03 12:03:26 -03:00
Guilherme Leme
715888584b Front-end changes to fit the removable and downloadable properties. 2022-02-03 11:37:14 -03:00
Bohdan Zhemelinskyi
cc10a31c78 fix on comment 2022-02-02 21:07:18 +00:00
Ramón Souza
c5e9b3a02f remove user data when not needed 2022-02-02 13:53:23 +00:00
prlanzarin
d04d7c92dc feat(fullaudio): handle audio filter/constraint changes in new bridge 2022-02-01 17:19:56 -03:00
prlanzarin
ed89f6e4a5 feat(fullaudio): implement input/output device change in new bridge 2022-02-01 17:19:50 -03:00
prlanzarin
e667f7aecb refactor(fullaudio): make some of the SIP.js input/output code re-usable
To be used by other bridges
2022-01-31 16:30:38 -03:00
Gustavo Trott
eb567eb106 Handle message to all breakouts sent 2022-01-28 14:41:10 -03:00
Ramón Souza
457175dbba allow moderators to see disconnected users data 2022-01-27 18:45:04 +00:00
Bohdan Zhemelinskyi
fe91b448c2 Merge branch 'v2.4.x-release' of https://github.com/bigbluebutton/bigbluebutton into fixPhoneJoinPermission 2022-01-27 15:43:48 +00:00
Tainan Felipe
33738d8c2e Merge remote-tracking branch 'upstream/v2.4.x-release' into wip-new-msg-userLeftFlag 2022-01-27 09:48:14 -03:00
Gustavo Trott
4e3711c1bd Resolve conflicts on backend marging 24->Develop 2022-01-27 08:29:14 -03:00
Gustavo Trott
759535eb62 Implements message to all breakout rooms 2022-01-26 17:02:38 -03:00
prlanzarin
599a5556b5 refactor(listen-only): use this.bridgeName for logging 2022-01-26 11:03:27 -03:00
prlanzarin
cb84e34833 feat(fullaudio): implement echo test in new full audio bridge
Partially addresses https://github.com/bigbluebutton/bigbluebutton/issues/14191
2022-01-26 11:03:27 -03:00
prlanzarin
f4e6e6c4f4 refactor(fullaudio): make call transfer code reusable
Allows state tracking and transfer execution to be re-used by other audio bridges
2022-01-26 11:03:24 -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
Anton Georgiev
2e72946bc1
Merge pull request #14088 from zhem0004/fixPhoneBan
Fix: Removing phone users always bans them
2022-01-24 15:50:30 -05:00
Anton Georgiev
a761f0177a
Merge pull request #14143 from frankemax/fix-userdata-injection
fix(userdata): consistent breakout room userdata
2022-01-24 15:10:38 -05:00
Anton Georgiev
b8ba4b5c71
Merge pull request #14075 from gustavotrott/api-create-virtual-background-param
Add param to disable Virtual Backgrounds in API /create
2022-01-24 15:04:30 -05:00
Pedro Beschorner Marin
c9043655f1
Merge branch 'develop' into position-in-waiting-queue 2022-01-24 14:31:03 -03:00
Tainan Felipe
4946c1ff41 Backport the validationAuthToken refactor 2022-01-21 21:25:53 -03: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
SashoVihVas
d99c271fa6 This commit includes following changes:
1.HashMap updates in Meeting.java are updated
2.callback is removed from setGuestStatus.js
3.MeetingService.java passes the guest list instead of iterating through it
2022-01-20 18:24:25 +00:00
Bohdan Zhemelinskyi
8582ccd6db fixed join permission for Phone Users 2022-01-19 18:35:04 +00:00
Pedro Beschorner Marin
4a0882f9f2 fix(userdata): merge breakout room userdata
Avoid using MongoDB to copy breakout room user's userdata. All userdata is
now merged at bbb-web's join API call.
2022-01-19 10:58:13 -03:00
Aleksandar Vasilev
6935b8293c
Merge branch 'bigbluebutton:develop' into position-in-waiting-queue 2022-01-16 02:59:40 +01:00
Aleksandar Vasilev
6103ae960d
Merge branch 'bigbluebutton:develop' into develop-private-guest-lobby-messages 2022-01-16 02:58:43 +01:00
Bohdan Zhemelinskyi
df3da31f39 fixUsersGettBannedFromPhone 2022-01-13 18:43:16 +00:00
prlanzarin
8e822f4a6d fix(screenshare): add state sync between bbb-html5 and akka-apps
A TODO 5 years in the making
2022-01-12 19:36:38 -03:00
Gustavo Trott
7d55cac005 Implements virtualBackgroundsDisabled param to API /create 2022-01-12 18:21:58 -03:00
Anton Georgiev
d30fc98af0
Merge pull request #13894 from ramonlsouza/remove-user-persistent
refactor: Remove unused user data on leave
2022-01-12 14:10:03 -05:00
germanocaumo
b71b9a0c85 fix(polls): fix wrong typed poll results due to race condition
Sometimes a vote for a new answer text was being computed as a vote for the first option due to poll collection late update.
2022-01-12 17:41:02 +00:00
Ramón Souza
f6e65f58c5 merge 2.4 into develop and resolve conflicts - partial 2022-01-12 16:40:45 +00:00
SashoVihVas
1862f60e05 Add private guest lobby messages 2022-01-12 14:10:30 +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
Tainan Felipe
a0a20e46ac Fix typo in validate authtoken method 2022-01-10 15:29:25 -03:00
Tainan Felipe
68942d45db Merge branch 'wip-new-msg-userLeftFlag' of github.com:Tainan404/bigbluebutton into wip-new-msg-userLeftFlag 2022-01-07 11:41:19 -03:00
Tainan Felipe
5ae5d230b8 Create util function in HandlerHelper 2022-01-07 11:37:23 -03:00
Tainan Felipe
6ed8fb304a
Merge branch 'v2.4.x-release' into wip-new-msg-userLeftFlag 2022-01-06 18:20:32 -03:00
Tainan Felipe
9c844bdd26 Add userLeftFlag message 2022-01-06 18:07:22 -03:00
Ramón Souza
1ddb15eb8a Merge remote-tracking branch 'upstream/v2.4.x-release' into remove-user-persistent 2022-01-06 16:26:23 +00:00
Daniel Schreiber
6dcc4cab75 Fix telephone dialin
this fixes a crash in bbb-html5 when someone uses phone dialin. The
crash resulted in users joining the audio convference but not being
visible in the users list.

Fixed stack trace:

~~~
error: UserJoinedVoiceConfToClientEvtMsg: Error: Match error: Missing key 'pin'
    at check (packages/check/match.js:36:17)
    at addUser (imports/api/users/server/modifiers/addUser.js:23:3)
    at addDialInUser (imports/api/users/server/modifiers/addDialInUser.js:30:10)
    at EventEmitter.handleJoinVoiceUser (imports/api/voice-users/server/handlers/joinVoiceUser.js:36:5)
    at EventEmitter.emitAsync (/usr/share/meteor/bundle/programs/server/npm/node_modules/eventemitter2/lib/eventemitter2.js:463:31)
    at MeetingMessageQueue.handleTask (imports/startup/server/redis.js:114:10)
    at imports/startup/server/redis.js:126:28
    at Queue.start (/usr/share/meteor/bundle/programs/server/npm/node_modules/queue/index.js:145:17)
    at Queue.<computed> [as push] (/usr/share/meteor/bundle/programs/server/npm/node_modules/queue/index.js:59:12)
    at MeetingMessageQueue.add (imports/startup/server/redis.js:125:16)
    at RedisPubSub.handleMessage (imports/startup/server/redis.js:327:63)
    at runWithEnvironment (packages/meteor.js:1320:24)
~~~
2022-01-03 14:22:28 +01:00
Max Franke
85ad9a5e30 feat(video): webcam video pinning server side logic
Add the new ChangeUserPinState messages to handle the new video pinning
functionality
2021-12-21 16:58:38 -03:00
Anton Georgiev
c7206bb59e
Merge pull request #13866 from ramonlsouza/presenter-polls
fix: increase current-poll security
2021-12-15 13:40:19 -05:00
Ramón Souza
fd874aa10a Merge remote-tracking branch 'upstream/v2.4.x-release' into remove-user-persistent 2021-12-15 18:04:02 +00:00
Anton Georgiev
0b82fb9fdb
Merge pull request #13893 from Tainan404/fix-the-auth-loop
re-implement the server-side connection close when user is removed
2021-12-15 12:41:12 -05:00
Anton Georgiev
ff63e6541f
Merge pull request #13927 from Tainan404/fix-loop-auth
Revert auth token validation publisher changes
2021-12-15 11:51:15 -05:00
Anton Georgiev
b0c66caef9
Merge pull request #13915 from prlanzarin/u24-sprawling-pier
feat(webcams): add option to allow moderators to close another user's webcams
2021-12-15 09:24:11 -05:00
Tainan Felipe
da065cb6ea Revert auth token validation publisher changes 2021-12-15 11:06:07 -03:00
Anton Georgiev
a1fff7508d
Merge pull request #13876 from prlanzarin/u24-malibu-bubu
fix(fullaudio): remove cross wired configs
2021-12-14 16:44:59 -05: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
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
Ramón Souza
b10544aba5 remove user data on leave + video fix 2021-12-10 19:13:26 +00:00
Tainan Felipe
fb6aae1a02 re-implement the server-side connection close when user is removed 2021-12-10 15:38:55 -03:00
Anton Georgiev
328b3c1563
Revert "fix: Fix server side connection close on user disconnection" 2021-12-09 17:27:35 -05:00
Anton Georgiev
b6cf565ca6
Revert "refactor: Remove unused user data on leave" 2021-12-09 16:56:25 -05: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
d59f910d84 fix(fullaudio): remove cross wired configs
Offer direction should only be controlled that way in listen only
2021-12-08 23:45:45 -03:00
Ramón Souza
6a6f690282 increase current-poll security 2021-12-08 19:30:04 +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
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
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
8bbb2b3cae
Merge pull request #13773 from ramonlsouza/remove-persistent-on-leave
Remove unused user data on leave
2021-12-02 15:37:34 -05:00
Gustavo Trott
9488392116 Removes breakoutStarted handler once it will not be listened anymore 2021-12-02 16:02:28 -03:00
Gustavo Trott
ba5f38f504 Merge with breakout-history pr 2021-12-02 14:22:51 -03:00
Paulo Lanzarin
a52091e2ab
Merge pull request #13789 from prlanzarin/u24-spiraling-dynamically
chore: add forceRelayOnFirefox option (false by default)
2021-12-02 11:27:29 -03:00
Gustavo Trott
54d510bae1 Merge remote-tracking branch 'upstream/develop' into fix-breakout-freejoin-assignments 2021-12-02 11:10:58 -03:00
Gustavo Trott
fe944c1bdb Fix breakouts assignments when freeJoin is true 2021-12-02 11:05:42 -03:00
Anton Georgiev
bdd31b4dbc
Merge pull request #13802 from Tainan404/remove-parameters-from-publishers
Removes parameters usage in the group-chat-messages and authtoken-validation publishers
2021-12-01 15:29:12 -05:00
Anton Georgiev
94f85ad68a
Merge pull request #13678 from gustavotrott/breakouts-n-groups-assignments-2.5
feat: Auto assign Breakouts (names and users) using previous rooms info or groups info
2021-12-01 15:01:23 -05:00
Tainan Felipe
091ef11d6a Remove parameters usage from group-chat-messages and authtoken-validation 2021-12-01 14:47:08 -03: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
Ramón Souza
f5cde413f2 fix external video streamer leak 2021-11-30 20:22:41 +00:00
Maxim Khlobystov
b7cf670aec Remove the support for iframe postMessage API (recording and self-muting) 2021-11-29 22:53:12 +00:00
Anton Georgiev
5bdf2b86ac
Merge pull request #13763 from ramonlsouza/poll-response-leak
fix: prevent poll response leak
2021-11-29 13:58:04 -05:00
Ramón Souza
304c16c519 remove voiceUsers data on leave 2021-11-29 13:59:21 +00:00
Ramón Souza
9a078b1bd6 remove previous connections auth-token-validation data 2021-11-29 13:50:31 +00:00
Ramón Souza
50546934c9 remove user persistent-data from collection on leave 2021-11-29 13:34:09 +00:00
Ramón Souza
69689646b7 prevent poll response leak 2021-11-26 17:02:06 +00:00
Anton Georgiev
60c1339a1f
Merge pull request #13757 from ramonlsouza/typed-poll-single-answer
fix: prevent users from being able to send more than one typed poll answer
2021-11-26 10:24:47 -05:00
Ramón Souza
30f6a642dd prevent users from being able to send more than one typed poll answer 2021-11-25 17:51:36 +00:00
Tainan Felipe
24ae9d3628 Fix server side connection close on user disconnection 2021-11-23 17:45:49 -03:00
Gustavo Trott
90837505ff use the absolute path 2021-11-22 11:35:44 -03:00
Gustavo Trott
a2aeae8ac4 use the absolute path 2021-11-22 11:27:30 -03:00
Gustavo Trott
a300b4c66d use the absolute path 2021-11-22 11:25:21 -03: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
Gustavo Trott
cf61057e94 Adds publicationSafeGuard to breakouts-history 2021-11-19 17:42:33 -03:00
Gustavo Trott
305e26172e Migrates breakout-history to new local collections 2021-11-19 16:34:37 -03:00
Gustavo Trott
0458212531 Merge remote-tracking branch 'upstream/develop' into breakouts-n-groups-assignments-2.5 2021-11-19 16:16:00 -03:00
Anton Georgiev
542db847ff
Merge pull request #13574 from Tainan404/smooth-reconnection-25
Improve data structure to not break on reconnections
2021-11-17 15:55:21 -05:00
Ramón Souza
4207502db1 remove unused imports/exports 2021-11-17 12:26:26 +00:00
Arthurk12
c2e90ede11 feat(screenshare): gain node
Splits screenshare stream into video and audio and adds gain node to audio
stream in order to permit volume control by the user. Volume is normalized
between [0, 2](muted and 2x boost).
2021-11-12 16:30:39 +00:00
Gustavo Trott
ad4ab7ed48 Undo wrong changes 2021-11-11 14:08:01 -03: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
Mario Jr
a719f8f5e4 fix(audio): update fullaudio bridge according to sonar's checks 2021-11-09 12:10:44 -03: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
f9dbefe764 feat(audio): basic funcionality for fullaudio bridge
This commit allows user to join/leave audio using the fullaudio bridge.
This is still under development, but to use this now we must set values of
skipCheck to false, and defaultFullAudioBridge to fullaudio. This
depends on newest version of bbb-webrtc-sfu
2021-11-09 12:09:18 -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
86ef834476 fix(audio): bridges can be dynamically imported
Added bridge whitelist , to allow bridge modules to be dynamically imported.
2021-11-09 12:08:18 -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
Anton Georgiev
9372d0b0a2
Merge pull request #13630 from zhem0004/randomUserOrdering
Random user ordering
2021-11-04 13:48:25 -04: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
Tainan Felipe
f5eef03f3f Improve data structure to not break on reconnections 2021-11-03 14:37:54 -03:00
Anton Georgiev
019a0b25b9
Merge pull request #13564 from jfsiebel/remove-unused-property-chat-message
Remove unused properties from chat message event
2021-11-02 15:12:56 -04:00
Anton Georgiev
13aba985cb
Merge pull request #10737 from hiroshisuga/fillshape
feat: Fill shape in whiteboard
2021-11-02 15:03:22 -04:00
Tainan Felipe
3e7d88586e Enhances authToken validation to solely use Meteor.call 2021-10-28 15:16:16 -03: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
Anton Georgiev
c60ef3c179
Merge pull request #13253 from ramonlsouza/PR-11359
feat: multiple choice poll
2021-10-26 14:42:29 -04:00
Joao Siebel
7a118ed3b8 Remove unused properties from chat message event record. close #11696 2021-10-25 14:46:59 -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
3ccc59ac63
Merge pull request #13521 from lfzawacki/userdata-layout
Userdata flags for hiding some layout elements
2021-10-20 08:43:18 -04:00
Lucas Zawacki
8f346b6ae4 feature(layout): userdata to hide navbar 2021-10-19 20:43:33 +00:00
Lucas Zawacki
e5ac30fd46 feature(layout): userdata flag for hiding actions bar 2021-10-19 19:20:31 +00:00
Ramón Souza
1cc066366f Merge remote-tracking branch 'upstream/develop' into PR-11359 2021-10-19 16:41:36 +00:00
Gustavo Trott
0102104fbe Makes bbb-web provide LearningDashboard data while meeting is alive 2021-10-14 14:00:25 -03: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
Tainan Felipe
1de8e0779d Add server side reactivity to publications 2021-10-13 15:00:52 -03:00
Anton Georgiev
d2d8287fb6 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-23-24 2021-10-06 17:27:37 +00:00
Anton Georgiev
585c263129
Merge pull request #13425 from pedrobmarin/f-cc-cr
fix(closed captions): captions recording
2021-10-06 10:00:21 -04:00
Pedro Beschorner Marin
3bf1eeeeaf fix(closed captions): captions recording
Missing updates on Meteor's data validation for the closed captions
backend recording events.
2021-10-06 10:50:07 -03: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
Anton Georgiev
563bf2caca
Merge pull request #13392 from pedrobmarin/f-sn-aps
fix(shared notes): avoid padId subscription
2021-10-05 12:26:37 -04:00
Anton Georgiev
c2a48a5e9d
Merge pull request #13396 from pedrobmarin/f-cc-aps
fix(closed captions): avoid padId subscription
2021-10-05 12:26:26 -04:00
Anton Georgiev
9bc10c1a88
Merge pull request #13402 from ramonlsouza/pr-13396-24
fix(closed captions): avoid padId subscription (2.4)
2021-10-05 12:25:17 -04:00
Tainan Felipe
0a00588651 Create custom cursor for current poll and user 2021-10-04 17:01:20 -03:00
Ramón Souza
3840d4ff63 fix(closed captions): avoid padId subscription
Remove padIds from the closed captions MongoDB collection subscription.

Users now have to fetch the padId from Meteor when needed. Meteor is
responsible for checking the user's access level and return the
proper id.
2021-10-04 19:22:18 +00:00
Pedro Beschorner Marin
c42d66a68f fix(shared notes): avoid padId subscription
Remove padIds from the shared notes MongoDB collection subscription.

Users now have to fetch the padId from Meteor when needed. Meteor is
responsible for checking the user's access level and return the
proper id.
2021-10-04 18:01:19 +00:00
Pedro Beschorner Marin
b65d253143 fix(closed captions): check owner on text append
Avoid appendText call if the requester is not the closed captions' pad
owner.
2021-10-04 14:40:43 -03:00
Pedro Beschorner Marin
f7793bdc4b fix(closed captions): avoid padId subscription
Remove padIds from the closed captions MongoDB collection subscription.

Users now have to fetch the padId from Meteor when needed. Meteor is
responsible for checking the user's access level and return the
proper id.
2021-10-04 14:35:53 -03:00
Anton Georgiev
9e972f0534
Merge pull request #13325 from jfsiebel/prevent-setInPod-loop
fix: Prevent a case where the setInPod get stuck on a loop
2021-10-04 10:41:34 -04:00
Pedro Beschorner Marin
995b6aad41 fix(shared notes): avoid padId subscription
Remove padIds from the shared notes MongoDB collection subscription.

Users now have to fetch the padId from Meteor when needed. Meteor is
responsible for checking the user's access level and return the
proper id.
2021-10-04 10:18:40 -03:00
Gustavo Trott
b07012df16 Removes prop users from BreakoutModel and add prop url_ instead 2021-10-01 13:19:01 -03:00
Gustavo Trott
be4f0bcebf Removes prop users from BreakoutModel and add prop url_ instead 2021-10-01 10:44:01 -03:00
Ramon Souza
a820461b63 fix 13232 regression 2021-09-29 14:52:30 -03:00
Joao Siebel
e1c825136c Prevent a case where the setInPod get stuck on a loop. close #12284 2021-09-29 13:22:18 -03:00
Mario Jr
7ed1cbfc30 Merge branch 'v2.4.x-release' into fix-13242 2021-09-29 09:20:58 -03:00
Mario Jr
519883e89a update(audio): adjust reference to ignoreCallState flag 2021-09-24 14:48:22 -03: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
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
6936f61495
Merge pull request #13261 from Tainan404/chat-improve-performance-develop
Implements CollectionEventsBroker for chat context - develop
2021-09-22 12:21:53 -04:00
Tainan Felipe
543b57dff5 Improve readability 2021-09-22 11:52:01 -03:00
Tainan Felipe
6a480a4946 Implements collection hooks to chat context 2021-09-22 11:51:50 -03:00
Mario Jr
1c08fc852a fix(audio): audio controls crash when ending call during brekout audio transfer
Restored the old behavior when ending breakout rooms while user is in the
breakout audio transfer, which is to the trigger the reconnection to the audio
in the main room.
This behavior could be improved by (instead of reconnecting) transfering user
back to the main room, but this requires some changes in akka-apps/fsesl
which can be treated in a different issue.

Closes #13242
2021-09-21 11:22:05 -03:00
Ramon Souza
a8541eda6e remove linting 2021-09-17 10:38:10 -03:00
Ramon Souza
0ca1b7896e Merge remote-tracking branch 'upstream/develop' into PR-11359 2021-09-17 09:12:43 -03:00
Ramon Souza
de53770d77 fix breakout room multiple invitations 2021-09-15 14:43:51 -03:00
Ramon Souza
58cd6b2241 ensure breakout invitation is sent 2021-09-06 15:54:12 -03:00
Mario Jr
b74e4c6ca5 fix(audio): bridges can be dynamically imported
Added bridge whitelist , to allow bridge modules to be dynamically imported.
2021-09-01 13:22:43 -03: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
9d9ed9ce72 fix(screenshare): propagate media server metadata to screen sharing viewers
Originally the adapter was inferred server side; I removed that
2021-08-31 01:26:39 +00:00
prlanzarin
58a8e99195 feat: add media server configuration via metadata
Applies to video, listen only and screen sharing

New metadata values: media-server-video, media-server-listenonly, media-server-screenshare; parameter is a String
2021-08-31 00:39:45 +00:00