Commit Graph

2738 Commits

Author SHA1 Message Date
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