From 0f8b27d2d889767fa03b7c3e585c45f6e6c1947e Mon Sep 17 00:00:00 2001 From: prlanzarin <prlanzarin@inf.ufrgs.br> Date: Thu, 9 Jul 2020 15:22:14 +0000 Subject: [PATCH] video-provider: make camera timeouts configurable Also add missing settings.yml val for wsConnectionTimeout --- .../ui/components/video-provider/component.jsx | 11 +++++++---- bigbluebutton-html5/private/config/settings.yml | 10 ++++++++++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/bigbluebutton-html5/imports/ui/components/video-provider/component.jsx b/bigbluebutton-html5/imports/ui/components/video-provider/component.jsx index 3cf2ef4e47..ffaba6b105 100755 --- a/bigbluebutton-html5/imports/ui/components/video-provider/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/video-provider/component.jsx @@ -27,8 +27,13 @@ import VideoList from './video-list/component'; const ENABLE_NETWORK_MONITORING = Meteor.settings.public.networkMonitoring.enableNetworkMonitoring; const CAMERA_PROFILES = Meteor.settings.public.kurento.cameraProfiles; -const WS_CONN_TIMEOUT = Meteor.settings.public.kurento.wsConnectionTimeout; - +// Default values and default empty object to be backwards compat with 2.2. +// FIXME Remove hardcoded defaults 2.3. +const WS_CONN_TIMEOUT = Meteor.settings.public.kurento.wsConnectionTimeout || 4000; +const { + baseTimeout: CAMERA_SHARE_FAILED_WAIT_TIME = 15000, + maxTimeout: MAX_CAMERA_SHARE_FAILED_WAIT_TIME = 60000, +} = Meteor.settings.public.kurento.cameraTimeouts || {}; const intlClientErrors = defineMessages({ iceCandidateError: { @@ -112,8 +117,6 @@ const intlSFUErrors = defineMessages({ }, }); -const CAMERA_SHARE_FAILED_WAIT_TIME = 15000; -const MAX_CAMERA_SHARE_FAILED_WAIT_TIME = 60000; const PING_INTERVAL = 15000; const propTypes = { diff --git a/bigbluebutton-html5/private/config/settings.yml b/bigbluebutton-html5/private/config/settings.yml index 329d6edcdb..20214bba08 100755 --- a/bigbluebutton-html5/private/config/settings.yml +++ b/bigbluebutton-html5/private/config/settings.yml @@ -86,6 +86,16 @@ public: packetLostThreshold: 10 kurento: wsUrl: HOST + # Valid for video-provider. Time (ms) before its WS connection times out + # and tries to reconnect. + wsConnectionTimeout: 4000 + cameraTimeouts: + # Base camera timeout: used as the camera *sharing* timeout and + # as the minimum camera subscribe reconnection timeout + baseTimeout: 15000 + # Max timeout: used as the max camera subscribe reconnection timeout. Each + # subscribe reattempt increases the reconnection timer up to this + maxTimeout: 60000 chromeDefaultExtensionKey: akgoaoikmbmhcopjgakkcepdgdgkjfbc chromeDefaultExtensionLink: https://chrome.google.com/webstore/detail/bigbluebutton-screenshare/akgoaoikmbmhcopjgakkcepdgdgkjfbc chromeExtensionKey: KEY -- GitLab