From 2b7d48e8073b64ddb853fdcdb25c4eea4604e54d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B2=A1=E5=A4=8D=E4=B9=A0?= <2353956224@qq.com> Date: Mon, 4 Aug 2025 13:14:26 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=B7=E7=9B=B4=E6=92=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/server/mw/WebsocketProxy.ts | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/src/server/mw/WebsocketProxy.ts b/src/server/mw/WebsocketProxy.ts index a1e6db4..92b189b 100644 --- a/src/server/mw/WebsocketProxy.ts +++ b/src/server/mw/WebsocketProxy.ts @@ -289,6 +289,8 @@ export class WebsocketProxy extends Mw { time = 2 } else if (parsedMessage.type == 'CommentText') { time = 5 + } else if (parsedMessage.type == 'isHead') { + time = 20 } console.log("time", time) @@ -343,6 +345,9 @@ export class WebsocketProxy extends Mw { } else if (parsedMessage.type == 'hostVideo') { console.log('第' + parsedMessage.num + '个节点') bounds = targetNodeList[parsedMessage.num].bounds; // 选择节点列表中的第一个节点 + } else if (parsedMessage.type == 'isHead') { + this.ws.send(JSON.stringify({ type: parsedMessage.type, status: 'success', message: 1, udid: parsedMessage.udid, index: parsedMessage.index })); + return; } else { console.log('第一个节点') bounds = targetNodeList[0].bounds; // 选择节点列表中的第一个节点 @@ -363,6 +368,12 @@ export class WebsocketProxy extends Mw { this.ws.send(JSON.stringify({ type: parsedMessage.type, status: 'success', message: '坐标返回', udid: parsedMessage.udid, index: parsedMessage.index, x: clickX, y: clickY })); return; } + if (parsedMessage.type == 'isOneLive') { + console.log('复制坐标'); + this.ws.send(JSON.stringify({ type: parsedMessage.type, status: 'success', message: 1, udid: parsedMessage.udid, index: parsedMessage.index, x: clickX, y: clickY })); + return; + } + exec(`adb -s ${parsedMessage.udid} shell input tap ${clickX} ${clickY}`, (clickErr: Error | null) => { if (clickErr) { // this.ws.send(JSON.stringify({ status: 'error', message: '点击失败:' + clickErr.message })); @@ -390,9 +401,16 @@ export class WebsocketProxy extends Mw { if (parsedMessage.type == 'isHost') { this.ws.send(JSON.stringify({ type: parsedMessage.type, status: 'success', message: 0, udid: parsedMessage.udid, index: parsedMessage.index })); return; + } else if (parsedMessage.type == 'isOneLive') { + this.ws.send(JSON.stringify({ type: parsedMessage.type, status: 'success', message: 0, udid: parsedMessage.udid, index: parsedMessage.index })); + return; + + } else if (parsedMessage.type == 'isHead') { + this.ws.send(JSON.stringify({ type: parsedMessage.type, status: 'success', message: 0, udid: parsedMessage.udid, index: parsedMessage.index })); + return; } else { this.ws.send(JSON.stringify({ status: 'error', type: parsedMessage.type, message: '未找到按钮' })); - console.log('未找到按钮') + console.log('未找到按钮', parsedMessage.index, parsedMessage.type) } } @@ -482,6 +500,7 @@ export class WebsocketProxy extends Mw { this.ws.send(JSON.stringify({ type: parsedMessage.type, status: 'success', message: '坐标返回', udid: parsedMessage.udid, index: parsedMessage.index, x: clickX, y: clickY })); return; } + exec(`adb -s ${parsedMessage.udid} shell input tap ${clickX} ${clickY}`, (clickErr: Error | null) => { if (clickErr) { // this.ws.send(JSON.stringify({ status: 'error', message: '点击失败:' + clickErr.message })); @@ -511,7 +530,8 @@ export class WebsocketProxy extends Mw { return; } else { this.ws.send(JSON.stringify({ status: 'error', type: parsedMessage.type, message: '未找到按钮' })); - console.log('未找到按钮') + console.log('未找到按钮', parsedMessage.index, parsedMessage.type) + } }