From ca5abc635ce3b610c805b8aa5d544531c5b65c47 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, 11 Aug 2024 23:27:28 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E4=BA=8C=E7=BB=B4=E7=A0=81=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E4=B8=8E=E5=88=B7=E6=96=B01?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/shell/napcat.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/shell/napcat.ts b/src/shell/napcat.ts index e8b6186d..a5542c0f 100644 --- a/src/shell/napcat.ts +++ b/src/shell/napcat.ts @@ -109,6 +109,9 @@ export async function NCoreInitShell() { }); loginListener.onQRCodeGetPicture = ({ pngBase64QrcodeData, qrcodeUrl }) => { + //设置WebuiQrcode + WebUiDataRuntime.setQQLoginQrcodeURL(qrcodeUrl); + const realBase64 = pngBase64QrcodeData.replace(/^data:image\/\w+;base64,/, ''); const buffer = Buffer.from(realBase64, 'base64'); logger.logWarn('请扫描下面的二维码,然后在手Q上授权登录:'); @@ -125,6 +128,16 @@ export async function NCoreInitShell() { }); }); }; + loginListener.onQRCodeSessionFailed = (errType: number, errCode: number, errMsg: string) => { + logger.logError('登录失败(onQRCodeSessionFailed)', errMsg); + if (errType == 1 && errCode == 3) { + // 二维码过期刷新 + } + loginService.getQRCodePicture(); + }; + loginListener.onLoginFailed = (args) => { + logger.logError('登录失败(onLoginFailed)', args); + }; loginService.addKernelLoginListener(new wrapper.NodeIKernelLoginListener( proxiedListenerOf(loginListener, logger)));