Commit Graph

172 Commits

Author SHA1 Message Date
Ramon Souza
07f9a192b9 Merge remote-tracking branch 'upstream/v2.4.x-release' into merge-2425-apr27 2022-04-27 15:32:20 -03:00
Arthurk12
a356109795 fix(microphone): modal not showing errors
Adds error handling to microphone join.
2022-03-30 14:27:18 -03:00
Ramón Souza
1d1375b3cf move modal component to common folder 2022-02-15 15:54:55 +00:00
Ramón Souza
246e3b3e8f move button component to common folder 2022-02-14 20:20:50 +00: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
Anton
7f075be033 fix all test selectors 2022-01-20 10:03:18 -03:00
Ramón Souza
f6e65f58c5 merge 2.4 into develop and resolve conflicts - partial 2022-01-12 16:40:45 +00:00
Ramón Souza
dc08b7857c go to echo test on audio modal mount if listen only is disabled 2022-01-11 13:59:46 +00:00
Anton Georgiev
797fc49633 TEMP 2021-12-09 20:37:05 +00:00
Ramón Souza
16fd642e33 interrupt connection proccess if audio modal is closed 2021-12-03 11:45:07 +00: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
e5293d9109 only use colorBackground in backgrounds 2021-11-16 17:15:02 +00:00
Ramón Souza
ea38609fc2 remove .scss files 2021-11-11 12:38:09 +00:00
Ramón Souza
af8959fe95 convert audio settings component 2021-11-09 14:33:40 +00:00
Ramón Souza
0994f6dea3 convert audio modal component 2021-11-09 13:22:59 +00:00
Tainan Felipe
f5eef03f3f Improve data structure to not break on reconnections 2021-11-03 14:37:54 -03:00
Anton Georgiev
c5dff32aaf
Merge pull request #13562 from mariogasparoni/remove-ios-chrome-audio-check
update(audio): do not check for chrome in iOS devices in audio modal
2021-10-25 12:00:26 -04:00
Mario Jr
05686baed6 update(audio): do not check for chrome in iOS devices in audio modal
We are now leaving the check for the minBrowserVersions object in settings.yml
If the settings enables chrome iOS, audio should allow users to be joining
with audio.

This is related to recent Chrome update (iOS 14.3+) that now allows
camera/microphone to be captured. We are looking for enabling this for
Chrome 93 in iOS (chromeMobileIOS version in settings.yml)
2021-10-22 18:14:12 -03:00
Tainan Felipe
1de8e0779d Add server side reactivity to publications 2021-10-13 15:00:52 -03:00
Mario Jr
618670937f Merge branch 'develop' into fix-13153 2021-09-03 17:59:14 -03:00
Mario Jr
b757d65276 fix(audio): screen goes blank when using listen only in ios
Closes #13153
Related to #12950
2021-09-03 17:54:35 -03:00
Philipp Memmel
05cdba2233 remove specific echo test connecting message 2021-08-27 16:32:19 +00:00
KDSBrowne
0ad6cbb2d0 add aria-descriptions to poll panel 2021-08-11 12:16:58 +00:00
KDSBrowne
17aca1dc81 add aria descriptions to audio modal buttons 2021-08-11 12:16:48 +00:00
Vitor Mateus De Almeida
145ca61d40 linting some files 2021-08-09 11:24:02 -03:00
Mario Jr
5d5370b004 Merge branch 'v2.3.x-release' into fix-12018 2021-07-06 16:45:27 -03:00
Ramon Souza
83da4448fa fix attendee auto join audio locked 2021-06-10 09:14:51 -03:00
Mario Jr
06b0d5b23e fix(audio): audio modal inactive after connection error
Closes #12018
2021-05-17 16:44:01 -03:00
Anton Georgiev
bd550b4f0b
Merge pull request #12273 from mariogasparoni/fix-multiple-audio-channel-being-created-for-specific-settings
fix: prevent an extra audio channel to be created when skipCheckOnJoin is true
2021-05-04 12:30:17 -04:00
Mario Jr
db4158dc30 fix: first audio join in breakout fails with specific config
When listenOnlyMode=false, skipCheck=true and skipCheckOnJoin=true, the
audio tries to start a session more than one time, causing it to fail
at the first one (and reconnect after that).

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

Added some info in settings.yml for the options related to this commit
Closes #12190
2021-05-04 10:11:33 -03:00
Mario Jr
1fb73d615d fix: prevent an extra audio channel to be created when skipCheckOnJoin is true
When setting skipCheckOnJoin to true, an extra audio channel is created in
FreeSWITCH, after user accepts the echo test. The extra channel is removed
when user leaves the room, but this still may affect performance.
2021-05-03 19:26:47 -03:00
Mario Jr
bf17b385b6 fix: breakout autojoin audio with wrong behavior
When joining/returning breakouts, audio would always connect
with full audio. This can lead to a performance problem, once
all listenonly users would join full audio, increasing the
number of streams in FreeSWITCH.

We now have a consistent behavior, which is:
1 - The choice made by the user in the main room is predominant:
    if mic is active in main room, user will automatically
    join mic in breakout room. When returning from breakout
    room, user will also join with mic again.
