Commit Graph

2917 Commits

Author SHA1 Message Date
prlanzarin
7c77fc7433 Merge remote-tracking branch 'origin/v2.7.x-release' into reactions-port 2023-05-25 19:54:01 -03:00
Arthurk12
461be7a7fc fix(reactions): method call
Update method call to the unified one(setUserReaction) and include the userID
parameter, so it can be used by mods to clear others status as well.
2023-05-25 17:42:02 -03:00
Arthurk12
196d2c1e0a feat(reactions): sync expiration with akka
Currently, the reactions are cleared on mongo based on the expire time.
So to sync its state with akka, an observer is atattched to the user
reactions collection and whenever a reaction is removed because of the
expiration time, akka is notified with message 'UserReactionTimeExpiredCmdMsg'.
2023-05-25 17:32:27 -03:00
prlanzarin
636ab74826 fix(screenshare): adjustments to make output device switching work 2023-05-24 11:40:32 -03:00
Arthurk12
3efdbd9012 feat(reactions): add akka messages to clear all emojis status
Adds two new messages which clear the users emoji statuses. This messages
enables this task to be done in a single call, instead of triggering one
method call for each user.
'ClearAllUsersEmojiCmdMsg' is sent from meteor to akka and updates all the
emoji states in the users model.
'ClearedAllUsersEmojiEvtMsg' is sent from akka to meteor. This triggers the
 mongo collection update.
2023-05-24 10:49:42 -03:00
Scroody
08a0226b59 Fix: Send to chat presentation not having unread notification 2023-05-19 10:54:29 -03:00
Arthurk12
f13217607e feat(timer): add model and messages to akka apps
This commit makes the messages of the timer feature to be proxied by
akka-apps and also adds a timer model that is updated based on these
messages.
Moving the timer panel opening logic to the timer button component in
the navigation panel was a consequence of these changes.
2023-05-18 15:29:42 -03:00
AtilaU19
7a6e457f5d refactor(timer): updateTimer fuction argument list
Replacement of the list of arguments of the update Timer function in an object and adequacy of its calls in the functions when necessary.
2023-05-18 15:29:39 -03:00
Arthurk12
02a6feb1c8 fix(timer): change users count threshold
Changes the timer auto-stop threshold from 90% to 100% of user count
to prioritize the timer alert sounding for all users over the timer state
being consistent.

Also, puts the user count fetch back to where it was to avoid a race
condition where the number of users when setting the observer is
different than when the timer ends(i.e. users've joined or left the
meeting while the timer was running) causing the timer not to stop or
stop prematurely.
2023-05-18 15:29:39 -03:00
Arthurk12
6628296471 fix(timer): wrong attribute to get users count
There was a legacy attribute being used to find active users in the meeting.
This wrong attribute caused the returned number of users to be 0 which
makes the timer stop prematurely and, possibly, not to issue the timer beep.

