Updated config handling and moved some configs to global config file.

master
Håvar Aambø Fosstveit 2018-06-29 10:25:33 +02:00
parent c755e2f7f0
commit ebe78080be
6 changed files with 55 additions and 19 deletions

View File

@ -1,4 +1,19 @@
module.exports =
{
chromeExtension : 'https://chrome.google.com/webstore/detail/fckajcjdaabdgnbdcmhhebdglogjfodi'
chromeExtension : 'https://chrome.google.com/webstore/detail/fckajcjdaabdgnbdcmhhebdglogjfodi',
loginEnabled : false,
turnServers : [
{
urls : [
'turn:example.com:443?transport=tcp'
],
username : 'example',
credential : 'example'
}
],
requestTimeout : 10000,
transportOptions :
{
tcp : true
}
};

View File

@ -6,16 +6,19 @@ import { getProtooUrl } from './urlFactory';
import * as cookiesManager from './cookiesManager';
import * as requestActions from './redux/requestActions';
import * as stateActions from './redux/stateActions';
import {
turnServers,
requestTimeout,
transportOptions
} from '../config';
const logger = new Logger('RoomClient');
const ROOM_OPTIONS =
{
requestTimeout : 10000,
transportOptions :
{
tcp : true
}
requestTimeout : requestTimeout,
transportOptions : transportOptions,
turnServers : turnServers
};
const VIDEO_CONSTRAINS =

View File

@ -152,14 +152,17 @@ class Room extends React.Component
}}
/>
<div
className={classnames('button', 'login', 'off', {
disabled : me.loginInProgress
})}
data-tip='Login'
data-type='dark'
onClick={() => onLogin()}
/>
{me.loginEnabled ?
<div
className={classnames('button', 'login', 'off', {
disabled : me.loginInProgress
})}
data-tip='Login'
data-type='dark'
onClick={() => onLogin()}
/>
:null
}
<div
className={classnames('button', 'raise-hand', {

View File

@ -20,6 +20,7 @@ import * as stateActions from './redux/stateActions';
import reducers from './redux/reducers';
import roomClientMiddleware from './redux/roomClientMiddleware';
import Room from './components/Room';
import { loginEnabled } from '../config';
const logger = new Logger();
const reduxMiddlewares =
@ -142,7 +143,7 @@ function run()
// NOTE: I don't like this.
store.dispatch(
stateActions.setMe({ peerName, displayName, displayNameSet, device }));
stateActions.setMe({ peerName, displayName, displayNameSet, device, loginEnabled }));
// NOTE: I don't like this.
store.dispatch(

View File

@ -16,6 +16,7 @@ const initialState =
audioInProgress : false,
screenShareInProgress : false,
loginInProgress : false,
loginEnabled : false,
audioOnly : false,
audioOnlyInProgress : false,
raiseHand : false,
@ -29,9 +30,22 @@ const me = (state = initialState, action) =>
{
case 'SET_ME':
{
const { peerName, displayName, displayNameSet, device } = action.payload;
const {
peerName,
displayName,
displayNameSet,
device,
loginEnabled
} = action.payload;
return { ...state, name: peerName, displayName, displayNameSet, device };
return {
...state,
name : peerName,
displayName,
displayNameSet,
device,
loginEnabled
};
}
case 'SET_MEDIA_CAPABILITIES':

View File

@ -22,11 +22,11 @@ export const setRoomActiveSpeaker = (peerName) =>
};
};
export const setMe = ({ peerName, displayName, displayNameSet, device }) =>
export const setMe = ({ peerName, displayName, displayNameSet, device, loginEnabled }) =>
{
return {
type : 'SET_ME',
payload : { peerName, displayName, displayNameSet, device }
payload : { peerName, displayName, displayNameSet, device, loginEnabled }
};
};