Compare commits

..

No commits in common. "489f4d9e794082ad4dd4dd441e2933336070f4ae" and "8d383fcb5a1c0714f05c19192962097df0c12f8d" have entirely different histories.

3 changed files with 24 additions and 18 deletions

View File

@ -9,7 +9,7 @@ import Meeting from '@/page/Meeting/index'
import NotFound from '@/page/NotFound/index'
import { storage } from '@/utils'
import { message, Spin } from "antd";
import { onOtherSignalr, onStop, startSignalr } from "@/utils/package/signalr";
import { onOtherSignalr, onReconnected, onStop, startSignalr } from "@/utils/package/signalr";
import JoinMeetingModal from "@/components/JoinMeetingModal";
import UpdateModal from "@/components/UpdateModal";
import * as CryptoJS from 'crypto-js';
@ -185,6 +185,9 @@ const App: React.FC = () => {
break;
}
})
onReconnected(async () => {
storage.setItem('reconnect', true)
})
}
const toSrc = (path: string): void => {
window.electron.getWindowSize().then((res: any) => {

View File

@ -232,31 +232,31 @@ const Meeting: React.FC = () => {
case 0:
setNetworkQuality({
level: '断开连接',
text: '网络连接断开'
text: '网络连接断开'
})
break;
case 1:
setNetworkQuality({
level: '非常差',
text: '完全无法沟通'
text: '完全无法沟通'
})
break;
case 2:
setNetworkQuality({
level: '差',
text: '勉强能沟通但不顺畅'
text: '勉强能沟通但不顺畅,网络质量非常差,基本不能沟通。'
})
break;
case 3:
setNetworkQuality({
level: '良好',
text: ' 有瑕疵但不影响沟通'
text: ' 用户主观感受有瑕疵但不影响沟通'
})
break;
case 4:
setNetworkQuality({
level: '佳',
text: '网络质量极好'
text: '网络质量极好'
})
break;
}
@ -748,7 +748,7 @@ const Meeting: React.FC = () => {
setCurrentEffective(0)
break;
default:
setCurrentEffective(storage.getItem('reconnect') =='true'? 4 : 0)
setCurrentEffective(storage.getItem('reconnect') ? 4 : 0)
break;
}
}
@ -759,6 +759,7 @@ const Meeting: React.FC = () => {
onConnectionStateChanged: async (_connection: RtcConnection, stateNumber: ConnectionStateType, reason: ConnectionChangedReasonType) => {
const reconnectingCode = [2, 16, 11, 13, 14, 12]
if (stateNumber === 4 && reconnectingCode.indexOf(reason) >= 0) {
storage.setItem('reconnect', false)
message.error('网络断开,请检查网络')
}
},
@ -1211,10 +1212,10 @@ const Meeting: React.FC = () => {
await getLeave()
}
await agora.leaveChannel()
if (user.isAnonymous) {
storage.setItem('userLogin', false)
} else {
if (Number(user.perms)) {
navigate('/home/index')
} else {
storage.setItem('userLogin', false)
}
}
// 分享屏幕

View File

@ -10,15 +10,10 @@ export const startSignalr = async () => {
accessTokenFactory: () => user.token
})
.build();
onStart()
await onStart()
storage.setItem('isSignalr', true)
storage.setItem('reconnect', true)
connection.onreconnected(async () => {
storage.setItem('reconnect', true)
});
connection.onreconnecting(async () => {
onStart()
storage.setItem('reconnect', false)
connection.onclose(async () => {
await onStart()
});
}
@ -34,6 +29,13 @@ export const onStart = async (callBack?: Function) => {
}
}
}
export const onReconnected = async (callBack: Function) => {
if (connection) {
connection.onreconnected(async (_newConnectionId: any) => {
callBack()
});
}
}
export const onOtherSignalr = (callBack: Function) => {
if (connection) {
// 邀请