2 - Changes made in breakout room won't have effect when
    returning to the main room. This means if user, for example,
    change from listenonly to mic in breakout room, the returning
    will consider the option choosen previously (listenonly) and
    listenonly will be active again in the main room.
3 - If user didn't join audio in the main room, the audio modal
    will be prompted when joining the breakout room (this is
    a special case of (1))


The following is some technicall information:
InputStreamLiveSelector (component.jsx) now calls
'handleLeaveAudio' function, which is the default
function when user leaves audio (also used when
dynamic devices are inactive).

We now store information about user's choice (mic or listenonly)
using local storage, instead of the previous cookie method (this
was triggering some warnings in browser's console).

Also did a small refactoring to match eslint rules.
Fixes #11662.
2021-04-20 14:38:11 -03:00
Mario Jr
e69421e671 fix: Do not show unsupported browser warning for microsoft edge
This was being shown in both audio in video modal.
Related to #11865.
2021-04-02 15:12:40 -03:00
Ramon Souza
05a0d5afbf move browser info to helper + remove unused libs 2021-04-01 08:14:24 -03:00
Anton Georgiev
85a84f7cbf
Revert "Change browser detection library from browser-detect to bowser" 2021-03-30 13:16:10 -04:00
Ramon Souza
3fa193005b change browser detection lib to bowser 2021-03-30 09:53:47 -03:00
KDSBrowne
310b7bc988 reduce audio modal heading to h2 2021-03-24 20:35:09 +00:00
Brent Baccala
e5e3b5532b don't prompt for "Microphone" if that's the only option presented to the user 2021-03-10 16:44:41 -05:00
Mohamed Amine Ben Salah
4dc679d000 Adds tests recording + updates some outdated tests + linting 2021-02-26 12:52:17 -03:00
Ramon Souza
b01246f23f rework on echo test flow 2021-02-22 15:09:14 -03:00
Ramon Souza
11d924af70 fix bbb_skip_check_audio_on_first_join 2021-02-22 10:43:58 -03:00
Ramon Souza
0034b1bccc resolve conflicts 2021-02-11 10:23:38 -03:00
Ramon Souza
46af7880d6 Merge remote-tracking branch 'upstream/develop' into PR-8696 2021-02-11 09:12:13 -03:00
KDSBrowne
0abdf00a25
Add new join param skip echo test on first join only (#11284)
* add param to force echo test when user joins audio after init

* fix UI stuck on connecting when userdata-bbb_auto_join_audio=false

* fix conditions for joinFullAudioImmediately and joinFullAudioEchoTest | remove old format

* remove extra param in getItem

* recover audioLocked | only set getEchoTest if doesnt exist
2021-02-04 13:42:31 -05:00
Anton Georgiev
3faabd1821 Merge 2.2.29 and 2.2.30 into 2.3.x 2020-11-24 15:13:09 +00:00
Mario Jr
1b1a055d37 Fix audio modal buttons (MIC/LISTEN) not working after audio error
When user joins audio and for some reason an error (such as 1001, 1002,...), happens, the user is not able to click "Mic" and "Listen Only Buttons"; except if the audio window is closed and oppened again.
2020-11-17 15:31:42 -03:00
Anton Georgiev
0c7ead1916 Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into oct16-merge 2020-10-21 14:48:02 +00:00
Mario Jr
df67d2e680 Better handling audio reconnection
When getting disconnected with 1001 ("websocket closed unexpectedly" error) we were creating a new SIP session, therefore a new FreeSWITCH channel.
While reconnecting the socket, instead of closing the SIP session, we keep it alive during reconnection (audio should keep working in the meantime). When reconnected we keep using this same session (avoiding the creation of an extra one).
We also better handle WebSocket error codes from SIP.js.
FF immediately closes websocket when unloading page, so we now to stop user agent when 'beforeunload' event is triggered, to avoid leaving open sessions in FreeSWITCH when user leaves page.
2020-10-15 11:24:23 -03:00
Mario Jr
e9e436378a Correctly set audio input/output devices
When refusing ("thumbs down" button) echo test, user is able to select a different input device. This should work fine for chrome, firefox and safari (once user grants permission when asked by html5client).
For output devices, we depend on setSinkId function, which is enabled by default on current chrome release (2020) but not in Firefox (user needs to enable "setSinkId in about:config page). This implementation is listed as (?) in MDN.
In other words, output device selection should work out of the box for chrome, only.
When selecting an outputDevice, all alert sounds (hangup, screenshare , polling, etc) also goes to the same output device.
This solves #10592
2020-10-06 20:37:55 -03:00
Mario Jr
619ffa0ec1 Port SIP.js to 0.17.1 release
This considerably changes the way we process audio signaling and start audio elements in user's browser.
We now avoid using AudioContext element for both microphone and listenonly calls, once it is unstable for some iOS devices (cracky audio, user stops hearing audio after a while).
Increased default value for listenOnlyCallTimeout: this avoids activating FreeSWITCH's fallback when ICE negotiation takes longer than 15sec (tested on DO).
Increased listenonly logs.
This fixes #8133 #10388
2020-09-25 20:26:22 -03:00