huangxiaojing лет назад: 3
Родитель
Сommit
da1eef77fa
4 измененных файлов с 58 добавлено и 13 удалено
  1. 3 3
      screenAndroid/WXdraw.js
  2. 28 3
      screenIos/WXdraw.js
  3. 3 1
      screenIos/WXtrialInterface.html
  4. 24 6
      screenIos/websocket.js

+ 3 - 3
screenAndroid/WXdraw.js

@@ -36,7 +36,7 @@ var cUrl = isWSS ? "wss://" + form.domainName + "/card?cardIp=" + form.ip : "ws:
 var wsss,errorTime = 0;
 doConnect();
 function throttle(fn, delay) {
-	let flag = true;
+	var flag = true;
 	errorTime += delay;
 	return () => {
 		if (!flag) return;
@@ -67,7 +67,7 @@ function doConnect() {
 	};
 	wsss.onclose = function (evt) {
 		console.log(evt);
-		ws.close();
+		wsss.close();
 		throttle(doConnect,100);
 		if(errorTime > 1000){
 			wx.miniProgram.switchTab({
@@ -77,7 +77,7 @@ function doConnect() {
 	};
 	wsss.onerror = function (evt) {
 		console.log(evt);
-		ws.close();
+		wsss.close();
 		throttle(doConnect,100);
 		if(errorTime > 1000){
 			wx.miniProgram.switchTab({

+ 28 - 3
screenIos/WXdraw.js

@@ -32,7 +32,22 @@ var isWSS = true;
 var cUrl = isWSS ? "wss://" + form.domainName + "/card?cardIp=" + form.ip : "ws://" + form.domainName + "/card?cardIp=" + form.ip;
 
 var wsss;
+var errorTime = 0;
 doConnect();
+
+function throttle(fn, delay) {
+	var flag = true;
+	errorTime += delay;
+	return () => {
+		if (!flag) return;
+		flag = false;
+		timer = setTimeout(() => {
+			fn();
+			flag = true;
+		}, delay);
+	};
+}
+
 function doConnect() {
 	wsss = new WebSocket(cUrl);
 	wsss.binaryType = 'arraybuffer';
@@ -52,11 +67,21 @@ function doConnect() {
 	};
 	wsss.onclose = function () {
 		wsss.close();
-		doConnect();
+		throttle(doConnect, 100);
+		if (errorTime > 1000) {
+			wx.miniProgram.switchTab({
+				url: '/pages/home/home'
+			})
+		}
 	};
 	wsss.onerror = function () {
 		wsss.close();
-		doConnect();
+		throttle(doConnect, 100);
+		if (errorTime > 1000) {
+			wx.miniProgram.switchTab({
+				url: '/pages/home/home'
+			})
+		}
 	};
 }
 $('body').on("click", function () {
@@ -83,7 +108,7 @@ $(".botmat1img").on("click", function () {
 	} else if (codes == "return") {
 		wsss.send(ExexuteKeyBoard(4, form.sn));
 	} else if (codes == "gengduo") {
-		wsss.send(ExexuteKeyBoard(187, form.sn)); 
+		wsss.send(ExexuteKeyBoard(187, form.sn));
 	}
 })
 //高清控制

+ 3 - 1
screenIos/WXtrialInterface.html

@@ -491,7 +491,9 @@
 				}
 			}
 			if (event.data === 'close') {
-				webSocketWorker.postMessage('restart');
+				wx.miniProgram.switchTab({
+					url: '/pages/home/home'
+				})
 			}
 		}
 

+ 24 - 6
screenIos/websocket.js

@@ -3,20 +3,42 @@ var parameters = GetRequest();
 var ip = parameters["ip"];
 var domainName = parameters["domainName"];
 var isWSS = true;
+var errorTime = 0;
 var socketURL = isWSS ? "wss://" + domainName + "/card?cardIp=" + ip : "ws://" + domainName + "/card?cardIp=" + ip;
 
 doConnect();
 
+function throttle(fn, delay) {
+	var flag = true;
+	errorTime += delay;
+	return () => {
+		if (!flag) return;
+		flag = false;
+		timer = setTimeout(() => {
+			fn();
+			flag = true;
+		}, delay);
+	};
+}
+
 function doConnect() {
 	var ws = new WebSocket(socketURL);
 	ws.binaryType = 'arraybuffer';
 
 	ws.onclose = function () {
-		self.postMessage('close');
+		ws.close();
+		throttle(doConnect, 100);
+		if (errorTime > 1000) {
+			self.postMessage('close');
+		}
 	}
 
 	ws.onerror = function () {
-		self.postMessage('close');
+		ws.close();
+		throttle(doConnect, 100);
+		if (errorTime > 1000) {
+			self.postMessage('close');
+		}
 	}
 
 	ws.addEventListener('open', function (event) {
@@ -36,10 +58,6 @@ function doConnect() {
 	});
 
 	self.addEventListener('message', function (e) {
-		if (e.data === 'restart') {
-			doConnect();
-			return
-		}
 		ws.send(e.data);
 	}, false);
 }