aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorcsett86 <csett86@web.de>2021-06-27 20:57:44 +0200
committerGitHub <noreply@github.com>2021-06-27 20:57:44 +0200
commite5d5bcc1db77924afb441453382b5009b37c8d59 (patch)
tree88ef4b2e8be0d900a05cd542ededd2197086d207 /app
parent2baa4b528202e09552469dbb4c90bbb783a43e59 (diff)
feat: support config overwrite via URL parameters (#594)
Signed-off-by: Christoph Settgast <csett86@web.de>
Diffstat (limited to 'app')
-rw-r--r--app/features/conference/components/Conference.js17
1 files changed, 17 insertions, 0 deletions
diff --git a/app/features/conference/components/Conference.js b/app/features/conference/components/Conference.js
index 82b184d..6d88116 100644
--- a/app/features/conference/components/Conference.js
+++ b/app/features/conference/components/Conference.js
@@ -209,6 +209,15 @@ class Conference extends Component<Props, State> {
const roomName = url.pathname.split('/').pop();
const host = this._conference.serverURL.replace(/https?:\/\//, '');
const searchParameters = Object.fromEntries(url.searchParams);
+ const hashParameters = url.hash.substring(1).split('&')
+ .reduce((res, item) => {
+ const parts = item.split('=');
+
+ res[parts[0]] = parts[1];
+
+ return res;
+ }, {});
+
const locale = { lng: i18n.language };
const urlParameters = {
...searchParameters,
@@ -221,6 +230,14 @@ class Conference extends Component<Props, State> {
startWithVideoMuted: this.props._startWithVideoMuted
};
+ Object.entries(hashParameters).forEach(([ key, value ]) => {
+ if (key.startsWith('config.')) {
+ const configKey = key.substring('config.'.length);
+
+ configOverwrite[configKey] = value;
+ }
+ });
+
const options = {
configOverwrite,
onload: this._onIframeLoad,