Also adds a missing argument to updateTimer and moves the find call to
the Users collection to a external function, so it doesn't get executed
every time an user notifies timer has ended.
2023-05-18 15:29:38 -03:00
AtilaU19
a694595275 feat(timer): added requestedUserId and Action logs 2023-05-18 15:29:38 -03:00
Arthurk12
f5a5a960ba feat(timer): adds more songs
Adds 2 more songs to the timer, which can be switched using the radio
buttons inside timer panel.
Changed the music loop logic to make it gapless.
2023-05-18 15:29:35 -03:00
Arthur B. Grossi
17aa3d7177 Requested changes
Filters users collection by 'online' connection status and describes when/how
server detects that the timer has ended to automatically stop it.
Also, fixed a corner case that when timer alarm was disabled, clients didn't
notify that the timer ended.
2023-05-18 15:29:35 -03:00
Arthur B. Grossi
dbbef569a9 fix(timer): autoplay
When user enters meeting with music already playing, an event listener is set
to play the music only after user interaction.
Also, to keep timer more cohesive and reduce complexity of the condition for
playing music, timer automatically stops after 90% of users notify that the
timer has expired.
2023-05-18 15:29:34 -03:00
Arthur B. Grossi
cc61652aa3 feat(timer): ambient music
Adds a music player for ambient sound which can be turned on and off using a
toggle located inside timer panel. When stopwatch is selected, this toggle is
automattically turned off.
2023-05-18 15:29:34 -03:00
Pedro Beschorner Marin
c040db8f58 Fix alarm when deactivated 2023-05-18 15:29:32 -03:00
Pedro Beschorner Marin
2f104eafc8 Syncing time offset between client and server 2023-05-18 15:29:32 -03:00
Pedro Beschorner Marin
f4a5421843 Add timer view 2023-05-18 15:29:31 -03:00
Pedro Beschorner Marin
5463a4a423 Stopwatch handlers 2023-05-18 15:29:31 -03:00
Arthurk12
953a3d3548 Timer first commit 2023-05-18 15:29:31 -03:00
GuiLeme
1b26302745 [issue-17531] - merge upstream/v2.7.x-release 2023-05-16 15:30:15 -03:00
Anton Georgiev
510c94cfa7 Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into may16-merge 2023-05-16 13:35:47 -04:00
Ramón Souza
dcef3e3d7b
Merge pull request #17845 from ramonlsouza/issue-17839
fix: ignore restore on update for first load of initial presentation
2023-05-15 13:41:27 -03:00
Anton Georgiev
4e851a7571 Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into merge-267-27 2023-05-15 11:51:17 -04:00
GuiLeme
89eafc6315 [issue-17531] - changes in review 2023-05-12 12:40:07 -03:00
Anton Georgiev
1c9ba032a6
Merge pull request #17554 from AtilaU19/reconection-fixes
fix: overlapping screen end alerts and invisible cameras on reconnections
2023-05-11 17:15:12 -04:00
GuiLeme
4c2806a018 [issue-17531] - changes in review and ES-lint fixes 2023-05-11 18:06:48 -03:00
Arthurk12
7697367335 feat(screenshare): make component generic
Turns the screenshare component into a generic component, so that it can be
used both for screenshare and camera as content fetures.
Also changes specific locales and icons for the camera as content feature.
2023-05-09 17:21:47 -03:00
Arthurk12
e902f2ee27 feat(screenshare): add contentType field
This commit adds a contentType field in the back-end components of the
screenshare feature in order to accomodate the new 'camera as content'
feature.
2023-05-09 17:21:47 -03:00
GuiLeme
d2c5b33eec [issue-17839] - back-end part for hide_presentation_on_join issue 2023-05-09 12:01:55 -03:00
Anton Georgiev
c8342ce5ac
Merge pull request #17821 from antobinary/meteor-timeout-part-2
refactor: ensure setTimeout and clearTimeout run within Fiber
2023-05-08 16:23:19 -04:00
Anton Georgiev
1340265d26
Update bigbluebutton-html5/imports/api/users/server/handlers/validateAuthToken.js 2023-05-08 09:05:13 -04:00
Anton Georgiev
1746c9376f refactor: add userId and authToken for each PendingAuth 2023-05-05 16:01:07 -04:00
Anton Georgiev
340f727b0f refactor: ensure setTimeout and clearTimeout run within Fiber 2023-05-05 15:39:27 -04:00
Anton Georgiev
f51205a119 refactor: adding logs for closing the connection due to invalid user 2023-05-05 15:28:21 -04:00
Paul Trudel
cdfe54bc56 Use meteor.setTimeout to keep call inside fiber 2023-05-05 15:26:56 +00:00
GuiLeme
90078aedc7 [issue-17531] - resolve conflicts with 2.7 2023-05-04 08:56:27 -03:00
GuiLeme
f650ade561 [issue-17531] - prevent user from exporting annotations when there is no annotation 2023-05-04 08:48:32 -03:00
Tainan Felipe
66052802c0 Fix: duplicate messages when start a new chat 2023-05-03 17:14:05 -03:00
GuiLeme
f03c01399f [issue-17531] - added ConvertedPresentationName to be referenced when getting the link to downloading the original file 2023-05-02 11:14:40 -03:00
Lucas Zawacki
f81652a4dd feature(reactions): Unify reaction messages with emoji status and pass it through akka 2023-04-28 11:47:15 -03:00
Max Franke
fbcc611bd9 feat(interactions): add new interactions button
Interactions button is a button that stays in action bar.
Integrates several features in just one place: user-reaction, raise hand,
user-status (away/not away), toggle question panel.
2023-04-27 13:57:40 -03:00
Max Franke
d28b93a586 feat(reactions): add user reaction
add user-reaction collection
add emoji picker for user reaction in the user list
add options to enable/disable user-reaction
add a way to pass style to emoji-picker component
2023-04-27 11:54:11 -03:00
Lucas Zawacki
894bd3e126 fix(transcription): Don't set webspeech provider for transcription-controller 2023-04-25 10:25:35 -03:00
Arthurk12
3b871e5ca2 fix(captions): "not supported" in chrome
Fixes a case where the locale selector don't show up in Chrome when using
'webspeech' provider.
And adds missing fields to the webspeech transcription messages, after the
addition of some new parameters to those messages with the open
transcription server.
2023-04-25 10:25:20 -03:00
prlanzarin
54b6578b03 fix(audio): forcefully disable stereo when using Vosk transcription
The current Vosk CC provider does not support stereo mic streams
(pending investigation as to why).

This commits makes sure stereo is forcefully disabled via SDP munging
only when transcription is active and using Vosk. Having it disabled
in the server side (FreeSWITCH) is not enough because the stereo parameter
is client mandated and replicated by FS on its answer. So we need to
make sure it's always disabled for the time being.
SFU audio does munging server side (and stereo is always off), so no changes
needed there.

The rest of the providers (except WebSpeech) need to be validated against
stereo audio as well.
This is also intended to be temporary - ideally this needs to be fixed in
mod_audio_fork/Vosk/wherever this is breaking.
2023-04-25 10:10:39 -03:00
Lucas Fialho Zawacki
4400cc68c8 feat(captions): Add SetUserSpeechLocaleMsg files 2023-04-25 10:05:16 -03:00
Lucas Fialho Zawacki
fee6ff026a feat(captions): Use setUserSpeechLocale as an akka event and catch it in the transcription manager 2023-04-25 09:54:34 -03:00
Ramón Souza
af8556e026 Merge remote-tracking branch 'upstream/v2.6.x-release' into 26-27-apr24 2023-04-24 17:15:47 -03:00
GuiLeme
6e05e3ca51 [issue-17131] - Suggestions in review and some change of behavior 2023-04-20 08:48:43 -03:00
Gustavo Trott
d19d286811 Adds prop color for voiceUsers create msgs 2023-04-19 12:16:35 -03:00
GuiLeme
90bbb10de6 [issue-17531] - insert tag besides the presentation's name 2023-04-17 09:04:58 -03:00
Paulo Lanzarin
5c2e9bff94
Merge pull request #17021 from prlanzarin/u27/fix/audio-reconn-inbound-delay
fix(audio): decouple remote media setup (play) from state callback
2023-04-14 16:08:25 -03:00
Paulo Lanzarin
a7fec34cd1
Merge pull request #17524 from prlanzarin/u27/refactor/remove-vu-socket-ejection
refactor(audio): remove unused VU ejection on socket disconnection
2023-04-14 16:07:49 -03:00
GuiLeme
536285fc37 [issue-17531] - restored old feature of downloading original presentation 2023-04-14 11:04:24 -03:00
AtilaU19
0654bc9394 fix(screenshare): correct end alert behavior 2023-04-13 10:34:29 -03:00
Ramón Souza
6a06f994a9
Merge branch 'v2.6.x-release' into meteor-migration 2023-04-12 11:03:13 -03:00
prlanzarin
b17ba35238 fix(audio): decouple remote media setup (play) from state callback
Audio state callback and remote media setup both depend on FS's state
(comes through Meteor) and the ICE state (local, peer connection). The
caveat: FS's state can come delayed on reconnection scenarios because
Meteor's websocket generally takes significantly longer to re-connect than
the peer connection, which means the ICE state gets completed way before FS
is flagged as ready.
The practical issue: while outbound audio (client -> FS) will work, inbound
audio (FS -> client) won't _just because it wasn't played_ (even though
data is  coming through).

