Commit Graph

7030 Commits

Author SHA1 Message Date
prlanzarin
32e7ddeaf7 Revert "Improve 16x9 Support"
This reverts commit b8fc94c722.
2021-01-26 12:03:11 -03:00
prlanzarin
c37c3d0c7b video-provider: fix inconsistent client state when a webcam being shared timed out (1020)
Recent fix to the stop all cameras behaviour exposed a bug where the local camera connecting state wasnt being cleared up when a camera timed out before being successfully shared
2021-01-26 11:49:39 -03:00
prlanzarin
234efd289a audio: add a configurable throttle to action-bar`s mute toggle
Default value is 300ms, with default trailing/leading. Set toggleMuteThrottleTime to 0 to restore old behaviour
2021-01-26 11:47:48 -03:00
prlanzarin
a8f817555d audio: fix talking-indicator mute debounce
The debounce method argument was being passed wrong (its supposed to be a method, not a function call), thus spewing exceptions in the console and rendering the debounce virtually ineffective
2021-01-26 11:44:45 -03:00
Mario Jr
7858ba94ba Avoid setting empty/undefined constraint
This removes the console warning about invalid constraint
2021-01-25 23:45:27 -03:00
Tainan Felipe
3aa8e115b5
Merge branch 'develop' into unsafe-whiteboard-components 2021-01-25 17:36:12 -03:00
Pedro Beschorner Marin
7e26e78c4f Cleanup from authenticated guests removal
While cherry-picking some of this work I noticed those extras.
2021-01-23 22:22:52 -03:00
werk21
80af96ff76 9101: Survey: New profile yes/no/abstention 2021-01-24 02:22:40 +01:00
Pedro Beschorner Marin
4fbc237a8f Configurable users' labels
User's name labels can be enabled and disabled at `settings.yml`.
2021-01-23 21:58:25 -03:00
Pedro Beschorner Marin
85ee3b283f Identify mobile users at user list 2021-01-23 21:57:55 -03:00
Pedro Beschorner Marin
bd15f14ca0 Allow guests promotion/demotion
When authenticated guest is disabled (bigbluebutton-web's `authenticatedGuest` property)
2021-01-23 21:55:20 -03:00
Pedro Beschorner Marin
ea207d6f8c Adjust guest panel header and width 2021-01-23 21:54:51 -03:00
Pedro Beschorner Marin
a8af70993b Make the guest list a scrollable element 2021-01-23 21:52:52 -03:00
Pedro Beschorner Marin
0bbef12ac7 Authenticated guests feature controlled at bbb-web properties 2021-01-23 21:48:02 -03:00
KDSBrowne
a76b740ffe prevent open textarea blocking dropdown menus 2021-01-22 21:42:45 +00:00
Anton Georgiev
8a72b8ef22
Merge pull request #11194 from ramonlsouza/PR-9946-fix
Improves the end meeting confirmation message
2021-01-22 15:33:18 -05:00
Anton Georgiev
45c1ff6e40
Merge pull request #11175 from MaximKhlobystov/select-random-user
Presenter selecting a random viewer
2021-01-22 15:31:00 -05:00
Ramon Souza
244842c86b applying suggested changes 2021-01-22 16:48:50 -03:00
Mario Jr
97c76900cb Add setting for enabling/disabling microphone audio filters
As explained in #11143, disabling audio filters is desired in some scenarios.
This basically adds an option for user to disable default constraints.
When user doesn't change this value in Settings > Application, the default
value for each audio constraints is retrieved from settings.yml.
When user changes this value in Settings > Application, audio
filters (AGC, Noise Supression and Echo Cancellation) are all set to
true/false, according to the value selected in the Settings GUI.

To start it simple, we decided to not to add a different setting in the GUI for
each audio contraint. This may be added in the future, though (perhaps in a
dedicated Audio Settings tab)
This is related to #4873
2021-01-22 16:30:42 -03:00
Joao Siebel
bb831e0442 Modify throttle interval to be a const variable 2021-01-21 14:05:59 -03:00
Joao Siebel
8f36ac3586 Add throttle to startUserTyping function 2021-01-21 13:05:41 -03:00
Tainan Felipe
1a46a2fb1e fix typing indicator display 2021-01-21 11:49:48 -03:00
Ramon Souza
3742746de3 PR 9946 + suggested text changes 2021-01-20 17:49:07 -03:00
Ramon Souza
f04733d85e Merge remote-tracking branch 'upstream/develop' into PR-9946-fix 2021-01-20 17:42:47 -03:00
Anton Georgiev
af76a56ba7
Merge pull request #11186 from ramonlsouza/issue-11181
Fixes crash when presenter is kicked
2021-01-20 11:42:37 -05:00
Ramon Souza
ef1725fff9 fixes similar bug on user-list/service/getEmoji function 2021-01-20 13:22:17 -03:00
Ramon Souza
6f9d60c520 code style 2021-01-20 11:39:47 -03:00
Joao Siebel
fa0fd8a054 Add configurable process interval for cursor and annotations 2021-01-20 11:36:40 -03:00
Ramon Souza
fe12208d6c better fix for issue #11181 2021-01-20 11:28:37 -03:00
Ramon Souza
b0551e24ad added a comment on the code to make changes clear 2021-01-20 10:07:00 -03:00
Ramon Souza
79bbbc0fb1 Fixes #11181 2021-01-20 09:23:51 -03:00
Anton Georgiev
62aca3b8ae
Merge pull request #11179 from ramonlsouza/issue-11116
Fixes closed captions language list
2021-01-19 15:31:32 -05:00
Ramon Souza
39b63368e2 Fixes #11116 2021-01-19 17:16:29 -03:00
Tainan Felipe
141be357ed Little clean up 2021-01-19 14:16:34 -03:00
Tainan Felipe
8e2fe47c6f Implements chat using react context as middleware 2021-01-19 14:06:32 -03:00
KDSBrowne
3f0cde7dbb Merge branch 'develop' of https://github.com/bigbluebutton/bigbluebutton into bbb-11056 2021-01-19 16:02:32 +00:00
KDSBrowne
206cae3707 fix locale fetch loop with xx_XX fallback/override 2021-01-19 16:02:20 +00:00
Maxim Khlobystov
5238dac647 Remove callbacks from update and clear Mongo operations for randomly selecting a user 2021-01-19 01:53:13 +00:00
Maxim Khlobystov
88c6e773e3 Fix the issue with connectionStatus resulting in no users being availble to randomly pick from (select random viewer feature) 2021-01-19 01:01:46 +00:00
Anton Georgiev
0ba3aa713a
Merge pull request #10912 from lkiesow/16x9
Improve 16x9 Support
2021-01-18 16:05:01 -05:00
Fred Dixon
27cb9e8a39
Merge pull request #11078 from hiroshisuga/patch-11
Remove mountModal requirement in presentation uploader
2021-01-15 22:53:53 -04:00
Paulo Lanzarin
1f3d487ecc
Merge pull request #11142 from pedrobmarin/fix-multiple-webcam-stop-all
Fix stream stop for multiple webcams
2021-01-12 17:35:10 -03:00
Mario Jr
92708da447 Allow audio constraints to be changed in bbb-html5's settings.yml
In some scenarios, there's no need for the browser to apply such audio filters. For example, when user's microphone already does audio filtering (echo cancellation, noise supression ...).
This commit doens't change the current behavior (filters still follow browser's default config): admins need to uncomment/set these values if disabling/enabling specific filters if desired.
This is related to #4873
2021-01-12 14:42:27 -03:00
Pedro Beschorner Marin
cc9b552e2a Fix stream stop for multiple webcams
Video provider's service for local stream control was wrongly setting the disconnected
state when a multiple webcam user tried to stop a single cam. The `stopVideo` method
was inconsistent when called multiple times for the same `cameraId`.

Included a better testing scope for event dispatching and disconnected state handling.
2021-01-12 13:24:40 -03:00
Anton Georgiev
d9629113cb fix undefined css class button in video-button 2021-01-06 19:13:48 +00:00
Anton Georgiev
24e2fe967b temporarily allow undefined user name for offline chat sender 2021-01-06 19:12:35 +00:00
Anton Georgiev
2dabeaae29 remove duplicated html id video-modal-input 2021-01-06 16:53:22 +00:00
Anton Georgiev
3e3f3236cc correct path to silence.mp3 2021-01-06 15:55:01 +00:00
Anton Georgiev
eb8e412935 ensure sorting has a fallback in case of undefined name 2021-01-06 15:21:44 +00:00
Anton Georgiev
3135c6bb22 Handle guestWait url for multiple nodejs instanceIds 2021-01-05 15:38:21 +00:00
Fred Dixon
9e7bd44c9b
Merge pull request #10604 from hiroshisuga/patch-8
Fix slide size problem at fullscreen <-> window-mode transition
2020-12-30 08:08:38 -04:00
Fred Dixon
278a010ae3
Merge pull request #11074 from hiroshisuga/patch-10
Suppress warning of React file player
2020-12-28 22:38:11 -04:00
Fred Dixon
9b973c331f
Merge pull request #11077 from hiroshisuga/bug-shortcutwindow
Adding ID to debug window shortcut translation
2020-12-28 22:37:30 -04:00
hiroshisuga
3c0a35706c
Update styles.scss 2020-12-27 15:10:32 +09:00
hiroshisuga
4e4d3beb10
Update component.jsx 2020-12-27 10:36:01 +09:00
hiroshisuga
d30a9bba47
Update component.jsx 2020-12-27 09:55:32 +09:00
hiroshisuga
3dc0aa83f2
Update component.jsx 2020-12-27 00:01:54 +09:00
Pedro Beschorner Marin
4e370d28ec Add timeout at video's preview modal
Some browsers seem to (occasionally) not return the getUserMedia promise call and the
user gets stuck in this state unable to share her/his webcam.

Since enumerateDevices still works even on a gUM rejection this includes a racing
timeout that skips gUM. Configured at settings `gUMTimeout`.

Reproduced with Windows 10 Chrome 87.
2020-12-22 20:10:19 +00:00
Pedro Beschorner Marin
c8ace18f85 Enumerate devices even if first getUserMedia fails
The first getUserMedia was not supposed to be considered critical to the whole
video preview flow.

Scenarios where the user has multiple media sources and one of them was already
in use or had some malfunction problem were forcing a global skip at the video
preview modal even if one of them was available to be used.
2020-12-22 19:26:28 +00:00
Pedro Beschorner Marin
f6217308dd Refactor video preview getUserMedia preview error handler 2020-12-22 19:26:23 +00:00
Pedro Beschorner Marin
dced6bd2b8 Add missing getUserMedia errors
Collected from https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia
2020-12-22 19:25:48 +00:00
Pedro Beschorner Marin
62d491c8e4 Refactor video preview getUserMedia device error handler 2020-12-21 20:54:21 +00:00
CristianSilvaGrosseli
0c4f903c39 use placeholder in the logger.error method return in the video-preview component. fix wrong file permission. 2020-12-21 20:53:56 +00:00
CristianSilvaGrosseli
d8ed8f2570 use correct pattern in video-preview's handleGUMError method. 2020-12-21 20:53:12 +00:00
CristianSilvaGrosseli
ffd1063332 video-preview component's handleGUMError method rehabilitation. 2020-12-21 20:52:15 +00:00
Anton Georgiev
4f14086f72 set default value for isPresenter in case user removed 2020-12-18 15:37:45 +00:00
Anton Georgiev
fc93b5a91c correctly add chat message without flattening 2020-12-17 22:02:38 +00:00
Anton Georgiev
c1ffced27d Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into develop 2020-12-17 21:14:29 +00:00
Anton Georgiev
99ff801d34 remove obsolete callback from user remove 2020-12-15 22:04:26 +00:00
Joao Siebel
3ad269c24c Check if metrics are enabled 2020-12-15 16:20:32 -03:00
Joao Siebel
c5b8f30f5d Add option to generate heapdump file and improve metrics 2020-12-15 13:10:39 -03:00
Anton Georgiev
8b65f9e15b Set bbb-html5 loadbalancing to be round robin 2020-12-15 01:55:57 +00:00
Anton Georgiev
9239d515a5 dispatch whiteboard events to html5 redis channel only 2020-12-12 01:45:38 +00:00
Anton Georgiev
0be8773e4c Loadbalance bbb-html5 in bbb-web based on CPU 2020-12-11 21:36:06 +00:00
Anton Georgiev
9a04087c12
Merge pull request #11006 from mariogasparoni/v2.2.x-release
Add keep alive message to audio's websocket
2020-12-11 10:41:33 -05:00
Joao Siebel
b07b200a2f Prevent calling function when parameters are undefined 2020-12-11 11:24:03 -03:00
Mario Jr
6113113af9 Add option to disable traceSip logs
Audio client logs already cover audio session progress the way we need.
This avoids keepAlive and other unnecessary messages to be logged in browser's console.
If setting is not present, default value is set to false.
2020-12-11 00:31:10 -03:00
Mario Jr
c65fa2b350 Add keep alive message to audio's websocket
This was added as an option (websocketKeepAliveInterval), which is the interval to send keep alive messages.
Setting websocketKeepAliveInterval to 0 disables the keep alive, producing the same old behavior.
This helps avoid websocket disconnection due to socket inactivity, preventing it to unnecessarily reconnect.
Also, sometimes reconnect fails and error 1005 is triggered.
Fixes problems reported in #10985.
Also reduces occurrences of error 1005.
2020-12-10 23:48:01 -03:00
Joao Siebel
ec2cb2dbde Chek for queueMetrics 2020-12-10 14:07:46 -03:00
Joao Siebel
5b0d6c59e6 Code clean up 2020-12-10 14:05:22 -03:00
Joao Siebel
e9d05454ea Remvoe console 2020-12-10 13:52:25 -03:00
Joao Siebel
bf5a45d303 Create Metrics class 2020-12-10 12:07:06 -03:00
Joao Siebel
d6a1f1a454 Change processing start time 2020-12-09 15:06:25 -03:00
Joao Siebel
029c42c1e5 Add processing time metrics 2020-12-09 14:24:41 -03:00
Anton Georgiev
675d440fa6
Merge pull request #10996 from jfsiebel/fix-sync-chat-msgs
Prevent exception when there is no message to sync
2020-12-09 11:30:09 -05:00
Anton Georgiev
a97bb541af
Merge pull request #10945 from prlanzarin/u22-lov18102020
[listenonly] Rewrite SFU/Kurento listen only bridge
2020-12-09 11:29:07 -05:00
Joao Siebel
dd8c3fafc1 Prevent exception when there is no message to sync 2020-12-09 10:33:01 -03:00
Anton Georgiev
3930e164e6
Merge branch 'develop' into debug-window 2020-12-08 16:16:24 -05:00
prlanzarin
d6fdd79412 sfu-base-broker: add beforeunload listener to avoid logging false positive errors 2020-12-08 20:19:03 +00:00
Joao Siebel
0020d2b079 Add try/catch in custom send function 2020-12-08 19:53:33 +00:00
Joao Siebel
6e529e5292 Add try/catch to heartbeat function 2020-12-08 19:53:33 +00:00
Joao Siebel
240b75ea65 cherry-pick PR #10953 2020-12-08 19:50:18 +00:00
Joao Siebel
b532673691 Move metric function 2020-12-08 10:49:07 -03:00
Joao Siebel
0ec8576209 Fix multiple write listeners 2020-12-08 09:37:59 -03:00
Joao Siebel
829591ffc7 Implement redis metrics object 2020-12-07 17:57:33 -03:00
Mohamed Amine Ben Salah
06e28f37bf fixes screenshare toast - issue: #10982 2020-12-07 11:10:54 -03:00
Mohamed Amine Ben Salah
0306886c6c adds data-tests to chat all different types of messages 2020-12-03 19:15:49 -03:00
Joao Siebel
fc1b06c3e7 Add try/catch in custom send function 2020-12-03 15:07:24 -03:00
Joao Siebel
5d95e5ca1d Add try/catch to heartbeat function 2020-12-02 16:43:34 -03:00
Joao Siebel
d9a046fba9 Log uncaught errors in node 2020-12-02 16:06:42 -03:00
Anton Georgiev
a5ea33b2b8
Merge pull request #10934 from jfsiebel/throttle-bulk-add-msg
Add bulk chat message insert and optimize chat message insert
2020-12-01 15:28:13 -05:00
Anton Georgiev
244a239810 Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into 2020-12-01-merge 2020-12-01 20:02:50 +00:00
prlanzarin
218c6a6549 [audio-manager] Add bridge name to callback logging and fix listen only audio exit 2020-12-01 18:24:24 +00:00
prlanzarin
1bef5f37a6 [sip.js] Annotate every audio-manager callback call with a bridge name identifier
Useful when parsing logs to split errors by bridge type
2020-12-01 18:23:14 +00:00
prlanzarin
338e8f8291 [listenonly] Rewrite listen only SFU/Kurento bridge
Fixed listen only reconnection handling

Added proper error handling; now all errors have proper mapped codes which are funneled through to audio-manager logger and should be easier to gauge types of errors

Fixed botched reconnection error rejection, audio modal shouldnt be stuck anymore when it fails

Remove every tie that listen only bridge had to kurento-extension
2020-12-01 18:19:31 +00:00
prlanzarin
0077a83ef5 [html5/webrtc] Add a centralized util to load and play a media element with proper error handling
To be used with bbb-webrtc-sfu based media brokers
2020-12-01 18:10:17 +00:00
prlanzarin
a7559a6b7d [listenonly] Add new SFU listen only negotiation broker
A replacement to the old kurento-extension script which is to be considered legacy code
2020-12-01 18:09:10 +00:00
prlanzarin
a49aa0a1ca [html5/webrtc] Added proper error handling in bbb-webrtc-sfu base broker
Moved bbb-webrtc-sfu utilitaries to properly named folder

Logging improvements to base broker

Added onerror/onstart/onended callback interfaces to base broker
2020-12-01 18:06:50 +00:00
prlanzarin
b86b7323e7 [html5/webrtc] Add base class for an isolated webrtc-sfu signalling broker
Extracts most of the common bbb-webrtc-sfu WebSocket setup, handshaking and message broker procedures that was scattered among HTML5 components (video, screenshare and listen only) into a base class suitable for inheritance
2020-12-01 17:13:34 +00:00
prlanzarin
9875876b5e media: add a webrtc service utilitary to propagate peer state changes 2020-12-01 17:12:39 +00:00
Anton Georgiev
e62710298d
Fix typo 2020-11-30 15:59:12 -05:00
Joao Siebel
c0f42a3c07 Add missing semicolon 2020-11-30 17:11:57 -03:00
Joao Siebel
77d493792f Prevent a case where voiceUser collection was being clean for entire server 2020-11-30 17:01:41 -03:00
Anton Georgiev
ff6963e835
Merge pull request #10921 from BrentBaccala/dont-reset-panel-defaults
Only set panel settings to login defaults on login, not everytime the…
2020-11-30 14:47:43 -05:00
Anton Georgiev
ed00fdf9a9
Merge pull request #10933 from antobinary/merge-2020-11-24
Include instanceId in resources url
2020-11-30 14:45:51 -05:00
Joao Siebel
c6adb2988d Merge remote-tracking branch 'upstream/v2.2.x-release' into throttle-bulk-add-msg 2020-11-30 14:10:30 -03:00
Anton Georgiev
6d258ac223
Merge pull request #10925 from lkiesow/mirror-cameras
Allow mirroring individual webcams
2020-11-30 11:14:22 -05:00
Anton Georgiev
f34826718d include instanceId in resources url 2020-11-30 16:09:35 +00:00
Joao Siebel
b07786b9b8 WIP add bulk insert and throttle for chat messages 2020-11-30 11:27:26 -03:00
Tainan Felipe
23ca85313e Fix typos 2020-11-30 10:23:40 -03:00
Tainan Felipe
46a5ac6eb5 Fix scroll to bottom on unread messages 2020-11-30 09:19:15 -03:00
Lars Kiesow
74efe8735b
Allow mirroring individual webcams
BigBlueButton already allows mirroring the users own webcam as a global
setting set by administrators. Users have no way of choosing this on
their own.

This patch turns this functionality into a user setting for all webcams.
Every camera menu now gets a “mirror” entry.

The global setting is still used as a default value, keeping the current
behavior as it is to not confuse users.
2020-11-29 20:54:01 +01:00
Brent Baccala
8845998bbd Only set panel settings to login defaults on login, not everytime the base component renders 2020-11-27 16:51:45 -05:00
Anton Georgiev
0225a6a97f
Merge pull request #10918 from lfzawacki/v2.2.x-release
First version of a PeerTube player
2020-11-27 16:35:09 -05:00
Tainan Felipe
b9fab56ca4 Fix scroll doesn't scrolling to Bottom 2020-11-27 17:46:03 -03:00
Tiago D J
1e4c634dd9
Merge branch 'v2.2.x-release' into remove-callbacks 2020-11-27 13:43:36 -03:00
Lars Kiesow
b8fc94c722
Improve 16x9 Support
This is a very simple patch improving the support for 16x9 cameras.

In mixed mode – if 4x3 and 16x9 cameras are present – everything looks
like it did before but if only 16x9 (or wider) cameras are present,
BigBlueButton will drop the letter boxes and show a 16x9 video
container.
2020-11-27 01:28:21 +01:00
Anton Georgiev
08a0a38f30 do not log client issues to Winston, only via nginx 2020-11-26 15:39:04 -05:00
Lucas Zawacki
7c704c78c1 PeerTube player, first version 2020-11-26 17:33:08 -03:00
Anton Georgiev
698199454c Reduce cursor logging, fix ExternalVideo object logging 2020-11-26 15:31:00 -05:00
Joao Siebel
ccda3b3a34 WIP remove callback from update methods 2020-11-26 13:23:57 -03:00
Joao Siebel
c34d5381fe Add flag to enable/disable custom heartbeat functions 2020-11-26 11:19:59 -03:00
Joao Siebel
e4a5e88986 Fix selectors 2020-11-26 10:36:44 -03:00
Mario Jr
214cd12c59 Fix typo on dtmf log 2020-11-26 00:01:58 -03:00
Mario Jr
370e3cb39d Use INFO message as default for sending dtmf on call transfer
Instead of sending using rfc4733 standard, we use INFO message for all transfers
INFO message was used in older SIP.js version. Although this is not a standard for sending DTMF tones, this has more reliability (once it sent over TCP)
This might reduce occurrences of 1008
2020-11-25 18:33:45 -03:00
Anton Georgiev
0c7ae7537b
Only display Redis: MeetingMessageQueue if size > 100 2020-11-25 10:32:45 -05:00
Joao Siebel
11f1a1ac47 Merge remote-tracking branch 'upstream/v2.2.x-release' into remove-callbacks 2020-11-25 10:54:18 -03:00
Joao Siebel
a244fc1acf WIP remove callback from remove operations 2020-11-24 17:44:13 -03:00
Anton Georgiev
3faabd1821 Merge 2.2.29 and 2.2.30 into 2.3.x 2020-11-24 15:13:09 +00:00
Anton Georgiev
21644a1a43 Remove string interpolation for server debug and verbose logs 2020-11-23 14:35:59 -05:00
Mario Jr
af48c8977d Reduce delay for the first reconnection attempt of audio's websocket
This is the same behavior we used to have on older sip.js version code
By doing this we reduce errors when user try to perform join/hangup during an websocket reconnection
2020-11-23 12:40:38 -03:00
Anton Georgiev
22d6b9d56a
Merge pull request #10877 from Tainan404/handle-chat-message-in-order-2.3
Port Handle chat messages in sync way for 2.3
2020-11-23 09:06:28 -05:00
Joao Siebel
bcc1d6c880 WIP remove callback from mongo operations 2020-11-23 10:13:46 -03:00
Tainan Felipe
af7479df28 add missing file 2020-11-20 17:32:21 -03:00
Tainan Felipe
091c5f3932 Port Handle chat messages in sync way for 2.3 2020-11-20 16:26:34 -03:00
Tainan Felipe
8650e0500b Port socket sockejs timeout to 2.3 2020-11-20 14:31:24 -03:00
Mario Jr
2b89dd7db2 Do not trigger reconnect when ICE connection terminates before hanging up process is finished
This could leave users to have your audio reconnected in the main room, while joining a breakout room
Some information can be found in #10528
2020-11-20 00:25:46 -03:00
Mario Jr
9a2fcd27e0 Revert "Prevent Error 1006 when user has two or more occurrences of ':' (colon) in your name"
This reverts commit 0a601359bb.
2020-11-20 00:23:43 -03:00
Anton Georgiev
dedaea5ad2 who-is-talking - do not allow mute in breakouts 2020-11-19 14:14:37 -05:00
Anton Georgiev
39257aa2d8 parse instanceId as int; develop on port 4000 2020-11-19 15:31:24 +00:00
Joao Siebel
4a88d0a6db Handle chat messages in sync way 2020-11-18 18:09:38 -03:00
Anton Georgiev
23f2df11d5 code changes to allow for meetings' redis events to be processed on different html5 nodejs pids 2020-11-18 20:34:02 +00:00
Mario Jr
8822819900 Filter 'name' field in user's search
This is a part of #10848, as discussed in https://github.com/bigbluebutton/bigbluebutton/pull/10848#discussion_r525480434
2020-11-18 10:40:15 -03:00
Mario Jr
0a601359bb Prevent Error 1006 when user has two or more occurrences of ':' (colon) in your name
This happens because FreeSWITCH is not able to parse the "From" header when it has multiple occurrences of ':'. So user is not able to join audio.
To fix, we now changed the "callerId" to use the base64 value of the user name, instead of directly using user's input (the callerId format keeps being a triple like this: <user_id>-bbbID-<base64_encoded_name>).
Once this callerIdName is encoded at the same point it is generated, there shouldn't be server side effects for changing this value; except for those places where the callerName is retrieved by splitting this triple (such as the voice talking-indicator, as described below).
Updated the talking-indicator to retrieve the username from User's object, instead of retrieving from the one username generated by splitting the callerId triple.
This problem also happens in versions <= 2.2.26.
2020-11-17 15:31:43 -03: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
Joao Siebel
b6b211f4fb Tweak heartbeat 2020-11-16 18:37:25 -03:00
Joao Siebel
1c47023e8a Add original function link for reference 2020-11-16 10:46:18 -03:00
Joao Siebel
3a2d06fd88 Tweak sockjs timeout value 2020-11-13 18:41:56 -03:00
Fred Dixon
4bc44bfa9c
Merge pull request #10825 from KDSBrowne/2.3-safair-console-errors
Fix console errors in safari on iPad
2020-11-13 16:06:45 -05:00
Anton Georgiev
b1227f5785
Merge pull request #10810 from prlanzarin/u22-gumtgc-wa
[html5/webrtc] Fix tryGenerateIceCandidates rejections and put it behind a flag
2020-11-13 11:00:05 -05:00
Anton Georgiev
a8dc7a0bff Simplified redis debug and placed behind check 2020-11-12 21:03:57 -05:00
prlanzarin
8dda22f8a7 [html5/webrtc] Fix tryGenerateIceCandidates rejections, put it behind a flag
Fixed two occurrences where the tryGenerateIceCandidates workaround rejected without an error, which borked the callers error handling

Also put it behind a config flag. This workaround used to be important when Kurento didnt infer prflx candidates properly, but that`s no longer the case. With the flag, we can disable the workaround to see if there`s any visible regression and hopefully remove it down the road
2020-11-11 13:43:36 +00:00
prlanzarin
a1f0276b64 [html5/audio] Add hackViaWs to SIP.js and make it configurable in settings.yml, 1002 workaround
This adds the possibility to configure the SIP Via header to plain WS to allow reverse proxying from WSS to WS, internally, to work around a bug in freeswitch where the WSS stack would get deadlocked due to a still unidentified bug in there that has to do with SSL termination
2020-11-10 15:04:45 +00:00
Mario Jr
b948bea11b Force using plan-b as default sdpSemantics for chrome
Although Chrome's default is now unified plan, Chrome <-> FreeSWITCH ICE connection fails for some Chrome installations (specially those running on Windows).
FS ICE fails when Chromes's SDP has "a=mid:<index>" (instead of "a=mid:audio").
This fixes Error 1010 and situations where echo test takes too long.
This fixes #6414 regression, once we do the same older version of SIP.js used to do.
2020-11-09 21:58:16 -03:00
KDSBrowne
bd4a3d2500 fix console errors in safari 2020-11-09 22:40:25 +00:00
Mario Jr
46e0c263fe Use iceConnectionState to monitor ICE connection status
We now use both peer's connectionstatechange and iceconnectionstatechange to monitor ICE state for audio sessions.
The same way we did with old sip.js version, we leave iceconnectionstate trigger audio actions , such as connect, disconnect, reconnect.
We still listen for 'failed' state for connectionstatechange event, because chrome triggers this (tested on 86+).
This should reduce the audio error 1010 ocurrences, once some browsers (specially Chrome/Android) don't trigger connectionstatechangeevent.
This might reduce problems reported in #10708, which still needs more investigation though.
2020-11-08 22:43:52 -03:00
Fred Dixon
97da7d6023
Merge pull request #10704 from KDSBrowne/2.2-upload-modal-error-bound
Add error boundary to presentation upload modal
2020-11-06 16:40:50 -05:00
Richard Alam
e28bba42fc
Merge pull request #10742 from KDSBrowne/2.2-issue-10705
Prevent users from sending multiple votes per poll
2020-11-06 16:33:56 -05:00
KDSBrowne
42cdc51710 add z-index to actionbar elements 2020-11-06 20:48:06 +00:00
Mario Jr
3a689578c6 Monitor peer's iceconnectionstatechange event
This gives more information about ICE connection, combined with onconnectionstatechange event
2020-11-06 09:37:58 -03:00
Mario Jr
2585d957e8 Correctly map WebSocket error
Maps WebSocket's 1006 error to BBB's 1002, the same way it was done with old sip.js version
Set user agent's number of reconnection attempts to the same value as older sip.js version
2020-11-06 09:25:40 -03:00
KDSBrowne
2468ac225c return null in publishVote if user already voted 2020-11-05 17:02:31 +00:00
KDSBrowne
5076a2accd fix typo / use operator / add log 2020-11-05 14:19:36 +00:00
KDSBrowne
2f46c1fd28 Merge branch 'develop' of https://github.com/bigbluebutton/bigbluebutton into 2.3-user-rand-select 2020-11-02 16:16:29 +00:00
KDSBrowne
7c690ab22c fix presentation downloadable tooltip msg 2020-10-30 13:00:07 +00:00
Anton Georgiev
5ba12846d5
Update index.js 2020-10-28 15:17:17 -04:00
KDSBrowne
d2cb02b3bd prevent users from being able to send more than 1 poll vote 2020-10-28 18:33:09 +00:00
Mario Jr
3e3b648040 Properly stops userAgent / peer when audio connection/reconnection fails
Changed the maximum attempts of the UserAgent reconnection (this should be changed when binding audio's websocket to meteor's connection state).
Added a log to monitor WS reconnect attempts.
2020-10-28 15:04:30 -03:00
Anton Georgiev
df8b6350c9
Merge pull request #10617 from KDSBrowne/2.3-undo-pencil
Fix broken undo of consecutive pencil annotations
2020-10-27 14:59:57 -04:00
Mohamed Amine Ben Salah
bf45dbc7f9 adds visual regressions test with snapshots ready to use 2020-10-27 12:54:55 -03:00
Anton Georgiev
24442f1050
Merge pull request #10369 from jfsiebel/connection-manager
Add ClientConnection manager
2020-10-27 11:49:35 -04:00
Anton Georgiev
b808b0185f
Merge pull request #10728 from antobinary/jquery
Move the check to disable mutedAlert feature; temp disable it
2020-10-26 17:12:03 -04:00
Anton Georgiev
ce8c733ec4 move the check to disable mutedAlert feature; temp disable it 2020-10-26 21:07:15 +00:00
Joao Siebel
91c8e78d44 Fix join listen only problem 2020-10-26 13:10:40 -03:00
Anton Georgiev
b8649629eb
Merge pull request #10702 from Zh4rsiest/develop
[Mobile] - Setting or clearing user status locks the whole screen
2020-10-26 11:29:11 -04:00
Mario Jr
d1e5f189ba Prevent 1005 error log when user close/reload bbb's window/tab
When closing/reloading tab with active microphone, audio exits successfully but a wrong log-error (1005) is shown.
We now process closing/reloading tab the same way we do when user hangup the call.
2020-10-25 16:12:58 -03:00
Mario Jr
18c20261e1 Change default value of iceGatheringTimeout to current's SIP.js default
For some reason (still investigating), using turn/coturn on 443/tcp makes firefox's iceGathering process (during echo test) takes 12+ seconds (tested on webrtc's trickle page with multiple instances).
This was found when testing the current default (15s) on production with a private turn/coturn server on port 443/tcp. For default bbb setup (stun only), echo test still runs fast.
To avoid adding extra delay to iceGathering on this scenario (Firefox + turn on 443/tcp), i am just setting the default value back to the 5s (old default).
So , for those who wants to reduce the 1004 occurrences, increasing the iceGatheringTimeout could help (just be aware this adds delay on the mentioned scenario).
2020-10-24 08:58:25 -03:00
Zh4rsiest
3f13f4eca4 Changing isIphone value
The component expects a boolean but isIphone property return an array ["Iphone"] if the user is from an iPhone
2020-10-23 12:37:43 -03:00
Zh4rsiest
1b7a672a1b Updating variables in container
They both return an array with ["Iphone"] if you're from an iphone but the component expects bool variables.
2020-10-23 12:37:18 -03:00
Mario Jr
a86ff72aa3 Increase default iceGatheringTimeout
Added a default 'MEDIA' option: iceGatheringTimeout. This option allows admin to set a higher ICE gathering timeout, which can help when getting ICE errors during audio negotiation (eg 1004)
Default value set to 15s (current default is 5s).
2020-10-23 11:21:20 -03:00
Mario Jr
993c3a5a8a Do not show reconnect/disconnect message when new ICE candidates are found
Sometimes, when user already joined audio session, RTCPeerConnection may
find new ICE candidates, which triggers 'connected' state for peer's
'onconnectionstatechange' event. When this happens we process this
new state the same way when user is not running an audio session, which
makes html5client popup an annoying 'Audio Connected' message.
The audio keeps working fine, but this can make user think that there's a
connection issue, or the audio is reconnecting, while audio is ok.
2020-10-23 11:20:08 -03:00
Anton Georgiev
21ab1e0d47
Merge pull request #10663 from Zh4rsiest/ios-safari-fix
Fix for OSX and iOS Safari errors in console
2020-10-22 15:03:37 -04:00
Zh4rsiest
096556a74f
Dropdown component.jsx update
On mobile if you clicked on a user or your own user to set their status, the tethered modal would keep it's z-index, which would prevent the user from interacting with anything because the tethered modal would overlap the whole site.
2020-10-22 19:14:50 +02:00
KDSBrowne
e116396481 add error boundry to presentation upload modal 2020-10-22 13:00:09 +00:00
Joao Siebel
e50c348874 WIP improve log 2020-10-21 14:27:40 -03:00
Lucas Zawacki
7efcd3b87e Dont include extra dot in instructure media url 2020-10-21 14:00:51 -03:00
Joao Siebel
be8421db3c Merge remote-tracking branch 'upstream/develop' into connection-manager 2020-10-21 13:57:17 -03:00
KDSBrowne
73f890c9d8 Merge branch 'develop' of https://github.com/bigbluebutton/bigbluebutton into 2.3-updated-polling 2020-10-21 16:05:03 +00:00
Anton Georgiev
e18d94dd23 resolve media/component issues after 2.2.28 merge 2020-10-21 14:50:06 +00: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