yangjie #47
|
|
@ -194,6 +194,7 @@ const Meeting: React.FC = () => {
|
|||
const [isShare, setIsShare] = useState<any>(null)
|
||||
const [isSharePopConfirm, setIsSharePopConfirm] = useState(false)
|
||||
const [_isNetworkDisconnected, setIsNetworkDisconnected] = useState(false)
|
||||
const [isAgoraDisconnected, setIsAgoraDisconnected] = useState(false)
|
||||
const [isShareUser, setIsShareUser] = useState<any>(null)
|
||||
const [currentLookUserStatus, setCurrentLookUserStatus] = useState<0 | 1 | 2 | 3 | 4>(1)
|
||||
const [commonlyChatList] = useState<any>([
|
||||
|
|
@ -216,6 +217,7 @@ const Meeting: React.FC = () => {
|
|||
const msgTips = '您不是管理员或发言人,无法开启此功能!'
|
||||
const channel = new BroadcastChannel('meeting_channel');
|
||||
let storeDevice: any;
|
||||
let agoraTime: NodeJS.Timeout;
|
||||
useEffect(() => {
|
||||
window.electron.createChildWindow('hide')
|
||||
let time: NodeJS.Timeout;
|
||||
|
|
@ -600,6 +602,30 @@ const Meeting: React.FC = () => {
|
|||
}
|
||||
}, [currentVideoId, isShare]);
|
||||
|
||||
useEffect(() => {
|
||||
if (isAgoraDisconnected) {
|
||||
agoraTime = setTimeout(() => {
|
||||
confirm({
|
||||
keyboard: false,
|
||||
title: '提示',
|
||||
icon: <ExclamationCircleFilled />,
|
||||
content: `重连失败,请退出房间重试!`,
|
||||
centered: true,
|
||||
okText: '退出',
|
||||
wrapClassName: 'hideCancelText',
|
||||
cancelText: '',
|
||||
async onOk() {
|
||||
leaveChannel()
|
||||
},
|
||||
})
|
||||
clearTimeout(agoraTime)
|
||||
}, 1000 * 60);
|
||||
} else {
|
||||
clearTimeout(agoraTime)
|
||||
}
|
||||
return () => clearTimeout(agoraTime);
|
||||
}, [isAgoraDisconnected]);
|
||||
|
||||
useEffect(() => {
|
||||
window.electron.onSignalr(async (_e: any, item: any) => {
|
||||
const setting = JSON.parse(storage.getItem('setting') as string)
|
||||
|
|
@ -1261,10 +1287,12 @@ const Meeting: React.FC = () => {
|
|||
|
||||
} else if (state === 3) {
|
||||
meetingDisconnectedRef.current.changeModal(false)
|
||||
setIsAgoraDisconnected(false)
|
||||
}
|
||||
},
|
||||
onConnectionLost: () => {
|
||||
meetingDisconnectedRef.current.changeModal(true)
|
||||
setIsAgoraDisconnected(true)
|
||||
setIsScreenCapture(bool => {
|
||||
if (bool) {
|
||||
setIsNetworkDisconnected(true)
|
||||
|
|
@ -1979,6 +2007,7 @@ const Meeting: React.FC = () => {
|
|||
if (e.value == true) {
|
||||
message.success('网络已连接。')
|
||||
meetingDisconnectedRef.current.changeModal(false)
|
||||
setIsAgoraDisconnected(false)
|
||||
async function setUserStatus(res: any) {
|
||||
let userItem = res.find((item: any) => item.uid === userInfo.uid)
|
||||
await window.electron.onInvoke('joinChannel', {
|
||||
|
|
|
|||
Loading…
Reference in New Issue