|
@@ -6,10 +6,10 @@ let shouldReconnect = true;
|
|
|
let heartbeatId = null;
|
|
|
const RECONNECT_INTERVAL = 3000;
|
|
|
const HEARTBEAT_INTERVAL = 50 * 1000;
|
|
|
+let reconnectNumber = 0;
|
|
|
|
|
|
export function openWS({ examRecordDataId }) {
|
|
|
console.log("in openWS", examRecordDataId);
|
|
|
- console.log("in openWS", store);
|
|
|
ws = new WebSocket(
|
|
|
"ws://192.168.10.39:8010" +
|
|
|
`/audioAnswerWebSocket/${examRecordDataId}/${store.state.user.key}/${
|
|
@@ -19,6 +19,7 @@ export function openWS({ examRecordDataId }) {
|
|
|
|
|
|
ws.onopen = event => {
|
|
|
console.log("open ws", event);
|
|
|
+ reconnectNumber = 0;
|
|
|
|
|
|
ws.onmessage = processWSMessage;
|
|
|
|
|
@@ -29,6 +30,14 @@ export function openWS({ examRecordDataId }) {
|
|
|
console.log("close -> reconnect");
|
|
|
setTimeout(() => {
|
|
|
// tryWSReconnect();
|
|
|
+ reconnectNumber++;
|
|
|
+ if (reconnectNumber >= 5) {
|
|
|
+ Message.error({
|
|
|
+ content: "Websocket重连失败",
|
|
|
+ duration: 3,
|
|
|
+ closable: true
|
|
|
+ });
|
|
|
+ }
|
|
|
openWS({ examRecordDataId });
|
|
|
}, RECONNECT_INTERVAL);
|
|
|
} else {
|
|
@@ -60,12 +69,12 @@ export function closeWsWithoutReconnect() {
|
|
|
ws.close();
|
|
|
}
|
|
|
|
|
|
-export function getQRCode(questionId) {
|
|
|
+export function getQRCode(order) {
|
|
|
if (ws.readyState === ws.OPEN) {
|
|
|
ws.send(
|
|
|
JSON.stringify({
|
|
|
eventType: "GET_QR_CODE",
|
|
|
- questionId
|
|
|
+ order
|
|
|
})
|
|
|
);
|
|
|
return true;
|
|
@@ -93,19 +102,19 @@ function processWSMessage(event) {
|
|
|
console.log("get qrcode", res);
|
|
|
store.commit("examingHomeModule/setQuestionQrCode", {
|
|
|
qrCode: res.data.qrCode,
|
|
|
- questionId: res.data.questionId
|
|
|
+ order: res.data.order
|
|
|
});
|
|
|
break;
|
|
|
case "SCAN_QR_CODE":
|
|
|
console.log("wx scanned qrcode", res);
|
|
|
store.commit("examingHomeModule/setQuestionQrCodeScanned", {
|
|
|
- questionId: res.data.questionId
|
|
|
+ order: res.data.order
|
|
|
});
|
|
|
break;
|
|
|
case "GET_AUDIO_ANSWER":
|
|
|
console.log("get audio url", res);
|
|
|
store.commit("examingHomeModule/setQuestionAudioFileUrl", {
|
|
|
- questionId: res.data.questionId,
|
|
|
+ order: res.data.order,
|
|
|
audioFileUrl: res.data.audioFileUrl
|
|
|
});
|
|
|
break;
|