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 = 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 cookiesManager from './cookiesManager';
import * as requestActions from './redux/requestActions'; import * as requestActions from './redux/requestActions';
import * as stateActions from './redux/stateActions'; import * as stateActions from './redux/stateActions';
import {
turnServers,
requestTimeout,
transportOptions
} from '../config';
const logger = new Logger('RoomClient'); const logger = new Logger('RoomClient');
const ROOM_OPTIONS = const ROOM_OPTIONS =
{ {
requestTimeout : 10000, requestTimeout : requestTimeout,
transportOptions : transportOptions : transportOptions,
{ turnServers : turnServers
tcp : true
}
}; };
const VIDEO_CONSTRAINS = const VIDEO_CONSTRAINS =

View File

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

View File

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

View File

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