From 67ca6184e93fede3c5c1368bffdb471b3631392c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=89=8B=E7=93=9C=E4=B8=80=E5=8D=81=E9=9B=AA?= Date: Sun, 13 Oct 2024 17:09:23 +0800 Subject: [PATCH] Revert "fix" This reverts commit d79e91fc1e110c0edc213a566fa75ec5f8967a1e. --- src/core/apis/file.ts | 12 ++++++++---- src/core/apis/packet.ts | 15 ++------------- src/core/helper/rkey.ts | 17 +---------------- 3 files changed, 11 insertions(+), 33 deletions(-) diff --git a/src/core/apis/file.ts b/src/core/apis/file.ts index 6b313f14..df5b79db 100644 --- a/src/core/apis/file.ts +++ b/src/core/apis/file.ts @@ -35,7 +35,6 @@ export class NTQQFileApi { this.context = context; this.core = core; this.rkeyManager = new RkeyManager(['https://llob.linyuchen.net/rkey', 'http://napcat-sign.wumiao.wang:2082/rkey'], this.context.logger); - } async copyFile(filePath: string, destPath: string) { @@ -376,9 +375,14 @@ export class NTQQFileApi { group_rkey: 'CAQSKAB6JWENi5LM_xp9vumLbuThJSaYf-yzMrbZsuq7Uz2qffcqm614gds', online_rkey: false }; - - - + if (this.core.apis.PacketApi.PacketClient?.isConnected) { + let rkeylist = await this.core.apis.PacketApi.sendRkeyPacket(); + if (rkeylist.length > 0) { + rkeyData.group_rkey = rkeylist[0].rkey; + rkeyData.private_rkey = rkeylist[1].rkey; + rkeyData.online_rkey = true; + } + } if (!rkeyData.online_rkey) { try { let tempRkeyData = await this.rkeyManager.getRkey(); diff --git a/src/core/apis/packet.ts b/src/core/apis/packet.ts index 3fb91d79..a0886a98 100644 --- a/src/core/apis/packet.ts +++ b/src/core/apis/packet.ts @@ -46,19 +46,8 @@ export class NTQQPacketApi { await this.PacketClient.connect(); await this.PacketClient.init(process.pid, table.recv, table.send); this.isInit = true; - this.InitOtherServer() return this.isInit; } - async InitOtherServer() { - this.core.apis.FileApi.rkeyManager.regOutputRkey( - async () => { - let rkeylist = await this.core.apis.PacketApi.sendRkeyPacket(); - if (rkeylist.length > 0) { - return rkeylist; - } - return undefined; - }); - } randText(len: number) { let text = ''; let possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; @@ -85,8 +74,8 @@ export class NTQQPacketApi { async sendRkeyPacket() { let u8 = await this.core.apis.PacketApi.buildRkeyPacket() let ret = await this.core.apis.PacketApi.sendPacket('OidbSvcTrpcTcp.0x9067_202', Buffer.from(u8).toString('hex'), true); - if (!ret?.hex_data) return [] - let body = new NapProtoMsg(OidbSvcTrpcTcpBaseRsp).decode(Buffer.from(ret.hex_data, 'hex')).body; + if(!ret?.hex_data) return [] + let body = new NapProtoMsg(OidbSvcTrpcTcpBaseRsp).decode(Buffer.from(ret.hex_data,'hex')).body; //console.log('ret: ', Buffer.from(body).toString('hex')); let retdata = new NapProtoMsg(OidbSvcTrpcTcp0X9067_202_Rsp_Body).decode(body) //console.log('ret: ', JSON.stringify(retdata.data.rkeyList)); diff --git a/src/core/helper/rkey.ts b/src/core/helper/rkey.ts index f7f257d9..852cafed 100644 --- a/src/core/helper/rkey.ts +++ b/src/core/helper/rkey.ts @@ -10,7 +10,6 @@ interface ServerRkeyData { export class RkeyManager { serverUrl: string[] = []; logger: LogWrapper; - rkeyGetCb: any; private rkeyData: ServerRkeyData = { group_rkey: '', private_rkey: '', @@ -39,23 +38,9 @@ export class RkeyManager { // console.log(`now: ${now}, expired_time: ${this.rkeyData.expired_time}`); return now > this.rkeyData.expired_time; } - regOutputRkey(cb: any) { - this.rkeyGetCb = cb; - } + async refreshRkey(): Promise { //刷新rkey - try { - if (this.rkeyGetCb) { - let data = await this.rkeyGetCb(); - this.rkeyData = { - group_rkey: data.group_rkey.slice(6), - private_rkey: data.private_rkey.slice(6), - expired_time: data.time - }; - } - } catch (error) { - this.logger.logError.bind(this.logger)('Packet Server 获取rkey失败', error); - } for (const url of this.serverUrl) { try { let temp = await RequestUtil.HttpGetJson(url, 'GET');