mirror of
https://github.com/edumeet/edumeet.git
synced 2026-01-23 18:47:15 +00:00
Keep A/V mute state during reconnection. fixes 510
This commit is contained in:
parent
4dc507453c
commit
48baea3cf2
4 changed files with 50 additions and 4 deletions
|
|
@ -969,6 +969,10 @@ export default class RoomClient
|
|||
|
||||
store.dispatch(
|
||||
producerActions.setProducerPaused(this._micProducer.id));
|
||||
|
||||
store.dispatch(
|
||||
settingsActions.setAudioMuted(true));
|
||||
|
||||
}
|
||||
catch (error)
|
||||
{
|
||||
|
|
@ -1004,6 +1008,10 @@ export default class RoomClient
|
|||
|
||||
store.dispatch(
|
||||
producerActions.setProducerResumed(this._micProducer.id));
|
||||
|
||||
store.dispatch(
|
||||
settingsActions.setAudioMuted(false));
|
||||
|
||||
}
|
||||
catch (error)
|
||||
{
|
||||
|
|
@ -1367,6 +1375,7 @@ export default class RoomClient
|
|||
}
|
||||
|
||||
async updateWebcam({
|
||||
init = false,
|
||||
start = false,
|
||||
restart = false,
|
||||
newDeviceId = null,
|
||||
|
|
@ -1402,6 +1411,13 @@ export default class RoomClient
|
|||
if (newFrameRate)
|
||||
store.dispatch(settingsActions.setVideoFrameRate(newFrameRate));
|
||||
|
||||
const { videoMuted } = store.getState().settings;
|
||||
|
||||
if (init && videoMuted)
|
||||
return;
|
||||
else
|
||||
store.dispatch(settingsActions.setVideoMuted(false));
|
||||
|
||||
store.dispatch(meActions.setWebcamInProgress(true));
|
||||
|
||||
const deviceId = await this._getWebcamDeviceId();
|
||||
|
|
@ -3314,7 +3330,7 @@ export default class RoomClient
|
|||
this._havePermission(permissions.SHARE_VIDEO)
|
||||
)
|
||||
{
|
||||
this.updateWebcam({ start: true });
|
||||
this.updateWebcam({ init: true, start: true });
|
||||
}
|
||||
if (
|
||||
joinAudio &&
|
||||
|
|
@ -3928,7 +3944,7 @@ export default class RoomClient
|
|||
}
|
||||
|
||||
this._webcamProducer = null;
|
||||
|
||||
store.dispatch(settingsActions.setVideoMuted(true));
|
||||
store.dispatch(meActions.setWebcamInProgress(false));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -137,4 +137,16 @@ export const setMediaPerms = (mediaPerms) =>
|
|||
({
|
||||
type : 'SET_MEDIA_PERMS',
|
||||
payload : { mediaPerms }
|
||||
});
|
||||
|
||||
export const setAudioMuted = (audioMuted) =>
|
||||
({
|
||||
type : 'SET_AUDIO_MUTED',
|
||||
payload : { audioMuted }
|
||||
});
|
||||
|
||||
export const setVideoMuted = (videoMuted) =>
|
||||
({
|
||||
type : 'SET_VIDEO_MUTED',
|
||||
payload : { videoMuted }
|
||||
});
|
||||
|
|
@ -215,7 +215,9 @@ const Me = (props) =>
|
|||
defaultMessage : 'Activate audio'
|
||||
});
|
||||
}
|
||||
else if (!micProducer.locallyPaused && !micProducer.remotelyPaused)
|
||||
else if (!micProducer.locallyPaused &&
|
||||
!micProducer.remotelyPaused &&
|
||||
!settings.audioMuted)
|
||||
{
|
||||
micState = 'on';
|
||||
micTip = intl.formatMessage({
|
||||
|
|
@ -244,7 +246,7 @@ const Me = (props) =>
|
|||
defaultMessage : 'Video unsupported'
|
||||
});
|
||||
}
|
||||
else if (webcamProducer)
|
||||
else if (webcamProducer && !settings.videoMuted)
|
||||
{
|
||||
webcamState = 'on';
|
||||
webcamTip = intl.formatMessage({
|
||||
|
|
|
|||
|
|
@ -13,6 +13,8 @@ const initialState =
|
|||
voiceActivatedUnmute : false,
|
||||
noiseThreshold : -50,
|
||||
sampleSize : 16,
|
||||
audioMuted : false,
|
||||
videoMuted : false,
|
||||
// low, medium, high, veryhigh, ultra
|
||||
resolution : window.config.defaultResolution || 'medium',
|
||||
frameRate : window.config.defaultFrameRate || 15,
|
||||
|
|
@ -232,6 +234,20 @@ const settings = (state = initialState, action) =>
|
|||
return { ...state, mediaPerms };
|
||||
}
|
||||
|
||||
case 'SET_AUDIO_MUTED':
|
||||
{
|
||||
const { audioMuted } = action.payload;
|
||||
|
||||
return { ...state, audioMuted };
|
||||
}
|
||||
|
||||
case 'SET_VIDEO_MUTED':
|
||||
{
|
||||
const { videoMuted } = action.payload;
|
||||
|
||||
return { ...state, videoMuted };
|
||||
}
|
||||
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue