Commit Graph

33608 Commits

Author SHA1 Message Date
prlanzarin
d350afd194 fix(screenshare): check packet flow to detect unhealthy streams earlier
Screen streams were only deemed unhealthy when the transport's ICE state
transitioned to failed. That was as good as nothing because the stream would
stay frozen with no visual UI feedback until it reconnected. Bad UX.

This commit addresses that issue via two changes:
  - A stream is deemed *potentially* unhealthy now if the transport's
    state becomes disconnected
  - If a stream is deemed potentially unhealthy, a monitor probe is
    started to check whether there is media/packet flow (every 500ms).
    If there's no packet flow, the stream is flagged is factually unhealthy and
    UI feedback about that is rendered.

It's still not as good as it could be - relying on disconnected still
leaves a couple of seconds of silence to be dealt with. For that to be
addressed the prober would have to run nonstop, but that's for later.
2022-05-09 01:59:32 +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
Paulo Lanzarin
0656059adb
Merge pull request #14937 from prlanzarin/u26-ineffable-instants
refactor(audio): style adjustments to AudioSettings device selectors
2022-05-03 14:51:55 -03:00
Paulo Lanzarin
da958b6874
Merge pull request #14916 from prlanzarin/lift-audio-moda-echo-button
refactor(microphone): UI tweaks in the local echo audio test button
2022-05-03 14:50:59 -03:00
prlanzarin
cdbbb49d64 refactor(audio): style adjustments to AudioSettings device selectors
Similar to what video-preview does: dropdown icon indicator, focus/hover handling, ...
2022-05-03 16:25:02 +00:00
Paulo Lanzarin
e8feaf27b6
Merge pull request #14935 from prlanzarin/u26-brutalist-brat
fix(audio): incorrect change output device error log
2022-05-03 12:07:42 -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
Lucas Fialho Zawacki
e77072439a feature(layout): Remove layouts from settings menu 2022-05-03 11:32:50 -03:00
Paulo Lanzarin
defd21014a
Merge pull request #14926 from prlanzarin/u26-traumklange-collision
refactor(webcam): remove unused code in video-provider/service
2022-05-03 09:23:12 -03:00
Ramón Souza
50b3eceb46
Merge pull request #14912 from ramonlsouza/issue-14909
Breakout rooms: have multiple "remaining time" notifications
2022-05-03 13:12:54 +01:00
prlanzarin
bdd781e647 refactor(webcam): remove unused code in video-provider/service 2022-05-02 14:43:48 +00:00
Paulo Lanzarin
0716969548
Merge pull request #14924 from prlanzarin/u26-traumklange-collision
fix(audio): abide to signalCandidates configuration flag
2022-05-02 10:58:17 -03:00
prlanzarin
6a0e0a87c2 fix(audio): abide to signalCandidates configuration flag 2022-05-02 13:49:47 +00:00
Arthurk12
1d677b1263 feat(microphone): UI tweaks about echo test button 2022-04-29 19:07:08 +00:00
Ramón Souza
1f3da47231
Merge pull request #14913 from JoVictorNunes/issue-14879
refactor: poll component
2022-04-29 19:47:00 +01:00
Paulo Lanzarin
3fd64ad7b0
Merge pull request #14907 from prlanzarin/u26-plastic-lyre
fix(audio): guarantee consistency of selected output devices in AudioSettings
2022-04-29 15:01:29 -03:00
Joao Victor
34503251cf refactor: poll component - merge both auto optioning and file drag&drop into one single thing 2022-04-29 12:04:45 -03:00
Ramon Souza
76d1c1cd3d do not display alerts when breakout time is displayed in userlist 2022-04-29 10:18:25 -03:00
Ramon Souza
9d9558953e support to multiple breakout time alerts 2022-04-29 10:05:29 -03:00
prlanzarin
d81041443b fix(audio): guarantee consistency of selected output devices in AudioSettings
The initial selected output device in AudioSettings could be the wrong one if
the user's session had an output device ID already stored, but is joining on a
new session. That would cause the remote-media tag not to be updated with the
correct output device ID when it should (the service.js change)

The issue is tackled by guaranteeing the output device ID is set on all ends
when AudioSettings/AudioModal mounts.
2022-04-28 16:36:47 +00:00
Paulo Lanzarin
6b5261c55e
Merge pull request #14906 from prlanzarin/u26-plastic-lyre
fix(audio): guarantee consistency of selected input devices in AudioSettings
2022-04-28 13:24:03 -03:00
prlanzarin
b428221f7e fix(audio): guarantee consistency of selected input devices in AudioSettings
The initial selected input device in AudioSettings could be the wrong one if
 - 1) gUM outputs an user-selected device rather than the default
 - 2) no previous device was selected for that domain and the enumeration
      list order caused the default not to be the first