This commit decouples the remote media setup step from the state
through:
  - Setup remote media when ICE state is completed
  - Run the state callback only after FS is flagged as ready. This
    should maintain the UI states consistent across client-server.
    Keep in mind the assumption that if FS is ready, ICE is completed by
    consequence.
2023-04-11 16:02:20 -03:00
prlanzarin
fb30b145af refactor: remove unused VU ejection on socket disconnection
The voice user ejection callback tethered to Meteor's socket
disconnection seems broken (since its introduction). The VU selector
uses an invalid field (requesterUserId) - so no VU is ever returned.

Since I'm unaware of the original goal behind this code and there's
already ejections in place in other components (akka-apps, for
instance), this is basically a revert of #9888.
2023-04-11 15:58:22 -03:00
GuiLeme
5eb29e0ab5 [issue-16954] - merge upstream/v2.7.x-release 2023-04-11 11:02:00 -03:00
Gustavo Trott
0b2bf8f68b Akka-apps will set mobile flag instead of Meteor 2023-04-06 17:43:57 -03:00
Ramón Souza
abbe64ab16
add missing await 2023-04-06 17:04:47 -03:00
Gustavo Trott
0630fb05ea Moves user color picker to akka-apps instead of meteor-backend 2023-04-06 16:39:05 -03:00
Ramón Souza
ca668f165e
Merge branch 'v2.6.x-release' into meteor-migration 2023-04-06 16:06:10 -03:00
Anton Georgiev
72c575b911 Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into merge-apr-6 2023-04-06 11:50:26 -04:00
Anton Georgiev
e2dc7da98a
Merge pull request #16828 from prlanzarin/u27/fix/ss-cam-reconn
fix: re-connection improvements for cameras and screen sharing
2023-04-05 16:13:01 -04:00
Anton Georgiev
124ab8d972
Merge pull request #17468 from prlanzarin/u26/feat/sfu-gather-block
feat: add option to force/extend gathering window in SFU components, +
2023-04-05 15:52:10 -04:00
Anton Georgiev
f6004b477c
Merge pull request #17340 from KDSBrowne/bbb-16951
fix: Handle Exception While Invoking ZoomSlide
2023-04-05 15:17:26 -04:00
prlanzarin
be6a23a003 feat: add option to force/extend gathering window in SFU components
There's an edge case in finnicky networks where ALG-like firewalls
tamper with USE-CANDIDATE STUN packets and, consequently, bork ICE-lite
connectivity establishment. The odd part is that client-side gathering
seems to complete if intermediate STUN bindings work (before the final
USE-CANDIDATE), which may cause the peer not to generate relay
candidates == connectivity fails.

This adds the `public.kurento.gatheringTimeout` option to forcefully extend
the candidate gathering window in peers that act as offerers. The
behavior is as follows: if the flag is set (ms), the peer will wait
either the gathering completed stage or, _at most_,
public.kurento.gatheringTimeout ms before proceeding with calls chained
to setLocalDescription.