The issue is tackled re-extracting the deviceId from an input stream if it
exists and making the DeviceSelector value follow what is defined in the client
(audio-manager) via a trackable prop
2022-04-28 14:38:37 +00:00
Anton Georgiev
1e038e7855
Merge pull request #14732 from frankemax/hide-webcam-info-small
feat(video): hide webcam container info depending on container size
2022-04-27 11:16:56 -04:00
Max Franke
9392669cd8 feat(video-list-item): prevent undefined observer
Add extras checks to observer related values
Move the video container width bound to a const
2022-04-27 11:48:14 -03:00
Lucas
2db9a1b343
Merge branch 'develop' into develop-bbb 2022-04-26 15:08:43 -03:00
Lucas Zawacki
d84f163cc4 fix(layout): Make sure layout propagates after pushLayout is toggled 2022-04-26 17:13:33 +00:00
Anton Georgiev
5e9aeafa37
Merge pull request #14880 from iMDT/tests-on-ci
test,chore: Add github workflow to run automated tests
2022-04-25 19:25:47 -04:00
Tiago Jacobs
b1b67aedcc Filter branches that CI tests will run (>=2.5.x) 2022-04-25 20:20:42 -03:00
Lucas Zawacki
00f1b33456 feat(layout): Only propagate custom layout 2022-04-25 19:57:11 +00:00
Paulo Lanzarin
88367c1a63
Merge pull request #14868 from prlanzarin/u26-major-key
refactor(audio): remove old listen only bridge (kurento.js)
2022-04-25 15:54:41 -03:00
prlanzarin
2ca68218d0 refactor(bbb-conf): remove enableListenOnly check, replace with newer equivalents
Replace public.kurento.enableListenOnly bbb-conf --check, replace it for the newer equivalent public.media.audio.defaultListenOnlyBridge

Also add defaultFullAudioBridge to the same check
2022-04-25 18:48:16 +00: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
Lucas Zawacki
11a3e9eb59 fix(subscriptions): Restore wrongly removed notifications subscription 2022-04-25 16:34:44 +00:00
prlanzarin
1decc5d343 fix(audio): respect public.media.listenOnlyOffering in new audio bridge 2022-04-25 16:22:49 +00:00
Tiago Jacobs
32df90ac3b Add github workflow to run automated tests 2022-04-25 10:21:46 -03:00
prlanzarin
459e1a9514 refactor(audio): remove old listen only bridge (kurento.js)
- Remove the old listen only bridge (kurento.js), superseded by the equivalent
  and equally stable (AS FAR AS LISTEN ONLY IS CONCERNED) sfu-audio-bridge
  - Rename FullAudioBridge.js -> sfu-audio-bridge.js
    * A more generic name that better represents the capabilities and
      the nature of the bridge
    * The bridge name identifier in configuration is still the same
      ('fullaudio')
  - Remove the FreeSWITCH listen only fallback
  - Temporarily disable the "trickle ICE" pair gathering feature used
    in SIP.js (which was always experimental, nonstandard and disabled
    by default)
  - Updates to settings.yml keys in places where relevant
2022-04-20 20:46:32 +00:00
Paulo Lanzarin
60539d7c51
Merge pull request #14865 from prlanzarin/u26-window-fort
fix(audio): prevent uncaught rejections in the experimental audio bridge startup; [+]
2022-04-20 17:01:42 -03:00
Paulo Lanzarin
c638999a35
Merge pull request #14859 from prlanzarin/u26-window-fort
fix(audio): use correct media server in listen only via fullaudio bridge
2022-04-20 14:46:10 -03: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
2eaf96ae95 refactor(audio): address linter warnings in fullaudio-broker.js 2022-04-20 13:52:16 +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
Anton Georgiev
2241be12e9
Merge pull request #14850 from Arthurk12/multiple-pins
feat(webcam): pin multiple cameras simultaneously
2022-04-19 11:55:13 -04:00
Anton Georgiev
93fe076bdc
Merge pull request #14857 from ramonlsouza/25-dev-apr19
chore: merge 2.5 into develop
2022-04-19 10:38:39 -04:00
Ramon Souza
76272d8a51 Merge remote-tracking branch 'upstream/v2.5.x-release' into 25-dev-apr19 2022-04-19 11:34:29 -03:00
Ramón Souza
6ab38d8e33
Merge pull request #14856 from JoVictorNunes/whiteboard-button-radius
fix: whiteboard toolbar border-radius
2022-04-19 11:11:02 -03:00
Paulo Lanzarin
49d4877770
Merge pull request #14849 from prlanzarin/u25-wave-idea3
refactor(audio): linter pass over local echo/volume meter code
2022-04-19 10:44:17 -03:00
Joao Victor
62d56eeb00 fix: whiteboard toolbar border-radius 2022-04-19 10:28:02 -03: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