This option is disabled by default and intentionally ommited from the
base settings.yml file as to not encourage its use. Don't use it unless
you know what you're doing :).
2023-04-05 13:22:38 -03:00
Ramón Souza
bcd504b749 Merge remote-tracking branch 'upstream/v2.7.x-release' into lodash-radash 2023-04-05 09:42:05 -03:00
Scroody
4b965a2a71 Migration of the API to async for Meteor3.0 2023-03-31 17:40:41 -03:00
Anton Georgiev
eecde552ce Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into mar-30-1 2023-03-30 08:47:07 -04:00
GuiLeme
9b39decec7 [issue-16954] - Fix minor issues and cleanning of the old modal structure traces 2023-03-29 11:02:14 -03:00
KDSBrowne
d4d3b412df handle exception while invoking method zoomSlide 2023-03-28 14:47:23 +00:00
imdt
76b546f6d6 fetchAsync not working with some method fixed. 2023-03-21 14:44:12 -03:00
imdt
2a5142a4ea Users persistent data back-end migrated to new async API 2023-03-20 16:43:05 -03:00
Tainan Felipe
3959eab633 Refactor: Migrate video-streams for the Meteor 3.0 api 2023-03-20 16:39:36 -03:00
imdt
6949e9b59b Voice call states and voice users back-end migrated to new async API. 2023-03-20 16:39:24 -03:00
Tainan Felipe
3fb59bcb41 Refactor: Migrate screenshare for the Meteor 3.0 api 2023-03-20 16:39:11 -03:00
imdt
b27542065e Users settings migrated to new async API. 2023-03-20 16:38:56 -03:00
Tainan Felipe
f7b8b116e7 Refactor: Migrate presentation upload token for the Meteor 3.0 api 2023-03-20 16:38:42 -03:00
Tainan Felipe
029929e7d8 Refactor: Migrate pads for the Meteor 3.0 api 2023-03-20 16:38:31 -03:00
imdt
fc14710e14 Local settings back-end migrated to new async API. 2023-03-20 16:38:20 -03:00
Tainan Felipe
8b1565f2c9 Refactor: Migrate cursors for the Meteor 3.0 api 2023-03-20 16:38:05 -03:00
Tainan Felipe
2bb7235836 Refactor: Migrate group chat for the Meteor 3.0 api 2023-03-20 16:37:51 -03:00
Tainan Felipe
e3bbf1156f Refactor: Migrate auth-token for the Meteor 3.0 api 2023-03-20 16:37:36 -03:00
imdt
bbac3e5b11 Slides back-end migrated to new async API. 2023-03-20 16:37:16 -03:00
Tainan Felipe
470937bf6f Refactor: Migrate users for the Meteor 3.0 api 2023-03-20 16:35:52 -03:00
imdt
f03cc32b56 Presentation pod migrated to new async API 2023-03-20 16:35:40 -03:00
imdt
d7d1eb65da Presentations back-end migrated to new async API. 2023-03-20 16:35:06 -03:00
imdt
f3c6fbc5f2 Group chat msg back-end migrated to new async API. 2023-03-20 16:24:58 -03:00
Tainan Felipe
7c8337733f Refactor: Migrate meetings for the Meteor 3.0 api 2023-03-20 16:24:41 -03:00
imdt
16ff3be4ee External video back-end migrated to new async API 2023-03-20 16:24:26 -03:00
imdt
03e037b5ea Audio captions back-end migrated to new async API 2023-03-20 16:24:09 -03:00
imdt
5add111aa9 Connection status back-end migrated to new async API 2023-03-20 16:23:56 -03:00
Tainan Felipe
a5dea6f595 Refactor: Migrate captions for the Meteor 3.0 api 2023-03-20 16:23:41 -03:00
imdt
6472cf8d0d Breackouts history back-end migrated to new async API 2023-03-20 16:23:27 -03:00
imdt
c701ff5c66 Users info back-end migrated to new async API 2023-03-20 16:23:11 -03:00
Tainan Felipe
314395298b Refactor: Migrate whiteboard-multi-user for the Meteor 3.0 api 2023-03-20 16:22:55 -03:00
imdt
f18d4018f0 Backend of guest-users migrated to new async API. 2023-03-20 16:21:40 -03:00
Tainan Felipe
77fc5d4067 Refactor: Migrate annotations for the Meteor 3.0 api 2023-03-20 16:16:52 -03:00
imdt
074ce93a4f refactor: Migrate polls backend to new async api 2023-03-20 16:15:55 -03:00
Ramón Souza
630247a568 reduce canvas max size 2023-03-20 08:43:27 -03:00
Anton Georgiev
2c5cd8f2a0 Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into merge-26-27 2023-03-10 13:03:56 -05:00
prlanzarin
afa2908ded fix(screenshare): better reconnection timers and UI for abrupt failures
Reconnection timers are far too long for abrupt failures because we
are waiting the original timeouts to elapse (30-60s) before trying it
again - even if a connection worked N-sessions back in that session's
history. The ideal thing to have is another intermediate, smaller and
fixed reconnection timer for sessions that had a working screen share
at least once.
The UI is also not being updated to the reconnecting state on negotiation
failures.

* Add an intermediate reconnection timer for abrupt failures set to 8s.
  This should improve reconnection times.
* Lower default connection timers values (base 20s down from 30s, max
  25s down from 60s)
* Set screen share UI to reconnecting on abrupt failures as well - we
  were only tracking ICE states prior to this, not negotiation errors
2023-03-08 15:48:30 -03:00
prlanzarin
d2e8e74471 fix(screenshare): always try to reconnect to screen as viewer
The reconnect routine is stopping for viewers if a broker cannot
re-connect in the first try. That is wrong: viewers should try to
reconnect as long as there'sigaling data that mandates so.

The reconnect trigger is changed from broker's started attribute to the
presence of a scheduled reconnection timeout - if there isn't one (not
schedule), always re-schedule it.
2023-03-08 15:47:01 -03:00
Ramón Souza
966a471e50
Merge pull request #16800 from Tainan404/migrate-to-async
refactor: Migrate the breakout room backend to new async api
2023-03-07 10:57:34 -03:00
Ramón Souza
65a91970d3
Merge pull request #16820 from antobinary/indexing-2
fix: index auth-token-validation by connectionId
2023-03-07 09:04:24 -03:00
Tainan Felipe
fdc6a64085 Fix restoreOnUpdate feature 2023-03-03 14:58:41 -03:00
Ramón Souza
d181eba1c2 replace lodash.throttle with native function 2023-03-02 10:25:08 -03:00
Ramón Souza
41c187d93e Merge remote-tracking branch 'upstream/v2.6.x-release' into lodash-radash 2023-03-01 15:19:12 -03:00
Ramón Souza
0a622eff32 replace lodash throttle with standalone package 2023-03-01 15:13:29 -03:00
Tainan Felipe
2553c44643 Make all handlers async 2023-03-01 13:38:40 -03:00
Ramón Souza
aa47aaa22a replace lodash merge and mergeWith 2023-03-01 11:52:39 -03:00
Ramón Souza
a60d817041 replace lodash debounce 2023-03-01 10:39:04 -03:00
GuiLeme
cfdff618fc [issue-16734] - Changes in review 2023-02-27 12:45:04 -03:00
Anton Georgiev
d8ed43dc86 fix: index auth-token-validation by connectionId 2023-02-27 13:50:15 +00:00
Tainan Felipe
593333200d Add remove for assync api migration 2023-02-24 15:18:45 -03:00
Ramón Souza
0a9e2ed7d5 Merge remote-tracking branch 'upstream/v2.6.x-release' into lodash-radash 2023-02-24 15:01:49 -03:00
GuiLeme
661ab05bfa [issue-16734] - changes in review 2023-02-24 12:52:01 -03:00
Tainan Felipe
264f6bae04 Migrate the breakout room backend to new async api 2023-02-23 16:42:21 -03:00
Ramón Souza
811d6aa1c1 replace lodash delay and defaultsDeep 2023-02-23 14:38:48 -03:00
Ramón Souza
ba9c414989 replace lodash isEqual and isEmpty 2023-02-23 10:27:16 -03:00
GuiLeme
6545736a1f [issue-16734] - merge upstream/v2.6.x-release 2023-02-22 17:19:27 -03:00
GuiLeme
d47d586f0e [issue-16734] - refactor disabledFeatures presentationArea to just presentation 2023-02-22 17:16:43 -03:00
Anton Georgiev
de34f0fd68
refactor: Add meetingId in log for user left (#16775)
* refactor: Add meetingId in log for user left
2023-02-21 15:47:43 -05:00
GuiLeme
421717a817 [issue-16734] - patch for error handling 2023-02-21 08:41:05 -03:00
GuiLeme
9fb2c32384 [issue-16734] - refactor hidePresentation to hidePresentationOnJoin 2023-02-17 14:59:39 -03:00
Ramón Souza
06f43f8bed replace lodash each and groupBy 2023-02-17 14:39:52 -03:00
Anton Georgiev
1dd13026e3
Merge pull request #16722 from gustavotrott/connectionAliveAt-flood-improvement
refactor: Avoid flood moderators with useless connection status
2023-02-14 16:02:27 -05:00
Gustavo Trott
ff7c161f07 In ConnectionStatus publish only flag clientNotResponding instead of timestamp connectionAliveAt 2023-02-14 14:51:31 -03:00
Ramón Souza
83161c23a6 force slide scaling to a fixed size 2023-02-14 13:27:51 -03:00
Anton Georgiev
4ff0213d36
Merge pull request #16710 from antobinary/connection-status-distribution
fix: Only moderators should hear connection-status for all; otherwise…
2023-02-13 13:25:38 -05:00
Ramón Souza
ece96f6265
Merge pull request #16681 from ramonlsouza/issue-16663
fix: NotifyRecordingIsOn should not offer me to leave
2023-02-13 14:59:03 -03:00
Anton Georgiev
9a95054a77 fix: Only moderators should hear connection-status for all; otherwise only hear your own 2023-02-13 16:52:32 +00:00
Ramón Souza
49b5883710 do not notify user that started the recording 2023-02-08 08:47:26 -03:00
GuiLeme
ce50e00cef [issue-13867] - remove and related settings 2023-01-31 10:30:55 -03:00
Daniel Petri Rocha
6a11e295ba Prevent division by zero in zoom calculation 2023-01-27 16:49:32 +01:00
Gustavo Trott
6dfbcd29c6 Resolves conflicts 2023-01-24 09:35:13 -03:00
Gustavo Trott
ff184d9d13
Merge pull request #16421 from danielpetri1/capture-content-iff-necessary 2023-01-19 15:34:34 -03:00
Daniel Petri Rocha
ee44f15639 Fix search of padId in collection 2023-01-17 19:13:24 +01:00
Daniel Petri Rocha
2ecd3d6a80 Use prop as filename 2023-01-17 00:10:13 +01:00
Daniel Petri Rocha
a6b589a069 Add captured filename as breakout property 2023-01-16 23:00:27 +01:00
Daniel Petri Rocha
a72d76a46a Add 'no content' toast for slide capture 2023-01-14 18:00:29 +01:00
Daniel Petri Rocha
da6f5d996e Merge branch 'v2.6.x-release' into capture-content-iff-necessary 2023-01-14 13:43:38 +01:00
Ramón Souza
4d3d1f86f6 remove offline users data on chat clear 2023-01-13 13:19:52 -03:00
Ramón Souza
268c3532e7 Merge remote-tracking branch 'upstream/v2.6.x-release' into remove-persistent-on-chat-clear 2023-01-13 10:05:21 -03:00
Ramón Souza
fe3937d3ba
Merge pull request #16061 from ramonlsouza/adjust-poll-pub
fix: adjust poll publisher
2023-01-12 09:37:42 -03:00
Daniel Petri Rocha
3b8bdef05b Merge branch 'v2.6.x-release' into capture-slides-upload-toast 2023-01-09 16:03:44 +01:00
Daniel Petri Rocha
f4cb37d4cf Add 'no content' toast 2023-01-08 16:15:16 +01:00
Daniel Petri Rocha
b3ab33470e Do not capture pad if it has not been modified 2022-12-27 22:23:13 +01:00
Anton Georgiev
2d742b654c
Merge pull request #15919 from prlanzarin/u26/fix/cam-reconn-issues
fix(webcam): intermittent client crashes when sharing camera (2.6)
2022-12-23 09:12:54 -05:00
Daniel Petri Rocha
a8657ff0ed
Merge branch 'v2.6.x-release' into capture-slides-upload-toast 2022-12-22 21:18:14 +01:00
Anton Georgiev
c0626900fe
Merge pull request #15679 from ramonlsouza/rename-external-pres-params
refactor: rename external upload parameters
2022-12-22 13:00:52 -05:00
Ramón Souza
1f2562e95c sort users by sortName 2022-12-13 15:00:13 -03:00
KDSBrowne
09eb68f23b add lock setting for viewer annotations 2022-12-12 23:26:03 +00:00
Daniel Petri Rocha
d06a642ae9 Include timestamp in exported content 2022-12-09 23:48:04 +01:00
Ramón Souza
c433869f6e adjust poll publisher 2022-11-25 09:31:04 -03:00
GuiLeme
5391bd1a83 [fix-check-mime-insert-document] - changes in review 2022-11-23 09:22:35 -03:00
Daniel Petri Rocha
5a432289cf Remove unreachable code 2022-11-23 01:39:41 +01:00
Daniel Petri Rocha
587c11c56a Remove potential race condition 2022-11-23 01:25:03 +01:00
GuiLeme
058bbb039b [fix-check-mime-insert-document] - add validation to front-end 2022-11-22 17:41:57 -03:00
Daniel Petri Rocha
b43863342b Add captured slides to UploadingPresentations collection 2022-11-22 21:07:43 +01:00
Ramón Souza
ed04e10b4b remove user persistent data if chat is cleared 2022-11-21 13:07:30 -03:00
Gustavo Trott
8b7b501ea2
Merge pull request #15589 from danielpetri1/breakout-shared-notes-upload 2022-11-21 08:08:36 -03:00
Gustavo Trott
17a16eced5
Merge pull request #16022 from gustavotrott/presentation-refactor 2022-11-18 16:31:00 -03:00
Daniel Petri Rocha
a53a7e924f Refactor: remove setPresentationExportingProgress; AnalyticsActor log 2022-11-17 20:55:15 +01:00
Gustavo Trott
7781909d50 Removes all references to swf files (used by old flash client) 2022-11-17 10:55:19 -03:00
Daniel Petri Rocha
f6ccf74f9b Merge branch 'v2.6.x-release' into breakout-shared-notes-upload 2022-11-11 15:38:38 +01:00
Daniel Petri Rocha
334b97779b Merge branch 'v2.6.x-release' into capture-notes-toast 2022-11-10 23:01:28 +01:00
Gustavo Trott
50010ea528
Merge pull request #15894 from JoVictorNunes/shared-notes-on-media 2022-11-10 11:44:28 -03:00
Ramón Souza
cdc2bc7e04
Merge pull request #15770 from JoVictorNunes/store-webcam-microphone
improvement: share audio and video setup among different sessions
2022-11-09 10:37:52 -03:00
Gustavo Trott
c9ddd971f5
Merge pull request #15857 from gustavotrott/max-users-improvements
Closes https://github.com/bigbluebutton/bigbluebutton/issues/9354
2022-11-07 21:24:07 -03:00
Joao Victor
f1007fb7b6 Use the new config option from #15413 - A centralized way of defining which storage to use (Session or Local) 2022-11-03 17:57:54 -03:00
Daniel Petri Rocha
f7952fa256 Allow 16 simultaneous exports; remove timeout behavior 2022-11-03 18:09:48 +01:00
Joao Victor
08fac039c8 Merge branch 'v2.6.x-release' into shared-notes-on-media 2022-10-31 11:13:31 -03:00
Gustavo Trott
09697948e1
Merge pull request #15708 from danielpetri1/breakout-upload-ui 2022-10-31 08:29:56 -03:00
Gustavo Trott
ba647cdd08 Handle Pin Shared Notes in akka-apps 2022-10-28 08:10:23 -03:00
prlanzarin
d839b457d9 fix(audio): check for session availability on exitAudio
Mostly benign, but exitAudio/forceExitAudio was throwing an unhandled
error when called on sessions with no active audio because the
underlying bridge methods did not check whether there was an active
session to stop beforehand.
2022-10-27 16:30:11 +00:00
Gustavo Trott
e2f9b19afc Merge remote-tracking branch 'upstream/v2.6.x-release' into max-users-improvements 2022-10-24 22:48:38 -03:00
Joao Victor
33d08b2e2f Remove modifier from method 2022-10-24 10:35:46 -03:00
Joao Victor
4c6050521b feat: pin/unpin shared notes on media area (HTML5 portion) 2022-10-24 10:11:28 -03:00
germanocaumo
835cf4f753 fix(whiteboard): diff shape update + shape permission +
Several improvements to tldraw whiteboard:
 - Only send the shape diff on shape updates (reduce a lot the message traffic)
 - Shape permissions (don't allow others to select/edit unless you are presenter/moderator)
  - This required some changes in akka model
 - Tldraw state patch changes to improve stability with fast updates (fix several crashes)
2022-10-21 14:05:31 +00:00
Daniel Petri Rocha
0a2b4186a2 Merge branch 'v2.6.x-release' into breakout-upload-ui 2022-10-19 19:51:05 +02:00
Daniel Petri Rocha
dd06ce2660 Show UploadingPresentations toast upon breakout notes capture
Displays a "To be uploaded..." toast in the main meeting while the shared notes of breakout rooms are being captured.
2022-10-19 13:36:25 +02:00
Gustavo Trott
80ffb26fff Implements maxUserConcurrentAccesses and change participants count logic 2022-10-17 17:30:53 -03:00
Daniel Petri Rocha
184b1c2169 Merge branch 'v2.6.x-release' into capture-shared-notes 2022-10-08 11:24:22 +02:00
Ramón Souza
6017786a85
Merge pull request #15783 from JoVictorNunes/improved-error-screen-messages
improvement: error screen messages and logs
2022-10-07 16:40:45 -03:00
Joao Victor
e4f5317009 fix: unauthenticated user handling and manual disconnection 2022-10-07 16:21:43 -03:00
Joao Victor
010f1c2964 tweak userLeaving and Base 2022-10-07 10:38:50 -03:00
Joao Victor
912b7cf70c improvement: add setExitReason method 2022-10-07 09:15:00 -03:00
Daniel Petri Rocha
f170bdc19b Merge branch 'v2.6.x-release' into capture-shared-notes 2022-10-06 22:38:21 +02:00
Joao Victor
b77cab92bd fix: log the reason why the user is leaving. --- logout: user requested logout --- disconnection: user is being removed for disconnection reasons 2022-10-06 15:58:41 -03:00
GuiLeme
5ca4a92940 [issue-pdf-100-processing] - resolved conflicts 2022-10-06 09:58:42 -03:00
Gustavo Trott
bbe3ca34a8
Merge pull request #15474 from GuiLeme/apply-toast-shared-notes 2022-10-05 12:02:04 -03:00
Joao Victor
7e8cee7340 improvement: error screen messages 2022-10-05 11:30:12 -03:00
Joao Victor
6781602420 improvement: store audio setup 2022-10-03 11:03:14 -03:00
Daniel Petri Rocha
234e36f462
Merge branch 'v2.6.x-release' into breakout-upload-ui 2022-10-03 11:05:23 +02:00
GuiLeme
362371834a Merge remote-tracking branch 'upstream/v2.6.x-release' into issue-pdf-100-processing 2022-09-30 10:34:23 -03:00
Daniel Petri Rocha
289f4125ec Perform captured pad upload 2022-09-28 19:56:29 +02:00
germanocaumo
d770a7df8c fix(whiteboard): only call annotation upsert in one frontend instance
We were calling upsert in the Annotations collection for the same annotation in all frontend instances, this could lead to the same annotation being inserted
multiple times with different ids due to concurrency.

Added the html5InstanceId of the original request to the redis message so we can use it to only call upsert in one instance.
2022-09-28 12:03:59 +00:00
GuiLeme
9495e9ae01 [apply-toast-shared-notes] - fix shared-notes display wrong information when clicking the confirm button 2022-09-27 10:05:27 -03:00
Daniel Petri Rocha
76b24e1ec3 Route padId to bbb-export-annotations 2022-09-24 22:59:29 +02:00
GuiLeme
633a032fd0 [issue-pdf-100-processing] - implemented retry flow and fixed error message 2022-09-22 16:58:37 -03:00
Daniel Petri Rocha
e23d00004f 'Capture Shared Notes' button in front-end 2022-09-20 17:43:13 +02:00
Daniel Petri Rocha
c84c2e2892 Merge branch 'v2.6.x-release' into breakout-upload-ui 2022-09-19 19:30:18 +02:00
GuiLeme
d7c5ab3623 [apply-toast-shared-notes] - error messages wait until user closes them and added timeout to toast 2022-09-16 17:36:23 -03:00
prlanzarin
0f24e5634d fix(audio): bypass overconstrained errors in SFU-based audio 2022-09-15 20:42:43 +00:00
prlanzarin
b3eebbb926 fix(audio): retry gUM without pre-set deviceIds on OverconstrainedError(s)
There are some situations where previously set deviceIds (
local/session storage) may become stale. This causes an unexpected
behavior where audio is temporarily borked until the user clears their
local storage.
This issue has been seen more recently on Safari endpoints when switching
back-and-forth breakout rooms in environments running under iframes.
Also seen randomly on endpoints with virtual input devices.

This centralizes audio gUM calling into a single method that retries the
gUM procedure without pre-set deviceIds only if the initial call fails
due with an OverconstrainedError - hopefully circumventing the issue.
2022-09-15 19:25:30 +00:00
Gustavo Trott
14453a43f9 Include alerts when client lose connection with server 2022-09-14 22:16:27 -03:00
GuiLeme
39b6359441 [issue-pdf-100-processing] - fix timeout error when PDF is too complex. 2022-09-14 10:33:41 -03:00
Ramón Souza
ce539ec44a rename external upload parameters 2022-09-12 11:04:13 -03:00
Paulo Lanzarin
9c4707b56d
Merge pull request #15582 from prlanzarin/u26/refactor/mic-inout-logs-26
fix(audio): review in/out device management and switching
2022-09-09 09:22:40 -03:00
Daniel Petri Rocha
f1690247fd Include capture checkbox in bbb-html5 2022-09-05 19:27:38 +02:00
Daniel Petri Rocha
16b3d43f19 Initial back-end wiring for breakout slides capture 2022-09-04 22:34:04 +02:00
GuiLeme
2dec0f051b [apply-toast-shared-notes] - resolving conflicts 2022-09-02 16:08:24 -03:00
GuiLeme
80a381c87c [apply-toast-shared-notes] - resolved conflicts and refactored temporaryPresentationId's name 2022-09-02 15:24:29 -03:00
Gustavo Trott
f7f20f3e2e
Merge pull request #15251 from ramonlsouza/issue-15001 2022-09-02 09:44:10 -03:00
Anton Georgiev
85a9138ac6
Merge pull request #15618 from ramonlsouza/breakout-fix-26
fix: adjust breakout publisher
2022-08-30 20:28:33 -04:00
Ramón Souza
470f491352
Merge pull request #15583 from germanocaumo/tldraw-viewbox-sync
fix(tldraw): sync viewed area between presenter/viewers +
2022-08-30 17:00:14 -03:00
Ramón Souza
ee6eb01d04 adjust breakout publisher 2022-08-30 16:24:01 -03:00
Ramón Souza
e7107f87a7
Merge pull request #15598 from ramonlsouza/merge-2526-aug25
chore: Merge v2.5.5 into v2.6
2022-08-29 15:58:53 -03:00
Ramón Souza
033a23e336 restore needed imports 2022-08-26 14:30:40 -03:00
Ramón Souza
62f8ab3cb2 Merge remote-tracking branch 'upstream/v2.6.x-release' into pr-15460-aug26 2022-08-26 14:05:45 -03:00
Ramón Souza
609d43157a Merge tag 'v2.5.5' into merge-2526-aug25 2022-08-25 14:33:44 -03:00
prlanzarin
bf802ced4c fix(audio): check if backup stream exists before trying to clean it up 2022-08-25 17:14:41 +00:00
Daniel Petri Rocha
94fc8a4d41 Toast messages in front-end 2022-08-24 17:03:34 +02:00
prlanzarin
36bce51363 refactor(audio): remove unused imports from sip.js bridge 2022-08-24 13:28:32 +00:00
prlanzarin
89e814d570 fix(audio): centralize device change code, add rollbacks, surface errors
There's no rollback procedure in case a device switch fails right now,
nor does the code entrypoints that call the switching procedures wait
for resolution or failure before marking the new device as chosen. That
may cause inconsistent states in a couple of ways:
  - No rollback: switch fails, audio is still on but no actual
    microphone input is being transmitted
  - Not waiting for resolutions: inconsistent chosen devices on failures
Device switching errors are also not surfaced to the end user

This commit:
  - Adds device rollback and proper resolution/failure response
    awaits to try and make the state a bit more consistent.
  - Centralizes the input device switching code to be reused between
    different bridges
  - Centralizes device ID state management in audio-manager to try and
    mantain them a bit more consistent across the board
  - Surface device switching failures to the end user
  - Guarantee device IDs are set to the session storage on all
    appropriate scenarios
2022-08-24 13:28:27 +00:00
GuiLeme
d9de398d90 [fix-page-count-exeed] - Forwarded temporaryPresentationId to front-end and refactor it's name 2022-08-22 15:00:27 -03:00
germanocaumo
c948f39392 Merge branch 'v2.6.x-release' of https://github.com/bigbluebutton/bigbluebutton into tldraw-viewbox-sync 2022-08-22 15:47:51 +00:00
germanocaumo
7bf8668f23 Merge branch 'v2.6.x-release' of https://github.com/bigbluebutton/bigbluebutton into tldraw-viewbox-sync 2022-08-18 18:41:27 +00:00
prlanzarin
325eb03696 fix(webcam): properly flatten videoStream on meteor sync call 2022-08-17 16:04:02 +00:00
germanocaumo
d4b8bdce7e fix(tldraw): sync viewed area between presenter/viewers +
- Return to the ResizeAndMoveSlide event to do pan&zoom, respecting the viewed width and height ratio
- Defaults zoom in toolbar to 100% like before to be more consistent
- Fit to width and Reset Zoom is back (fit tho width still has some sync problems)
- Fix to not change to first page when presenter reloads page
2022-08-16 12:12:43 +00:00
prlanzarin
0e162f1cda feat: configurable DSCP marking for WebRTC media
RTCRTPSender exposes DSCP marking via `networkPriority` in the encodings
configuration dictionaries. That should allow us to control
QoS priorities for different media streams, eg audio with higher network
priority than video. The only browser that implements that right
now is Chromium.

To use this, the public.app.media.networkPriorities configuration in
settings.yml. Audio, camera and screenshare priorities can be controlled
separately. For further info on the possible values, see:
  - https://www.w3.org/TR/webrtc-priority/
  - https://datatracker.ietf.org/doc/html/rfc8837#section-5
2022-08-15 21:24:05 +00:00
GuiLeme
491380096e [apply-toast-shared-notes] - changes in review and resolve merge conflict 2022-08-11 15:50:06 -03:00
GuiLeme
c65def5a0f [apply-toast-shared-notes] - ajustments to maintain flow 2022-08-10 11:57:53 -03:00
GuiLeme
93b51ded53 [apply-toast-shared-notes] - Finished separation of the component 2022-08-08 17:42:06 -03:00
GuiLeme
1e0700b455 [apply-toast-shared-notes] - merge 26 and resolved conflicts 2022-08-03 11:12:55 -03:00
GuiLeme
74caa9cb5f [apply-toast-shared-notes] - Savepoint - Made some changes 2022-08-02 17:25:15 -03:00
Daniel Petri Rocha
3529fe9f28 Rename parameters; hide download button and label when disabled 2022-08-02 15:53:40 +02:00
Gabriel Porfirio
8198953f30 removing unused imports 2022-07-28 16:50:31 -03:00
Ramón Souza
ccce085aed Merge remote-tracking branch 'upstream/v2.6.x-release' into issue-15001 2022-07-27 09:49:19 -03:00
Gustavo Trott
acb0465266
Merge pull request #15412 from JoVictorNunes/export-presentation 2022-07-26 17:49:09 -03:00
Daniel Petri Rocha
6ac3040d4a Fix multiple pres. export; include PresId in NewPresAnnFileAvailable msg. 2022-07-26 15:19:23 +02:00
Joao Victor
07434d238c refactor: toast notification rework 2022-07-25 18:56:26 -03:00
Joao Victor
24e78a1864 fix: 1 minute threshold for each slide 2022-07-25 10:33:23 -03:00
Joao Victor
e32eeec9a2 improvement: query selector 2022-07-25 09:35:08 -03:00
Joao Victor
9f0999f623 fix: rename exported presentation default filename 2022-07-25 09:19:39 -03:00
Joao Victor
e3062f2da7 fix: increase exporting threshold to 1 minute 2022-07-21 16:40:52 -03:00