Compare commits

..

47 Commits

Author SHA1 Message Date
手瓜一十雪
68af73970e release: 1.4.0 2024-05-25 19:22:52 +08:00
手瓜一十雪
b6ed8d4975 docs: change 2024-05-25 16:55:02 +08:00
手瓜一十雪
d07d3645ce fix: typo 2024-05-25 13:42:10 +08:00
手瓜一十雪
123759ab17 fix: typo 2024-05-25 13:39:49 +08:00
手瓜一十雪
f2f1f893d8 feat: ocr image 2024-05-25 13:38:19 +08:00
手瓜一十雪
db93a8eed2 feat: /get_online_clients 2024-05-25 13:09:47 +08:00
手瓜一十雪
12ab6d4a7d fix 2024-05-25 12:48:13 +08:00
手瓜一十雪
add759e889 feat: try support get_online_clients 2024-05-25 12:02:09 +08:00
手瓜一十雪
f315f7977d feat: support card miniapp 2024-05-25 11:35:08 +08:00
手瓜一十雪
f2f6701ebd feat: support qzone.qq.com Cookies 2024-05-25 11:07:05 +08:00
手瓜一十雪
1a92794d33 chore: sync core 2024-05-24 23:25:14 +08:00
手瓜一十雪
7640deb798 feat: support mini app sign 2024-05-24 23:24:10 +08:00
手瓜一十雪
f1e8ef1cf6 fix: 紧急修复DetailInfo 2024-05-24 18:31:01 +08:00
手瓜一十雪
5e5ac0162e build: 1.3.8 2024-05-24 18:11:32 +08:00
手瓜一十雪
0c013820f0 chore: sync core 2024-05-24 13:51:40 +08:00
手瓜一十雪
4b3a9e5847 release: 1.3.8 2024-05-24 13:47:25 +08:00
手瓜一十雪
e4982256a4 fix: typo 2024-05-24 11:39:46 +08:00
手瓜一十雪
babc4927a8 feat: 注释解码 2024-05-24 11:28:43 +08:00
手瓜一十雪
6dd84cf469 build: 1.4.0-beta8 2024-05-24 11:21:34 +08:00
手瓜一十雪
a8800e3899 feat: 1.4.0-beta8 2024-05-24 11:18:32 +08:00
手瓜一十雪
5f03496046 build: 1.4.0-beta7 2024-05-24 10:45:12 +08:00
手瓜一十雪
41500c17a2 try: fix 2024-05-24 10:42:21 +08:00
手瓜一十雪
2dcfde8b9a build: 1.4.0-beta6 2024-05-23 18:23:11 +08:00
手瓜一十雪
5c3305d8fa Revert "feat: try support LiteLoader"
This reverts commit 8101d17482.
2024-05-23 18:10:18 +08:00
手瓜一十雪
0d1fe99f53 Merge pull request #32 from xihan123/main
fix: set_group_add_request reason 字段错误
2024-05-23 16:48:43 +08:00
xihan123
4c03ffeec7 fix: set_group_add_request reason 字段错误 2024-05-23 16:45:41 +08:00
手瓜一十雪
8101d17482 feat: try support LiteLoader 2024-05-23 16:30:29 +08:00
手瓜一十雪
bc7b4dcc2a build: 1.4.0-beta5 2024-05-23 15:16:35 +08:00
手瓜一十雪
3db8b9078d docs: change 2024-05-23 11:14:42 +08:00
手瓜一十雪
943dbbefd3 build: 1.4.0-beta4-兼容9.7.x换行符 2024-05-23 11:10:31 +08:00
手瓜一十雪
480abcb853 fix: HandlersClear 2024-05-23 10:23:37 +08:00
手瓜一十雪
60aaaff58e fix: UserDetail 2024-05-23 10:19:45 +08:00
手瓜一十雪
e3b889bbe8 fix: test 2024-05-22 21:44:12 +08:00
手瓜一十雪
ac5506a43b style: lint 2024-05-22 20:58:49 +08:00
手瓜一十雪
b29f533a3b feat: 1.4.0 2024-05-22 20:36:38 +08:00
手瓜一十雪
a8ee86b09e build: test 2024-05-22 20:31:16 +08:00
手瓜一十雪
0238c53302 build: 1.4.0-beta2 2024-05-22 20:19:28 +08:00
手瓜一十雪
665e3c806f build: 1.4.0 - beta2 2024-05-22 20:16:24 +08:00
手瓜一十雪
8c96838441 refactor: cjs to es 2024-05-22 20:13:18 +08:00
手瓜一十雪
4a722daec6 chore: sync core 2024-05-22 19:59:36 +08:00
手瓜一十雪
4e0cdbcb91 feat: 破坏性更新 cjs to es 2024-05-22 19:58:45 +08:00
手瓜一十雪
08976624cd feat: debug 2024-05-22 17:30:40 +08:00
手瓜一十雪
fdeba94653 chore: sync core 2024-05-22 16:11:01 +08:00
手瓜一十雪
d3b100b7e5 refactor: member info 2024-05-22 12:52:49 +08:00
手瓜一十雪
1de3e18b08 fix: remove unuse 2024-05-21 19:32:17 +08:00
手瓜一十雪
d5c3c95682 chore: sync core 2024-05-21 19:28:26 +08:00
手瓜一十雪
dabe1e29ed feat: GroupMemberDetailInfo 2024-05-21 19:27:59 +08:00
125 changed files with 1773 additions and 1021 deletions

View File

@@ -1,9 +1,10 @@
module.exports = {
'env': {
'browser': true,
'es2021': true,
'node': true
},
'ignorePatterns': ['src/core/', 'src/core.lib/'],
'ignorePatterns': ['src/core/', 'src/core.lib/','src/proto/'],
'extends': [
'eslint:recommended',
'plugin:@typescript-eslint/recommended'

2
.gitignore vendored
View File

@@ -14,4 +14,4 @@ dist/
# Build
*.db
checkVersion.sh
checkVersion.sh

View File

@@ -0,0 +1,15 @@
# v1.3.8
QQ Version: Windows 9.9.9-23873 / Linux 3.2.7-23361
## 修复与优化
* 优化打包后体积问题
* 修复QQ等级获取
* 兼容 9.7.x 版本换行符 统一为 \n
* 修复处理加群请求 字段异常情况
* 修复退群通知问题
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,11 @@
# v1.3.9
QQ Version: Windows 9.9.10-23873 / Linux 3.2.7-23361
## 修复与优化
* 修复QQ等级获取与兼容性问题
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,12 @@
# v1.4.0
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
## 新增与调整
* 支持空间Cookies获取
* 支持获取在线设备 API /get_online_clients
* 支持图片OCR API /.ocr_image /ocr_image
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -2,7 +2,7 @@
"name": "napcat",
"private": true,
"type": "module",
"version": "1.3.6",
"version": "1.4.0",
"scripts": {
"watch:dev": "vite --mode development",
"watch:prod": "vite --mode production",
@@ -19,7 +19,6 @@
},
"devDependencies": {
"@log4js-node/log4js-api": "^1.0.2",
"@rollup/plugin-commonjs": "^25.0.7",
"@rollup/plugin-node-resolve": "^15.2.3",
"@rollup/plugin-typescript": "^11.1.6",
"@types/cors": "^2.8.17",
@@ -44,10 +43,10 @@
"vite": "^5.2.6",
"vite-plugin-cp": "^4.0.8",
"vite-plugin-dts": "^3.8.2",
"vite-tsconfig-paths": "^4.3.2"
"vite-tsconfig-paths": "^4.3.2",
"@protobuf-ts/plugin": "^2.9.4"
},
"dependencies": {
"@protobuf-ts/plugin": "^2.9.4",
"ajv": "^8.13.0",
"commander": "^12.0.0",
"cors": "^2.8.5",

View File

@@ -15,4 +15,4 @@ for %%a in ("!RetString!") do (
set "QQPath=!pathWithoutUninstall!QQ.exe"
set ELECTRON_RUN_AS_NODE=1
echo !QQPath!
"!QQPath!" ./napcat.cjs %*
"!QQPath!" ./napcat.mjs %*

View File

@@ -37,7 +37,7 @@ if (!(Test-Path $QQpath)) {
throw "provided QQ path is invalid: $QQpath"
}
$Bootfile = Join-Path $PSScriptRoot "napcat.cjs"
$Bootfile = Join-Path $PSScriptRoot "napcat.mjs"
$env:ELECTRON_RUN_AS_NODE = 1
$commandInfo = Get-Command $QQpath -ErrorAction Stop
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& chcp 65001;& '$($commandInfo.Path)' $Bootfile $params}"

View File

@@ -14,4 +14,4 @@ for %%a in ("!RetString!") do (
set "QQPath=!pathWithoutUninstall!QQ.exe"
set ELECTRON_RUN_AS_NODE=1
echo !QQPath!
"!QQPath!" ./napcat.cjs %*
"!QQPath!" ./napcat.mjs %*

View File

@@ -37,7 +37,7 @@ if (!(Test-Path $QQpath)) {
throw "provided QQ path is invalid: $QQpath"
}
$Bootfile = Join-Path $PSScriptRoot "napcat.cjs"
$Bootfile = Join-Path $PSScriptRoot "napcat.mjs"
$env:ELECTRON_RUN_AS_NODE = 1
$commandInfo = Get-Command $QQpath -ErrorAction Stop
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& '$($commandInfo.Path)' $Bootfile $params}"

View File

@@ -18,4 +18,4 @@ if ! [ -x /opt/QQ/qq ]; then
exit 1
fi
/opt/QQ/qq "${SCRIPT_DIR}/napcat.cjs" "$@"
/opt/QQ/qq "${SCRIPT_DIR}/napcat.mjs" "$@"

View File

@@ -1,6 +1,12 @@
import path from 'node:path';
import fs from 'node:fs';
import { log, logDebug, logError } from '@/common/utils/log';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
const configDir = path.resolve(__dirname, 'config');
fs.mkdirSync(configDir, { recursive: true });

View File

@@ -55,7 +55,7 @@ if (fs.existsSync(configVersionInfoPath)) {
export const qqVersionConfigInfo: QQVersionConfigInfo = _qqVersionConfigInfo;
export const qqPkgInfo: QQPkgInfo = require(pkgInfoPath);
export const qqPkgInfo: QQPkgInfo = JSON.parse(fs.readFileSync(pkgInfoPath).toString());
// platform_type: 3,
// app_type: 4,
// app_version: '9.9.9-23159',

View File

@@ -1,7 +1,12 @@
import * as os from 'os';
import path from 'node:path';
import fs from 'fs';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export function getModuleWithArchName(moduleName: string) {
const systemPlatform = os.platform();
const cpuArch = os.arch();
@@ -14,6 +19,6 @@ export function cpModule(moduleName: string) {
try {
fs.copyFileSync(path.join(currentDir, fileName), path.join(currentDir, `${moduleName}.node`));
} catch (e) {
console.error(e);
}
}

View File

@@ -2,6 +2,12 @@ import crypto from 'node:crypto';
import path from 'node:path';
import fs from 'fs/promises';
import { log, logDebug } from './log';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export function sleep(ms: number): Promise<void> {
return new Promise(resolve => setTimeout(resolve, ms));
}
@@ -147,12 +153,27 @@ export async function UpdateConfig() {
const configFiles = await fs.readdir(path.join(__dirname, 'config'));
for (const file of configFiles) {
if (file.match(/^onebot11_\d+.json$/)) {
let CurrentConfig = JSON.parse(await fs.readFile(path.join(__dirname, 'config', file), 'utf8'));
const CurrentConfig = JSON.parse(await fs.readFile(path.join(__dirname, 'config', file), 'utf8'));
if (isValidOldConfig(CurrentConfig)) {
log("正在迁移旧配置到新配置 File:", file);
let NewConfig = migrateConfig(CurrentConfig);
log('正在迁移旧配置到新配置 File:', file);
const NewConfig = migrateConfig(CurrentConfig);
await fs.writeFile(path.join(__dirname, 'config', file), JSON.stringify(NewConfig, null, 2));
}
}
}
}
export function isEqual(obj1: any, obj2: any) {
if (obj1 === obj2) return true;
if (obj1 == null || obj2 == null) return false;
if (typeof obj1 !== 'object' || typeof obj2 !== 'object') return obj1 === obj2;
const keys1 = Object.keys(obj1);
const keys2 = Object.keys(obj2);
if (keys1.length !== keys2.length) return false;
for (const key of keys1) {
if (!isEqual(obj1[key], obj2[key])) return false;
}
return true;
}

View File

@@ -2,6 +2,12 @@ import log4js, { Configuration } from 'log4js';
import { truncateString } from '@/common/utils/helper';
import path from 'node:path';
import { SelfInfo } from '@/core';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export enum LogLevel {
DEBUG = 'debug',

View File

@@ -1,37 +1,44 @@
import { resolve } from "node:path";
import { spawn } from "node:child_process";
import { resolve } from 'node:path';
import { spawn } from 'node:child_process';
import { pid, ppid, exit } from 'node:process';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export async function rebootWithQuickLogin(uin: string) {
let batScript = resolve(__dirname, './napcat.bat');
let batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
let bashScript = resolve(__dirname, './napcat.sh');
if (process.platform === 'win32') {
const subProcess = spawn(`start ${batUtf8Script} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
// 子父进程一起送走 有点效果
spawn('cmd /c taskkill /t /f /pid ' + pid.toString(), { detached: true, shell: true, stdio: 'ignore' });
spawn('cmd /c taskkill /t /f /pid ' + ppid.toString(), { detached: true, shell: true, stdio: 'ignore' });
} else if (process.platform === 'linux') {
const subProcess = spawn(`${bashScript} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
//还没兼容
subProcess.unref();
exit(0);
}
//exit(0);
const batScript = resolve(__dirname, './napcat.bat');
const batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
const bashScript = resolve(__dirname, './napcat.sh');
if (process.platform === 'win32') {
const subProcess = spawn(`start ${batUtf8Script} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
// 子父进程一起送走 有点效果
spawn('cmd /c taskkill /t /f /pid ' + pid.toString(), { detached: true, shell: true, stdio: 'ignore' });
spawn('cmd /c taskkill /t /f /pid ' + ppid.toString(), { detached: true, shell: true, stdio: 'ignore' });
} else if (process.platform === 'linux') {
const subProcess = spawn(`${bashScript} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
//还没兼容
subProcess.unref();
exit(0);
}
//exit(0);
}
export async function rebootWithNormolLogin() {
let batScript = resolve(__dirname, './napcat.bat');
let batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
let bashScript = resolve(__dirname, './napcat.sh');
if (process.platform === 'win32') {
const subProcess = spawn(`start ${batUtf8Script} `, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
// 子父进程一起送走 有点效果
spawn('cmd /c taskkill /t /f /pid ' + pid.toString(), { detached: true, shell: true, stdio: 'ignore' });
spawn('cmd /c taskkill /t /f /pid ' + ppid.toString(), { detached: true, shell: true, stdio: 'ignore' });
} else if (process.platform === 'linux') {
const subProcess = spawn(`${bashScript}`, { detached: true, windowsHide: false, env: process.env, shell: true });
subProcess.unref();
exit(0);
}
const batScript = resolve(__dirname, './napcat.bat');
const batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
const bashScript = resolve(__dirname, './napcat.sh');
if (process.platform === 'win32') {
const subProcess = spawn(`start ${batUtf8Script} `, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
// 子父进程一起送走 有点效果
spawn('cmd /c taskkill /t /f /pid ' + pid.toString(), { detached: true, shell: true, stdio: 'ignore' });
spawn('cmd /c taskkill /t /f /pid ' + ppid.toString(), { detached: true, shell: true, stdio: 'ignore' });
} else if (process.platform === 'linux') {
const subProcess = spawn(`${bashScript}`, { detached: true, windowsHide: false, env: process.env, shell: true });
subProcess.unref();
exit(0);
}
}

View File

@@ -3,35 +3,54 @@ import http from 'node:http';
export class RequestUtil {
// 适用于获取服务器下发cookies时获取仅GET
static async HttpsGetCookies(url: string): Promise<Map<string, string>> {
return new Promise<Map<string, string>>((resolve, reject) => {
const protocol = url.startsWith('https://') ? https : http;
protocol.get(url, (res) => {
const cookiesHeader = res.headers['set-cookie'];
if (!cookiesHeader) {
resolve(new Map<string, string>());
} else {
const cookiesMap = new Map<string, string>();
cookiesHeader.forEach((cookieStr) => {
cookieStr.split(';').forEach((cookiePart) => {
const trimmedPart = cookiePart.trim();
if (trimmedPart.includes('=')) {
const [key, value] = trimmedPart.split('=').map(part => part.trim());
cookiesMap.set(key, decodeURIComponent(value)); // 解码cookie值
}
});
static async HttpsGetCookies(url: string): Promise<{ [key: string]: string }> {
const client = url.startsWith('https') ? https : http;
return new Promise((resolve, reject) => {
client.get(url, (res) => {
let cookies: { [key: string]: string } = {};
const handleRedirect = (res: http.IncomingMessage) => {
//console.log(res.headers.location);
if (res.statusCode === 301 || res.statusCode === 302) {
if (res.headers.location) {
const redirectUrl = new URL(res.headers.location, url);
RequestUtil.HttpsGetCookies(redirectUrl.href).then((redirectCookies) => {
// 合并重定向过程中的cookies
cookies = { ...cookies, ...redirectCookies };
resolve(cookies);
});
} else {
resolve(cookies);
}
} else {
resolve(cookies);
}
};
res.on('data', () => { }); // Necessary to consume the stream
res.on('end', () => {
handleRedirect(res);
});
if (res.headers['set-cookie']) {
//console.log(res.headers['set-cookie']);
res.headers['set-cookie'].forEach((cookie) => {
const parts = cookie.split(';')[0].split('=');
const key = parts[0];
const value = parts[1];
if (key && value && key.length > 0 && value.length > 0) {
cookies[key] = value;
}
});
resolve(cookiesMap);
}
}).on('error', (error) => {
reject(error);
}).on('error', (err) => {
reject(err);
});
});
}
// 请求和回复都是JSON data传原始内容 自动编码json
static async HttpGetJson<T>(url: string, method: string = 'GET', data?: any, headers: Record<string, string> = {}, isJsonRet: boolean = true, isArgJson: boolean = true): Promise<T> {
let option = new URL(url);
const option = new URL(url);
const protocol = url.startsWith('https://') ? https : http;
const options = {
hostname: option.hostname,

View File

@@ -2,30 +2,30 @@
* 运行时类型转换与检查类
*/
export class TypeCheck {
static isEmpty(value: any): boolean {
return value === null || value === undefined || value === '' ||
static isEmpty(value: any): boolean {
return value === null || value === undefined || value === '' ||
(Array.isArray(value) && value.length === 0) || (typeof value === 'object' && Object.keys(value).length === 0);
}
}
}
export class TypeConvert {
static toNumber(value: any): number {
const num = Number(value);
if (isNaN(num)) {
throw new Error(`无法将输入转换为数字: ${value}`);
}
return num;
static toNumber(value: any): number {
const num = Number(value);
if (isNaN(num)) {
throw new Error(`无法将输入转换为数字: ${value}`);
}
return num;
}
static toString(value: any): string {
return String(value);
}
static toString(value: any): string {
return String(value);
}
static toBoolean(value: any): boolean {
return Boolean(value);
}
static toBoolean(value: any): boolean {
return Boolean(value);
}
static toArray(value: any): any[] {
return Array.isArray(value) ? value : [value];
}
static toArray(value: any): any[] {
return Array.isArray(value) ? value : [value];
}
}

View File

@@ -1 +1 @@
var _0x312801=_0x226a;(function(_0x2467bd,_0x1ea46c){var _0x55b3b9=_0x226a,_0xc5a225=_0x2467bd();while(!![]){try{var _0x37ca7d=-parseInt(_0x55b3b9(0xb8))/0x1*(-parseInt(_0x55b3b9(0xb7))/0x2)+parseInt(_0x55b3b9(0xbe))/0x3*(-parseInt(_0x55b3b9(0xb6))/0x4)+-parseInt(_0x55b3b9(0xba))/0x5*(parseInt(_0x55b3b9(0xbd))/0x6)+parseInt(_0x55b3b9(0xbf))/0x7+-parseInt(_0x55b3b9(0xbb))/0x8+-parseInt(_0x55b3b9(0xc0))/0x9+-parseInt(_0x55b3b9(0xbc))/0xa*(-parseInt(_0x55b3b9(0xb9))/0xb);if(_0x37ca7d===_0x1ea46c)break;else _0xc5a225['push'](_0xc5a225['shift']());}catch(_0x37c00a){_0xc5a225['push'](_0xc5a225['shift']());}}}(_0x3f33,0xa7262));function _0x226a(_0x147607,_0x4d8036){var _0x3f3311=_0x3f33();return _0x226a=function(_0x226afb,_0x3c304e){_0x226afb=_0x226afb-0xb5;var _0x4481fe=_0x3f3311[_0x226afb];return _0x4481fe;},_0x226a(_0x147607,_0x4d8036);}function _0x3f33(){var _0x49480f=['109615yGGBGb','417840uZphAj','6916336dArrkB','3280WaNFfO','84tMzoBS','2219037UDDDKL','8472464uELZIr','11638368bueewF','onMSFStatusChange','getGroupCode','4vhGRRP','546190CcHtON','1ZYSbWg'];_0x3f33=function(){return _0x49480f;};return _0x3f33();}export class DependsAdapter{[_0x312801(0xc1)](_0x1bb24c,_0x487012){}['onMSFSsoError'](_0x41a22e){}[_0x312801(0xb5)](_0x487b3b){}}
var _0x2f9bbf=_0x8fe9;(function(_0x240c15,_0x13a1b9){var _0x44d52a=_0x8fe9,_0x48175b=_0x240c15();while(!![]){try{var _0x43e10a=-parseInt(_0x44d52a(0xd2))/0x1+-parseInt(_0x44d52a(0xca))/0x2*(parseInt(_0x44d52a(0xce))/0x3)+parseInt(_0x44d52a(0xcc))/0x4*(parseInt(_0x44d52a(0xcf))/0x5)+parseInt(_0x44d52a(0xd0))/0x6+parseInt(_0x44d52a(0xd4))/0x7+-parseInt(_0x44d52a(0xcd))/0x8+parseInt(_0x44d52a(0xcb))/0x9;if(_0x43e10a===_0x13a1b9)break;else _0x48175b['push'](_0x48175b['shift']());}catch(_0x212c5e){_0x48175b['push'](_0x48175b['shift']());}}}(_0x573b,0x4e014));export class DependsAdapter{[_0x2f9bbf(0xd1)](_0x571d8c,_0x2da53b){}['onMSFSsoError'](_0xeb8504){}[_0x2f9bbf(0xd3)](_0xc5cb23){}}function _0x8fe9(_0x18a1a4,_0xb679b){var _0x573b03=_0x573b();return _0x8fe9=function(_0x8fe947,_0x355420){_0x8fe947=_0x8fe947-0xca;var _0x14c474=_0x573b03[_0x8fe947];return _0x14c474;},_0x8fe9(_0x18a1a4,_0xb679b);}function _0x573b(){var _0x2f3e16=['onMSFStatusChange','178221cLXANj','getGroupCode','2825634SxDvBt','18NYwNJJ','3815829fEQwgG','3524MpzAYl','2522312mBhRkw','137181gBuRKZ','1655noChHQ','631842JoCFyL'];_0x573b=function(){return _0x2f3e16;};return _0x573b();}

View File

@@ -1 +1 @@
function _0xd918(_0x41483d,_0x889907){var _0x58bf19=_0x58bf();return _0xd918=function(_0xd918d8,_0x1ca855){_0xd918d8=_0xd918d8-0x1a8;var _0x922fac=_0x58bf19[_0xd918d8];return _0x922fac;},_0xd918(_0x41483d,_0x889907);}var _0x2ff274=_0xd918;(function(_0x4e51bb,_0x3ea197){var _0x37f53a=_0xd918,_0x443375=_0x4e51bb();while(!![]){try{var _0x1e5344=-parseInt(_0x37f53a(0x1ad))/0x1+parseInt(_0x37f53a(0x1af))/0x2+parseInt(_0x37f53a(0x1ac))/0x3*(parseInt(_0x37f53a(0x1b0))/0x4)+-parseInt(_0x37f53a(0x1b4))/0x5*(parseInt(_0x37f53a(0x1ae))/0x6)+parseInt(_0x37f53a(0x1a9))/0x7*(-parseInt(_0x37f53a(0x1ab))/0x8)+-parseInt(_0x37f53a(0x1aa))/0x9+parseInt(_0x37f53a(0x1b2))/0xa;if(_0x1e5344===_0x3ea197)break;else _0x443375['push'](_0x443375['shift']());}catch(_0x35dc93){_0x443375['push'](_0x443375['shift']());}}}(_0x58bf,0x469fd));export class DispatcherAdapter{[_0x2ff274(0x1b3)](_0x1d95f2){}[_0x2ff274(0x1a8)](_0x3ea26c){}[_0x2ff274(0x1b1)](_0x10acdf){}}function _0x58bf(){var _0x4f3322=['dispatchRequest','2046670cXvFGX','dispatchCall','21STBWCf','2445264sDyRrR','2408lpMgBD','294726nxCwLq','374542jqZJvb','6PeQMDn','1135130cwIbEO','8xmGioW','dispatchCallWithJson','5817030ZXbzaz'];_0x58bf=function(){return _0x4f3322;};return _0x58bf();}
function _0x3ac0(_0xcb3d4b,_0x45f6cb){var _0x2b332b=_0x2b33();return _0x3ac0=function(_0x3ac014,_0x31f067){_0x3ac014=_0x3ac014-0x99;var _0x2afe55=_0x2b332b[_0x3ac014];return _0x2afe55;},_0x3ac0(_0xcb3d4b,_0x45f6cb);}var _0x280cdc=_0x3ac0;(function(_0x588061,_0x26dac4){var _0x15d572=_0x3ac0,_0x4587ee=_0x588061();while(!![]){try{var _0x254bd5=parseInt(_0x15d572(0x9c))/0x1*(parseInt(_0x15d572(0x9e))/0x2)+-parseInt(_0x15d572(0x9a))/0x3+parseInt(_0x15d572(0x9f))/0x4+-parseInt(_0x15d572(0xa2))/0x5*(-parseInt(_0x15d572(0x99))/0x6)+parseInt(_0x15d572(0xa3))/0x7+-parseInt(_0x15d572(0xa1))/0x8+-parseInt(_0x15d572(0xa0))/0x9;if(_0x254bd5===_0x26dac4)break;else _0x4587ee['push'](_0x4587ee['shift']());}catch(_0x56648a){_0x4587ee['push'](_0x4587ee['shift']());}}}(_0x2b33,0xf1277));function _0x2b33(){var _0xc7fab1=['1825kjRMcS','5841192YmjWIa','16560eAuaMG','3835482QHUUkd','dispatchCall','1946334JCCcaL','dispatchCallWithJson','2zkkgjJ','150988uHQIIQ','4671639vENctH','8324840uivMEo'];_0x2b33=function(){return _0xc7fab1;};return _0x2b33();}export class DispatcherAdapter{['dispatchRequest'](_0x248d19){}[_0x280cdc(0x9b)](_0x3add8e){}[_0x280cdc(0x9d)](_0x5c5ae9){}}

View File

@@ -1 +1 @@
function _0x542e(_0x24d725,_0x626b2e){var _0x560aad=_0x560a();return _0x542e=function(_0x542ed4,_0x34edc1){_0x542ed4=_0x542ed4-0x76;var _0x635f00=_0x560aad[_0x542ed4];return _0x635f00;},_0x542e(_0x24d725,_0x626b2e);}var _0x12c22c=_0x542e;(function(_0x5f520f,_0x2af615){var _0x261cf6=_0x542e,_0x19e611=_0x5f520f();while(!![]){try{var _0x4f968b=parseInt(_0x261cf6(0x7c))/0x1+-parseInt(_0x261cf6(0x78))/0x2+parseInt(_0x261cf6(0x82))/0x3+parseInt(_0x261cf6(0x7e))/0x4+-parseInt(_0x261cf6(0x7b))/0x5*(-parseInt(_0x261cf6(0x7d))/0x6)+parseInt(_0x261cf6(0x7a))/0x7+parseInt(_0x261cf6(0x84))/0x8*(-parseInt(_0x261cf6(0x80))/0x9);if(_0x4f968b===_0x2af615)break;else _0x19e611['push'](_0x19e611['shift']());}catch(_0x364fba){_0x19e611['push'](_0x19e611['shift']());}}}(_0x560a,0x219d4));export class GlobalAdapter{[_0x12c22c(0x76)](..._0x2596f6){}[_0x12c22c(0x85)](..._0x5aa245){}['onShowErrUITips'](..._0x30bb0b){}[_0x12c22c(0x81)](..._0x526a26){}[_0x12c22c(0x7f)](..._0xda6e56){}[_0x12c22c(0x83)](..._0x24f600){}[_0x12c22c(0x79)](..._0x4642b6){}[_0x12c22c(0x77)](..._0x4dc1b2){}}function _0x560a(){var _0x8b3fc=['15ChtyeH','20320Tkwggx','310938UySqVX','724892uXQoPU','getAppSetting','7299JGoYfC','fixPicImgType','78327jdPzcS','onInstallFinished','3488ttTWCp','onGetSrvCalTime','onLog','onGetOfflineMsg','82140zEVtjW','onUpdateGeneralFlag','1044603ksIwqi'];_0x560a=function(){return _0x8b3fc;};return _0x560a();}
function _0x1df5(_0x27abc9,_0x3c7ef2){var _0xc3f8d0=_0xc3f8();return _0x1df5=function(_0x1df5c8,_0x58406f){_0x1df5c8=_0x1df5c8-0xc1;var _0x38a336=_0xc3f8d0[_0x1df5c8];return _0x38a336;},_0x1df5(_0x27abc9,_0x3c7ef2);}var _0xf13a48=_0x1df5;function _0xc3f8(){var _0x515c7b=['onUpdateGeneralFlag','onInstallFinished','35oJkVEv','18689GsIXsr','6288639DoJhBd','16DRWxYZ','onGetOfflineMsg','46532ntLefW','214PFXCeb','onShowErrUITips','155508VNpANx','getAppSetting','onLog','fixPicImgType','5277gYNKnY','12124404nWZHLJ','5790JCJBEK','956112FsBkcc'];_0xc3f8=function(){return _0x515c7b;};return _0xc3f8();}(function(_0x19fe3e,_0x12ef0c){var _0x48c992=_0x1df5,_0x2282fb=_0x19fe3e();while(!![]){try{var _0x5c171b=-parseInt(_0x48c992(0xc8))/0x1+parseInt(_0x48c992(0xd1))/0x2*(-parseInt(_0x48c992(0xc5))/0x3)+-parseInt(_0x48c992(0xd0))/0x4*(parseInt(_0x48c992(0xcb))/0x5)+parseInt(_0x48c992(0xc1))/0x6+parseInt(_0x48c992(0xcd))/0x7*(parseInt(_0x48c992(0xce))/0x8)+parseInt(_0x48c992(0xc6))/0x9+parseInt(_0x48c992(0xc7))/0xa*(-parseInt(_0x48c992(0xcc))/0xb);if(_0x5c171b===_0x12ef0c)break;else _0x2282fb['push'](_0x2282fb['shift']());}catch(_0x14c6f7){_0x2282fb['push'](_0x2282fb['shift']());}}}(_0xc3f8,0xea75f));export class GlobalAdapter{[_0xf13a48(0xc3)](..._0x4af3af){}['onGetSrvCalTime'](..._0x3c2bc9){}[_0xf13a48(0xd2)](..._0x38db4e){}[_0xf13a48(0xc4)](..._0x5d1a18){}[_0xf13a48(0xc2)](..._0x43369d){}[_0xf13a48(0xca)](..._0x3eb3c8){}[_0xf13a48(0xc9)](..._0x190a92){}[_0xf13a48(0xcf)](..._0x314054){}}

View File

@@ -1 +1 @@
function _0x3c69(_0x3bcbf7,_0x5062f6){var _0x18dfde=_0x18df();return _0x3c69=function(_0x3c698a,_0x2be4a1){_0x3c698a=_0x3c698a-0x18d;var _0x4fa004=_0x18dfde[_0x3c698a];return _0x4fa004;},_0x3c69(_0x3bcbf7,_0x5062f6);}(function(_0x10db25,_0x5cfed7){var _0x503822=_0x3c69,_0x22f0ac=_0x10db25();while(!![]){try{var _0x4c1fac=parseInt(_0x503822(0x192))/0x1+-parseInt(_0x503822(0x191))/0x2*(-parseInt(_0x503822(0x18d))/0x3)+-parseInt(_0x503822(0x18e))/0x4+-parseInt(_0x503822(0x18f))/0x5+parseInt(_0x503822(0x195))/0x6*(parseInt(_0x503822(0x190))/0x7)+-parseInt(_0x503822(0x193))/0x8*(-parseInt(_0x503822(0x196))/0x9)+-parseInt(_0x503822(0x194))/0xa;if(_0x4c1fac===_0x5cfed7)break;else _0x22f0ac['push'](_0x22f0ac['shift']());}catch(_0x1ef1d6){_0x22f0ac['push'](_0x22f0ac['shift']());}}}(_0x18df,0x6ee29));function _0x18df(){var _0x306bf8=['85099McqKSS','446612gfPezC','628119vRfteW','16UHyByL','9280230MKmgnk','312AXqpyn','1833957mTigZj','6zFIsSs','244244XMOWDt','3355860pyDEWQ'];_0x18df=function(){return _0x306bf8;};return _0x18df();}export*from'./NodeIDependsAdapter';export*from'./NodeIDispatcherAdapter';export*from'./NodeIGlobalAdapter';
(function(_0x1e35d8,_0x2d4ab1){var _0x52ccd1=_0x5571,_0x5ac369=_0x1e35d8();while(!![]){try{var _0x265d1f=-parseInt(_0x52ccd1(0x177))/0x1*(-parseInt(_0x52ccd1(0x16f))/0x2)+parseInt(_0x52ccd1(0x171))/0x3*(-parseInt(_0x52ccd1(0x178))/0x4)+parseInt(_0x52ccd1(0x179))/0x5*(parseInt(_0x52ccd1(0x17a))/0x6)+-parseInt(_0x52ccd1(0x173))/0x7*(-parseInt(_0x52ccd1(0x172))/0x8)+-parseInt(_0x52ccd1(0x170))/0x9+parseInt(_0x52ccd1(0x175))/0xa*(-parseInt(_0x52ccd1(0x176))/0xb)+parseInt(_0x52ccd1(0x174))/0xc;if(_0x265d1f===_0x2d4ab1)break;else _0x5ac369['push'](_0x5ac369['shift']());}catch(_0x344123){_0x5ac369['push'](_0x5ac369['shift']());}}}(_0x31a0,0x51157));export*from'./NodeIDependsAdapter';export*from'./NodeIDispatcherAdapter';function _0x5571(_0x2be41d,_0x9c2cf9){var _0x31a000=_0x31a0();return _0x5571=function(_0x5571ba,_0x70885c){_0x5571ba=_0x5571ba-0x16f;var _0x577c36=_0x31a000[_0x5571ba];return _0x577c36;},_0x5571(_0x2be41d,_0x9c2cf9);}function _0x31a0(){var _0x461736=['5345516eltSrV','25698oFpTAR','998288reazkd','20gnlqAE','69558qrUQAA','30aOeudC','3161007DhEdsG','6YQeRYL','1761088XheHBV','21jaMejO','6914304rjdkKR','10MSgoCn'];_0x31a0=function(){return _0x461736;};return _0x31a0();}export*from'./NodeIGlobalAdapter';

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
const _0x200bce=_0x521e;function _0xbabf(){const _0x211bb5=['addListener','2865738XvhlRl','set','66454YjOygA','uid','获取好友列表完成','reqTime','829616gfjVgA','push','3355675vCCGpI','getBuddyService','QypPz','handleFriendRequest','117iGJzXo','onBuddyListChange','delete','buddyList','获取好友列表超时','gJDqR','getFriends','friendUid','uin','onLoginSuccess','70828vHbuOz','getBuddyList','EHncv','approvalFriendRequest','session','iWgub','qlebO','开始获取好友列表','19828488yGaGlA','3392438TVQZNU'];_0xbabf=function(){return _0x211bb5;};return _0xbabf();}(function(_0x2df1dc,_0x19f282){const _0x6bf846=_0x521e,_0x80a8c=_0x2df1dc();while(!![]){try{const _0x44b977=-parseInt(_0x6bf846(0x16a))/0x1+parseInt(_0x6bf846(0x14d))/0x2+parseInt(_0x6bf846(0x153))/0x3*(-parseInt(_0x6bf846(0x15d))/0x4)+-parseInt(_0x6bf846(0x14f))/0x5+-parseInt(_0x6bf846(0x168))/0x6+-parseInt(_0x6bf846(0x166))/0x7+parseInt(_0x6bf846(0x165))/0x8;if(_0x44b977===_0x19f282)break;else _0x80a8c['push'](_0x80a8c['shift']());}catch(_0x59682b){_0x80a8c['push'](_0x80a8c['shift']());}}}(_0xbabf,0x7aca6));import{BuddyListener,napCatCore}from'@/core';import{logDebug}from'@/common/utils/log';import{uid2UinMap}from'@/core/data';import{randomUUID}from'crypto';const buddyChangeTasks=new Map(),buddyListener=new BuddyListener();function _0x521e(_0x32b35a,_0x4316c1){const _0xbabf17=_0xbabf();return _0x521e=function(_0x521e87,_0x464bc2){_0x521e87=_0x521e87-0x14a;let _0x4e917c=_0xbabf17[_0x521e87];return _0x4e917c;},_0x521e(_0x32b35a,_0x4316c1);}buddyListener[_0x200bce(0x154)]=_0xf2c49a=>{const _0x4a6b60=_0x200bce;for(const [_0x58ff70,_0x533778]of buddyChangeTasks){_0x533778(_0xf2c49a),buddyChangeTasks[_0x4a6b60(0x155)](_0x58ff70);}},setTimeout(()=>{const _0x331f78=_0x200bce;napCatCore[_0x331f78(0x15c)](()=>{const _0x148e1d=_0x331f78;napCatCore[_0x148e1d(0x167)](buddyListener);});},0x64);export class NTQQFriendApi{static async[_0x200bce(0x159)](_0x29cefa=![]){const _0x2c974d=_0x200bce,_0x1fd5d8={'qlebO':_0x2c974d(0x157),'gJDqR':function(_0x43b2bf,_0x49881f,_0x2b7903){return _0x43b2bf(_0x49881f,_0x2b7903);},'yvXxm':function(_0x10044e,_0x44494e){return _0x10044e(_0x44494e);},'EHncv':function(_0x577260,_0x33e923,_0x293431){return _0x577260(_0x33e923,_0x293431);},'iWgub':function(_0x43c87a){return _0x43c87a();}};return new Promise((_0x17a917,_0x2dd79f)=>{const _0x533a8b=_0x2c974d,_0x301724={'QypPz':function(_0x3f9258,_0x1fa332,_0x32a466){const _0x3a40f2=_0x521e;return _0x1fd5d8[_0x3a40f2(0x15f)](_0x3f9258,_0x1fa332,_0x32a466);}};let _0x3f2664=![];_0x1fd5d8[_0x533a8b(0x158)](setTimeout,()=>{const _0x51eb22=_0x533a8b;!_0x3f2664&&(logDebug(_0x1fd5d8['qlebO']),_0x2dd79f(_0x1fd5d8[_0x51eb22(0x163)]));},0x1388);const _0x21371c=[],_0x4d537d=_0x2686ce=>{const _0x258077=_0x533a8b;for(const _0x1a06c1 of _0x2686ce){for(const _0x2da3ba of _0x1a06c1[_0x258077(0x156)]){_0x21371c[_0x258077(0x14e)](_0x2da3ba),uid2UinMap[_0x2da3ba[_0x258077(0x14a)]]=_0x2da3ba[_0x258077(0x15b)];}}_0x3f2664=!![],_0x1fd5d8[_0x258077(0x158)](logDebug,_0x258077(0x14b),_0x21371c),_0x1fd5d8['yvXxm'](_0x17a917,_0x21371c);};buddyChangeTasks[_0x533a8b(0x169)](_0x1fd5d8[_0x533a8b(0x162)](randomUUID),_0x4d537d),napCatCore[_0x533a8b(0x161)]['getBuddyService']()[_0x533a8b(0x15e)](_0x29cefa)['then'](_0x1e52f8=>{const _0x1724cc=_0x533a8b;_0x301724[_0x1724cc(0x151)](logDebug,_0x1724cc(0x164),_0x1e52f8);});});}static async[_0x200bce(0x152)](_0x5c339a,_0x2b7159){const _0x223df1=_0x200bce;napCatCore[_0x223df1(0x161)][_0x223df1(0x150)]()?.[_0x223df1(0x160)]({'friendUid':_0x5c339a[_0x223df1(0x15a)],'reqTime':_0x5c339a[_0x223df1(0x14c)],'accept':_0x2b7159});}}
const _0x2ed956=_0x421d;function _0x2e4e(){const _0x123d55=['获取好友列表完成','session','获取好友列表超时','KsVTJ','uid','mxcLN','onBuddyListChange','5449785eMbbTo','friendUid','199630ZNKrZP','sWUMo','KNlxN','77886OYKNGA','945MLgudi','hndDF','9242160cqEUGz','delete','开始获取好友列表','nQOiZ','addListener','buddyList','handleFriendRequest','reqTime','qlSML','push','iNegf','onLoginSuccess','getBuddyList','getBuddyService','RzsbV','1584wuMIgG','175MDKQvQ','80700fQLKSR','set','1626505osZtZM','getFriends','1829492wWzSkt'];_0x2e4e=function(){return _0x123d55;};return _0x2e4e();}(function(_0x3cdc52,_0x36e151){const _0x2fa9d0=_0x421d,_0x191342=_0x3cdc52();while(!![]){try{const _0x590ead=parseInt(_0x2fa9d0(0x159))/0x1+parseInt(_0x2fa9d0(0x15b))/0x2+parseInt(_0x2fa9d0(0x13e))/0x3+-parseInt(_0x2fa9d0(0x157))/0x4*(-parseInt(_0x2fa9d0(0x156))/0x5)+parseInt(_0x2fa9d0(0x143))/0x6*(-parseInt(_0x2fa9d0(0x144))/0x7)+parseInt(_0x2fa9d0(0x146))/0x8+-parseInt(_0x2fa9d0(0x155))/0x9*(parseInt(_0x2fa9d0(0x140))/0xa);if(_0x590ead===_0x36e151)break;else _0x191342['push'](_0x191342['shift']());}catch(_0x5df9b3){_0x191342['push'](_0x191342['shift']());}}}(_0x2e4e,0xe8be6));import{BuddyListener,napCatCore}from'@/core';function _0x421d(_0x42f14a,_0x4b9075){const _0x2e4e6f=_0x2e4e();return _0x421d=function(_0x421d8d,_0x2b8c6e){_0x421d8d=_0x421d8d-0x137;let _0x424382=_0x2e4e6f[_0x421d8d];return _0x424382;},_0x421d(_0x42f14a,_0x4b9075);}import{logDebug}from'@/common/utils/log';import{uid2UinMap}from'@/core/data';import{randomUUID}from'crypto';const buddyChangeTasks=new Map(),buddyListener=new BuddyListener();buddyListener[_0x2ed956(0x13d)]=_0xb1448a=>{const _0x14c0c1=_0x2ed956,_0x5b9209={'iNegf':function(_0x5bf7e2,_0x443837){return _0x5bf7e2(_0x443837);}};for(const [_0x482ad4,_0x415ef8]of buddyChangeTasks){_0x5b9209[_0x14c0c1(0x150)](_0x415ef8,_0xb1448a),buddyChangeTasks[_0x14c0c1(0x147)](_0x482ad4);}},setTimeout(()=>{const _0xd10f6d=_0x2ed956;napCatCore[_0xd10f6d(0x151)](()=>{const _0x2e9ec9=_0xd10f6d;napCatCore[_0x2e9ec9(0x14a)](buddyListener);});},0x64);export class NTQQFriendApi{static async[_0x2ed956(0x15a)](_0xf51c05=![]){const _0xbb2276=_0x2ed956,_0x35b699={'KNlxN':function(_0x193b35,_0x3b2c8b){return _0x193b35(_0x3b2c8b);},'RzsbV':_0xbb2276(0x137),'KsVTJ':function(_0x436b57,_0x252bc3){return _0x436b57(_0x252bc3);},'qlSML':_0xbb2276(0x148),'NxWCG':function(_0x53ad1b,_0x28cc05,_0x593b3d){return _0x53ad1b(_0x28cc05,_0x593b3d);},'hndDF':function(_0x2a74ce){return _0x2a74ce();}};return new Promise((_0x576cc4,_0x1f9a43)=>{const _0x3548fd=_0xbb2276,_0x525b6c={'nQOiZ':function(_0x2d5abe,_0x627498){const _0x523923=_0x421d;return _0x35b699[_0x523923(0x142)](_0x2d5abe,_0x627498);},'gVQlA':_0x3548fd(0x139),'PwBlA':function(_0x4d7c6a,_0x394884,_0x313fb1){return _0x4d7c6a(_0x394884,_0x313fb1);},'sWUMo':_0x35b699[_0x3548fd(0x154)],'mxcLN':function(_0x3a1111,_0x58f325){const _0x3d7c07=_0x3548fd;return _0x35b699[_0x3d7c07(0x13a)](_0x3a1111,_0x58f325);},'zdFHf':_0x35b699[_0x3548fd(0x14e)]};let _0x322f36=![];_0x35b699['NxWCG'](setTimeout,()=>{const _0x9f18af=_0x3548fd;!_0x322f36&&(_0x525b6c[_0x9f18af(0x149)](logDebug,_0x525b6c['gVQlA']),_0x525b6c[_0x9f18af(0x149)](_0x1f9a43,_0x525b6c['gVQlA']));},0x1388);const _0x14ed9e=[],_0x5d100a=_0x5edab4=>{const _0x188442=_0x3548fd;for(const _0xd2e480 of _0x5edab4){for(const _0x18d2f1 of _0xd2e480[_0x188442(0x14b)]){_0x14ed9e[_0x188442(0x14f)](_0x18d2f1),uid2UinMap[_0x18d2f1[_0x188442(0x13b)]]=_0x18d2f1['uin'];}}_0x322f36=!![],_0x525b6c['PwBlA'](logDebug,_0x525b6c[_0x188442(0x141)],_0x14ed9e),_0x525b6c[_0x188442(0x13c)](_0x576cc4,_0x14ed9e);};buddyChangeTasks[_0x3548fd(0x158)](_0x35b699[_0x3548fd(0x145)](randomUUID),_0x5d100a),napCatCore[_0x3548fd(0x138)][_0x3548fd(0x153)]()[_0x3548fd(0x152)](_0xf51c05)['then'](_0x4ad51f=>{_0x525b6c['PwBlA'](logDebug,_0x525b6c['zdFHf'],_0x4ad51f);});});}static async[_0x2ed956(0x14c)](_0x14396f,_0x336373){const _0x17477a=_0x2ed956;napCatCore[_0x17477a(0x138)][_0x17477a(0x153)]()?.['approvalFriendRequest']({'friendUid':_0x14396f[_0x17477a(0x13f)],'reqTime':_0x14396f[_0x17477a(0x14d)],'accept':_0x336373});}}

View File

@@ -1,7 +1,7 @@
import { GroupMember, GroupRequestOperateTypes, GroupMemberRole, GroupNotify, Group } from '../entities';
export declare class NTQQGroupApi {
static getGroups(forced?: boolean): Promise<Group[]>;
static getSingleScreenNotifies(num: number): Promise<unknown>;
static getSingleScreenNotifies(num: number): Promise<GroupNotify[]>;
static getGroupMembers(groupQQ: string, num?: number): Promise<Map<string, GroupMember>>;
static getGroupNotifies(): Promise<void>;
static getGroupIgnoreNotifies(): Promise<void>;

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
(function(_0x42ec9e,_0x3c5d53){var _0x26790a=_0x4120,_0x1cf0b9=_0x42ec9e();while(!![]){try{var _0x12ccdb=parseInt(_0x26790a(0xa1))/0x1*(-parseInt(_0x26790a(0xa8))/0x2)+parseInt(_0x26790a(0xa3))/0x3+-parseInt(_0x26790a(0xa4))/0x4+parseInt(_0x26790a(0x9e))/0x5*(-parseInt(_0x26790a(0xa5))/0x6)+parseInt(_0x26790a(0xa2))/0x7+parseInt(_0x26790a(0xa0))/0x8*(-parseInt(_0x26790a(0xa7))/0x9)+-parseInt(_0x26790a(0xa6))/0xa*(-parseInt(_0x26790a(0x9f))/0xb);if(_0x12ccdb===_0x3c5d53)break;else _0x1cf0b9['push'](_0x1cf0b9['shift']());}catch(_0xbba197){_0x1cf0b9['push'](_0x1cf0b9['shift']());}}}(_0x5bf8,0x5d7c7));export*from'./file';function _0x4120(_0x5e1952,_0x137c1b){var _0x5bf8fe=_0x5bf8();return _0x4120=function(_0x41206d,_0x213e6a){_0x41206d=_0x41206d-0x9e;var _0x9c8c9=_0x5bf8fe[_0x41206d];return _0x9c8c9;},_0x4120(_0x5e1952,_0x137c1b);}export*from'./friend';export*from'./group';function _0x5bf8(){var _0x25fec3=['1084932TAbQsr','5687800qhIJgq','1773ZjlHgT','272378dWjIPd','10DlCeMH','33tXMZNU','25336ZEgeJd','1DQMToq','976647qkfmox','941649ujvmGm','2620372YxyMrf'];_0x5bf8=function(){return _0x25fec3;};return _0x5bf8();}export*from'./msg';export*from'./user';export*from'./webapi';export*from'./sign';export*from'./system';
function _0x216e(){var _0x1df19b=['846KaWYSf','161EFFznE','9056itswTm','5104945nWaDPE','5783vjiUDd','2920HuFlCr','4YeaEtq','6822360YWXhGL','35388wnfIrc','8482792enDWAw','298842mRBYFK','11poianb'];_0x216e=function(){return _0x1df19b;};return _0x216e();}(function(_0x313a28,_0x554195){var _0x5a79ad=_0x1354,_0x5ef870=_0x313a28();while(!![]){try{var _0x3ff0fe=parseInt(_0x5a79ad(0x1cf))/0x1+parseInt(_0x5a79ad(0x1cd))/0x2*(parseInt(_0x5a79ad(0x1d7))/0x3)+parseInt(_0x5a79ad(0x1d1))/0x4*(-parseInt(_0x5a79ad(0x1ce))/0x5)+parseInt(_0x5a79ad(0x1d5))/0x6*(parseInt(_0x5a79ad(0x1d8))/0x7)+parseInt(_0x5a79ad(0x1d4))/0x8+parseInt(_0x5a79ad(0x1d3))/0x9*(-parseInt(_0x5a79ad(0x1d0))/0xa)+-parseInt(_0x5a79ad(0x1d6))/0xb*(parseInt(_0x5a79ad(0x1d2))/0xc);if(_0x3ff0fe===_0x554195)break;else _0x5ef870['push'](_0x5ef870['shift']());}catch(_0x1e3883){_0x5ef870['push'](_0x5ef870['shift']());}}}(_0x216e,0xb754e));export*from'./file';export*from'./friend';export*from'./group';export*from'./msg';export*from'./user';export*from'./webapi';function _0x1354(_0x2467ef,_0x38fcad){var _0x216e9c=_0x216e();return _0x1354=function(_0x135413,_0x3a6bfc){_0x135413=_0x135413-0x1cd;var _0x3c1307=_0x216e9c[_0x135413];return _0x3c1307;},_0x1354(_0x2467ef,_0x38fcad);}export*from'./sign';export*from'./system';

File diff suppressed because one or more lines are too long

View File

@@ -10,3 +10,14 @@ export interface CustomMusicSignPostData {
image?: string;
singer?: string;
}
export interface MiniAppLuaJsonType {
prompt: string;
title: string;
preview: string;
jumpUrl: string;
tag: string;
tagIcon: string;
source: string;
sourcelogo: string;
}
export declare function SignMiniApp(CardData: MiniAppLuaJsonType): Promise<string>;

View File

@@ -1 +1 @@
export{};
(function(_0x54aaa3,_0x20c2f2){const _0x3d1e67=_0x2ce1,_0x4f54b2=_0x54aaa3();while(!![]){try{const _0x546a3d=-parseInt(_0x3d1e67(0x15c))/0x1*(parseInt(_0x3d1e67(0x150))/0x2)+parseInt(_0x3d1e67(0x173))/0x3+parseInt(_0x3d1e67(0x14b))/0x4+-parseInt(_0x3d1e67(0x14a))/0x5+-parseInt(_0x3d1e67(0x153))/0x6*(parseInt(_0x3d1e67(0x14d))/0x7)+parseInt(_0x3d1e67(0x151))/0x8*(parseInt(_0x3d1e67(0x15b))/0x9)+parseInt(_0x3d1e67(0x156))/0xa;if(_0x546a3d===_0x20c2f2)break;else _0x4f54b2['push'](_0x4f54b2['shift']());}catch(_0x143fab){_0x4f54b2['push'](_0x4f54b2['shift']());}}}(_0x1cfb,0xa26f1));import{logDebug}from'@/common/utils/log';import{NTQQUserApi}from'./user';function _0x2ce1(_0x6e8d14,_0xda8b7b){const _0x1cfba1=_0x1cfb();return _0x2ce1=function(_0x2ce127,_0x23eba5){_0x2ce127=_0x2ce127-0x149;let _0x4d5b4a=_0x1cfba1[_0x2ce127];return _0x4d5b4a;},_0x2ce1(_0x6e8d14,_0xda8b7b);}import{selfInfo}from'../data';import{RequestUtil}from'@/common/utils/request';import{WebApi}from'./webapi';function _0x1cfb(){const _0x3206b0=['IOgTY','prompt','\x5c/\x5c/','znGko','p_skey','p_skey=','tianxuan.imgJumpArk','MiniApp\x20JSON\x20消息生成失败','yxEiY','eGnIc','&ark=','tfiGu','normal','zuKAZ','kIBHq','VnOfs','3144234RNaVhn','getQzoneCookies','skey','btuKB','GET','replace','LSvPm','signed_ark',';\x20skey=','preview','4719725WgmIqM','2960576VJYPse','miniapp','497iGWsVs','tagIcon','WvIMZ','4TicZIn','8dlJiuO','sourcelogo','34098ZHDWbW','jumpUrl','rODSC','5660050dCzLuX','QeMqd','title','MiniApp\x20JSON\x20消息生成成功',';\x20uin=o','7455132QmITfB','584904ywgFjF','SMOiZ','getSkey','uin','stringify','MsupA','gqNgq'];_0x1cfb=function(){return _0x3206b0;};return _0x1cfb();}export async function SignMiniApp(_0x358138){const _0xa8d864=_0x2ce1,_0x220bfb={'hqquW':'com.tencent.miniapp.lua','QeMqd':_0xa8d864(0x169),'tfiGu':_0xa8d864(0x14c),'eGnIc':_0xa8d864(0x16f),'SMOiZ':_0xa8d864(0x165),'VnOfs':function(_0x127d08,_0x37cb21){return _0x127d08+_0x37cb21;},'yxEiY':function(_0x1c63a3,_0x7e4244){return _0x1c63a3+_0x7e4244;},'znGko':function(_0x2e2b11,_0x141d4d){return _0x2e2b11+_0x141d4d;},'zuKAZ':function(_0x5d80d7,_0x3cac71){return _0x5d80d7+_0x3cac71;},'rODSC':_0xa8d864(0x168),'MsupA':_0xa8d864(0x17b),'btuKB':';\x20p_uin=o','gqNgq':_0xa8d864(0x15a),'WvIMZ':function(_0x2246ca,_0x29b85c){return _0x2246ca+_0x29b85c;},'kIBHq':'https://h5.qzone.qq.com/v2/vip/tx/trpc/ark-share/GenNewSignedArk?g_tk=','IOgTY':_0xa8d864(0x16d),'LSvPm':function(_0x1429e6,_0x3f8bbc){return _0x1429e6(_0x3f8bbc);},'hKIgf':_0xa8d864(0x177),'rMtAp':function(_0x2898f3,_0x228af0,_0x5ee557){return _0x2898f3(_0x228af0,_0x5ee557);}};let _0x4d8a16={'app':_0x220bfb['hqquW'],'bizsrc':_0x220bfb[_0xa8d864(0x157)],'view':_0x220bfb[_0xa8d864(0x16e)],'prompt':_0x358138[_0xa8d864(0x164)],'config':{'type':_0x220bfb[_0xa8d864(0x16c)],'forward':0x1,'autosize':0x0},'meta':{'miniapp':{'title':_0x358138[_0xa8d864(0x158)],'preview':_0x358138[_0xa8d864(0x149)][_0xa8d864(0x178)](/\\/g,_0x220bfb[_0xa8d864(0x15d)]),'jumpUrl':_0x358138[_0xa8d864(0x154)][_0xa8d864(0x178)](/\\/g,_0x220bfb[_0xa8d864(0x15d)]),'tag':_0x358138['tag'],'tagIcon':_0x358138[_0xa8d864(0x14e)][_0xa8d864(0x178)](/\\/g,_0x220bfb['SMOiZ']),'source':_0x358138['source'],'sourcelogo':_0x358138[_0xa8d864(0x152)][_0xa8d864(0x178)](/\\/g,_0x220bfb[_0xa8d864(0x15d)])}}};const _0x31e957=await NTQQUserApi[_0xa8d864(0x15e)]();let _0x27741b=await NTQQUserApi[_0xa8d864(0x174)]();const _0x3e8053=WebApi['genBkn'](_0x27741b[_0xa8d864(0x167)]),_0x2f5063=_0x220bfb[_0xa8d864(0x172)](_0x220bfb[_0xa8d864(0x16b)](_0x220bfb[_0xa8d864(0x16b)](_0x220bfb['yxEiY'](_0x220bfb[_0xa8d864(0x166)](_0x220bfb[_0xa8d864(0x170)](_0x220bfb[_0xa8d864(0x155)],_0x27741b['p_skey']),_0x220bfb[_0xa8d864(0x161)]),_0x27741b[_0xa8d864(0x175)]),_0x220bfb[_0xa8d864(0x176)])+selfInfo[_0xa8d864(0x15f)],_0x220bfb[_0xa8d864(0x162)]),selfInfo[_0xa8d864(0x15f)]);let _0x5f41be=_0x220bfb[_0xa8d864(0x172)](_0x220bfb[_0xa8d864(0x14f)](_0x220bfb[_0xa8d864(0x166)](_0x220bfb[_0xa8d864(0x171)],_0x3e8053),_0x220bfb[_0xa8d864(0x163)]),_0x220bfb[_0xa8d864(0x179)](encodeURIComponent,JSON[_0xa8d864(0x160)](_0x4d8a16))),_0x16e440='';try{let _0x31ef23=await RequestUtil['HttpGetJson'](_0x5f41be,_0x220bfb['hKIgf'],undefined,{'Cookie':_0x2f5063});_0x220bfb['rMtAp'](logDebug,_0xa8d864(0x159),_0x31ef23),_0x16e440=_0x31ef23['data'][_0xa8d864(0x17a)];}catch(_0x3a0cf4){logDebug(_0xa8d864(0x16a),_0x3a0cf4);}return _0x16e440;}

View File

@@ -1 +1 @@
function _0xe208(_0x239302,_0x48d04f){var _0x34ef9f=_0x34ef();return _0xe208=function(_0xe20843,_0x541c07){_0xe20843=_0xe20843-0x13e;var _0x19a61e=_0x34ef9f[_0xe20843];return _0x19a61e;},_0xe208(_0x239302,_0x48d04f);}var _0x3f60c9=_0xe208;function _0x34ef(){var _0x406d51=['4900240iHNPdG','1370170vDQCth','2972523tLPDlP','4203250HeADmm','908327esyrES','4ZClBmZ','hasOtherRunningQQProcess','5169774BrFFYi','8558163ynHfmc','10JnedOb','7nGjUnb','util'];_0x34ef=function(){return _0x406d51;};return _0x34ef();}(function(_0x1f3083,_0xe1cf2e){var _0xf220e2=_0xe208,_0x6caf01=_0x1f3083();while(!![]){try{var _0x2e3826=-parseInt(_0xf220e2(0x144))/0x1+parseInt(_0xf220e2(0x141))/0x2+-parseInt(_0xf220e2(0x142))/0x3*(-parseInt(_0xf220e2(0x145))/0x4)+-parseInt(_0xf220e2(0x143))/0x5+-parseInt(_0xf220e2(0x147))/0x6*(parseInt(_0xf220e2(0x13e))/0x7)+parseInt(_0xf220e2(0x140))/0x8+-parseInt(_0xf220e2(0x148))/0x9*(-parseInt(_0xf220e2(0x149))/0xa);if(_0x2e3826===_0xe1cf2e)break;else _0x6caf01['push'](_0x6caf01['shift']());}catch(_0x5d654c){_0x6caf01['push'](_0x6caf01['shift']());}}}(_0x34ef,0x99815));import{napCatCore}from'@/core';export class NTQQSystemApi{static async[_0x3f60c9(0x146)](){var _0x1497e8=_0x3f60c9;return napCatCore[_0x1497e8(0x13f)][_0x1497e8(0x146)]();}}
var _0x3385fe=_0x5d40;(function(_0x4e096e,_0x177c2c){var _0x4bde02=_0x5d40,_0x496d9b=_0x4e096e();while(!![]){try{var _0x324f89=-parseInt(_0x4bde02(0xc7))/0x1+parseInt(_0x4bde02(0xbc))/0x2+-parseInt(_0x4bde02(0xc1))/0x3+parseInt(_0x4bde02(0xbe))/0x4*(parseInt(_0x4bde02(0xbf))/0x5)+-parseInt(_0x4bde02(0xbd))/0x6*(-parseInt(_0x4bde02(0xc4))/0x7)+parseInt(_0x4bde02(0xbb))/0x8*(parseInt(_0x4bde02(0xc5))/0x9)+-parseInt(_0x4bde02(0xc6))/0xa*(parseInt(_0x4bde02(0xc3))/0xb);if(_0x324f89===_0x177c2c)break;else _0x496d9b['push'](_0x496d9b['shift']());}catch(_0x40a97a){_0x496d9b['push'](_0x496d9b['shift']());}}}(_0x43a6,0xc2561));import{napCatCore}from'@/core';function _0x5d40(_0x314a91,_0x2c26e4){var _0x43a636=_0x43a6();return _0x5d40=function(_0x5d4079,_0x214340){_0x5d4079=_0x5d4079-0xbb;var _0x2cb90e=_0x43a636[_0x5d4079];return _0x2cb90e;},_0x5d40(_0x314a91,_0x2c26e4);}export class NTQQSystemApi{static async[_0x3385fe(0xc0)](){var _0x5a8591=_0x3385fe;return napCatCore[_0x5a8591(0xc2)][_0x5a8591(0xc0)]();}}function _0x43a6(){var _0x21774a=['hasOtherRunningQQProcess','3785376LcCVcZ','util','253nLaLRL','36022FTLRie','1090827XaWlka','279460bMyGfV','1360566AQqLKb','96vjIEbL','791320oImEIX','1572fcWrKP','3451076vYNtrg','5GgcdPt'];_0x43a6=function(){return _0x21774a;};return _0x43a6();}

View File

@@ -18,5 +18,8 @@ export declare class NTQQUserApi {
[key: string]: string;
}>;
static getRobotUinRange(): Promise<Array<any>>;
static getQzoneCookies(): Promise<{
[key: string]: string;
}>;
static getSkey(cached?: boolean): Promise<string | undefined>;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -3,6 +3,9 @@ import { WebApiGroupMember } from '@/core/apis';
export declare const Credentials: {
Skey: string;
CreatTime: number;
Cookies: Map<string, string>;
ClientKey: string;
KeyIndex: string;
PskeyData: Map<string, string>;
PskeyTime: Map<string, number>;
};

View File

@@ -1 +1 @@
(function(_0x3ebc58,_0x278ca2){const _0x3a0376=_0x1e30,_0x83a85e=_0x3ebc58();while(!![]){try{const _0x51f1e1=parseInt(_0x3a0376(0x1ef))/0x1*(-parseInt(_0x3a0376(0x1f9))/0x2)+parseInt(_0x3a0376(0x1fe))/0x3+-parseInt(_0x3a0376(0x1fc))/0x4*(-parseInt(_0x3a0376(0x202))/0x5)+parseInt(_0x3a0376(0x200))/0x6+parseInt(_0x3a0376(0x1fd))/0x7*(parseInt(_0x3a0376(0x1fa))/0x8)+parseInt(_0x3a0376(0x1f0))/0x9+-parseInt(_0x3a0376(0x1f1))/0xa;if(_0x51f1e1===_0x278ca2)break;else _0x83a85e['push'](_0x83a85e['shift']());}catch(_0x3fa2ad){_0x83a85e['push'](_0x83a85e['shift']());}}}(_0x6135,0x5b287));import{isNumeric}from'@/common/utils/helper';import{NTQQGroupApi}from'@/core/apis';export const Credentials={'Skey':'','CreatTime':0x0,'PskeyData':new Map(),'PskeyTime':new Map()};export const WebGroupData={'GroupData':new Map(),'GroupTime':new Map()};export const selfInfo={'uid':'','uin':'','nick':'','online':!![]};function _0x6135(){const _0x218b47=['pLLqI','3612348Oiugmy','hCecN','230445pEsdgN','FcJLn','uin','forEach','set','length','1gjXCGZ','4420674SlOtlx','16691040XGhKNZ','find','toString','delete','from','getGroups','values','getGroupMembers','560130rgiveV','5665448XbQjyg','get','44qFlfFy','7YgvFyk','42444dRbilI'];_0x6135=function(){return _0x218b47;};return _0x6135();}export const groups=new Map();export function deleteGroup(_0x33ed07){const _0x482ae5=_0x1e30;groups['delete'](_0x33ed07),groupMembers[_0x482ae5(0x1f4)](_0x33ed07);}export const groupMembers=new Map();export const friends=new Map();export const friendRequests={};export const groupNotifies={};function _0x1e30(_0x45c4ed,_0x2bf4ae){const _0x6135fc=_0x6135();return _0x1e30=function(_0x1e30df,_0x20883c){_0x1e30df=_0x1e30df-0x1ee;let _0x5a103e=_0x6135fc[_0x1e30df];return _0x5a103e;},_0x1e30(_0x45c4ed,_0x2bf4ae);}export const napCatError={'ffmpegError':'','httpServerError':'','wsServerError':'','otherError':'NapCat未能正常启动请检查日志查看错误'};export async function getFriend(_0xbd6485){const _0x3c07e8=_0x1e30,_0x34bab0={'pLLqI':function(_0x1d9813,_0xaaadf){return _0x1d9813(_0xaaadf);}};_0xbd6485=_0xbd6485[_0x3c07e8(0x1f3)]();if(_0x34bab0[_0x3c07e8(0x1ff)](isNumeric,_0xbd6485)){const _0x439346=Array[_0x3c07e8(0x1f5)](friends[_0x3c07e8(0x1f7)]());return _0x439346[_0x3c07e8(0x1f2)](_0x4b18cb=>_0x4b18cb[_0x3c07e8(0x204)]===_0xbd6485);}else return friends[_0x3c07e8(0x1fb)](_0xbd6485);}export async function getGroup(_0x293a95){const _0x33890d=_0x1e30;let _0xa7774a=groups['get'](_0x293a95[_0x33890d(0x1f3)]());if(!_0xa7774a)try{const _0x4be3f3=await NTQQGroupApi[_0x33890d(0x1f6)]();_0x4be3f3[_0x33890d(0x1ee)]&&_0x4be3f3[_0x33890d(0x205)](_0x92d757=>{const _0xba692b=_0x33890d;groups[_0xba692b(0x206)](_0x92d757['groupCode'],_0x92d757);});}catch(_0x20ea00){return undefined;}return _0xa7774a=groups[_0x33890d(0x1fb)](_0x293a95[_0x33890d(0x1f3)]()),_0xa7774a;}export async function getGroupMember(_0x18480c,_0x2125ec){const _0x471e2e=_0x1e30,_0x223a78={'hCecN':function(_0x331209){return _0x331209();}};_0x18480c=_0x18480c[_0x471e2e(0x1f3)](),_0x2125ec=_0x2125ec[_0x471e2e(0x1f3)]();let _0x452426=groupMembers[_0x471e2e(0x1fb)](_0x18480c);if(!_0x452426)try{_0x452426=await NTQQGroupApi[_0x471e2e(0x1f8)](_0x18480c),groupMembers[_0x471e2e(0x206)](_0x18480c,_0x452426);}catch(_0x1b0ef7){return null;}const _0x216782=()=>{const _0x31689d=_0x471e2e;let _0x14adc1=undefined;return isNumeric(_0x2125ec)?_0x14adc1=Array[_0x31689d(0x1f5)](_0x452426['values']())[_0x31689d(0x1f2)](_0x677c22=>_0x677c22[_0x31689d(0x204)]===_0x2125ec):_0x14adc1=_0x452426['get'](_0x2125ec),_0x14adc1;};let _0x520321=_0x223a78[_0x471e2e(0x201)](_0x216782);return!_0x520321&&(_0x452426=await NTQQGroupApi['getGroupMembers'](_0x18480c),_0x520321=_0x223a78[_0x471e2e(0x201)](_0x216782)),_0x520321;}export const uid2UinMap={};export function getUidByUin(_0x28d7ba){const _0x29d819=_0x1e30,_0x58327d={'FcJLn':function(_0x17f83d,_0x349a01){return _0x17f83d===_0x349a01;}};for(const _0x28ccc4 in uid2UinMap){if(_0x58327d[_0x29d819(0x203)](uid2UinMap[_0x28ccc4],_0x28d7ba))return _0x28ccc4;}}export const tempGroupCodeMap={};export const rawFriends=[];export const stat={'packet_received':0x0,'packet_sent':0x0,'message_received':0x0,'message_sent':0x0,'last_message_time':0x0,'disconnect_times':0x0,'lost_times':0x0,'packet_lost':0x0};
function _0x1642(_0x1a8662,_0x1d40c7){const _0x66d13f=_0x66d1();return _0x1642=function(_0x164216,_0x1ad570){_0x164216=_0x164216-0xe3;let _0x380bd3=_0x66d13f[_0x164216];return _0x380bd3;},_0x1642(_0x1a8662,_0x1d40c7);}(function(_0x1866c3,_0xe707af){const _0x7fb1e8=_0x1642,_0x3fac90=_0x1866c3();while(!![]){try{const _0x13d3e7=parseInt(_0x7fb1e8(0xea))/0x1*(-parseInt(_0x7fb1e8(0xe4))/0x2)+-parseInt(_0x7fb1e8(0xeb))/0x3+-parseInt(_0x7fb1e8(0xf8))/0x4+-parseInt(_0x7fb1e8(0xf1))/0x5+-parseInt(_0x7fb1e8(0xe7))/0x6+parseInt(_0x7fb1e8(0xf0))/0x7*(-parseInt(_0x7fb1e8(0xf4))/0x8)+-parseInt(_0x7fb1e8(0xf7))/0x9*(-parseInt(_0x7fb1e8(0xe8))/0xa);if(_0x13d3e7===_0xe707af)break;else _0x3fac90['push'](_0x3fac90['shift']());}catch(_0x549291){_0x3fac90['push'](_0x3fac90['shift']());}}}(_0x66d1,0x34954));import{isNumeric}from'@/common/utils/helper';import{NTQQGroupApi}from'@/core/apis';export const Credentials={'Skey':'','CreatTime':0x0,'Cookies':new Map(),'ClientKey':'','KeyIndex':'','PskeyData':new Map(),'PskeyTime':new Map()};export const WebGroupData={'GroupData':new Map(),'GroupTime':new Map()};export const selfInfo={'uid':'','uin':'','nick':'','online':!![]};export const groups=new Map();export function deleteGroup(_0x15a7a6){const _0x2c5d9f=_0x1642;groups[_0x2c5d9f(0xec)](_0x15a7a6),groupMembers[_0x2c5d9f(0xec)](_0x15a7a6);}export const groupMembers=new Map();export const friends=new Map();export const friendRequests={};export const groupNotifies={};export const napCatError={'ffmpegError':'','httpServerError':'','wsServerError':'','otherError':'NapCat未能正常启动请检查日志查看错误'};export async function getFriend(_0x36c81b){const _0x5070e1=_0x1642;_0x36c81b=_0x36c81b['toString']();if(isNumeric(_0x36c81b)){const _0x2acf8c=Array[_0x5070e1(0xf9)](friends[_0x5070e1(0xed)]());return _0x2acf8c[_0x5070e1(0xe3)](_0xfe1ef7=>_0xfe1ef7[_0x5070e1(0xf5)]===_0x36c81b);}else return friends['get'](_0x36c81b);}export async function getGroup(_0x265c3d){const _0x21d54d=_0x1642;let _0x4b47b8=groups[_0x21d54d(0xe9)](_0x265c3d[_0x21d54d(0xe5)]());if(!_0x4b47b8)try{const _0x3ace3c=await NTQQGroupApi[_0x21d54d(0xfa)]();_0x3ace3c[_0x21d54d(0xf3)]&&_0x3ace3c['forEach'](_0x19263b=>{const _0x248465=_0x21d54d;groups[_0x248465(0xee)](_0x19263b[_0x248465(0xef)],_0x19263b);});}catch(_0x93e832){return undefined;}return _0x4b47b8=groups['get'](_0x265c3d[_0x21d54d(0xe5)]()),_0x4b47b8;}export async function getGroupMember(_0x4c9dde,_0x2a836c){const _0x3c843c=_0x1642,_0x2552a3={'NPAsI':function(_0x423608,_0x3928c7){return _0x423608(_0x3928c7);},'csHUm':function(_0x4dfaa8){return _0x4dfaa8();},'fQDEe':function(_0xe63e3d){return _0xe63e3d();}};_0x4c9dde=_0x4c9dde[_0x3c843c(0xe5)](),_0x2a836c=_0x2a836c[_0x3c843c(0xe5)]();let _0x2f424f=groupMembers[_0x3c843c(0xe9)](_0x4c9dde);if(!_0x2f424f)try{_0x2f424f=await NTQQGroupApi['getGroupMembers'](_0x4c9dde),groupMembers[_0x3c843c(0xee)](_0x4c9dde,_0x2f424f);}catch(_0x121aa6){return null;}const _0x467aab=()=>{const _0x5ba92b=_0x3c843c;let _0x3ae4b1=undefined;return _0x2552a3['NPAsI'](isNumeric,_0x2a836c)?_0x3ae4b1=Array[_0x5ba92b(0xf9)](_0x2f424f['values']())['find'](_0x3f9f4f=>_0x3f9f4f['uin']===_0x2a836c):_0x3ae4b1=_0x2f424f[_0x5ba92b(0xe9)](_0x2a836c),_0x3ae4b1;};let _0x234020=_0x2552a3[_0x3c843c(0xf6)](_0x467aab);return!_0x234020&&(_0x2f424f=await NTQQGroupApi[_0x3c843c(0xe6)](_0x4c9dde),_0x234020=_0x2552a3[_0x3c843c(0xf2)](_0x467aab)),_0x234020;}export const uid2UinMap={};export function getUidByUin(_0x3cc9c2){for(const _0x37ff82 in uid2UinMap){if(uid2UinMap[_0x37ff82]===_0x3cc9c2)return _0x37ff82;}}function _0x66d1(){const _0x1aafc1=['delete','values','set','groupCode','35NkYjYP','1666025YLVJIM','fQDEe','length','445448ZUKZQK','uin','csHUm','13268628HwALlt','214108scqLKw','from','getGroups','find','2rzzIQy','toString','getGroupMembers','827250mHLyYZ','10HaeqNQ','get','236069tAfqDV','659493muGXei'];_0x66d1=function(){return _0x1aafc1;};return _0x66d1();}export const tempGroupCodeMap={};export const rawFriends=[];export const stat={'packet_received':0x0,'packet_sent':0x0,'message_received':0x0,'message_sent':0x0,'last_message_time':0x0,'disconnect_times':0x0,'lost_times':0x0,'packet_lost':0x0};

View File

@@ -1 +1 @@
function _0x494d(_0x4d76f4,_0x322ab9){var _0xeb019b=_0xeb01();return _0x494d=function(_0x494df3,_0x3be8f4){_0x494df3=_0x494df3-0x108;var _0xf939f4=_0xeb019b[_0x494df3];return _0xf939f4;},_0x494d(_0x4d76f4,_0x322ab9);}(function(_0x1096ee,_0x502f76){var _0x31a750=_0x494d,_0x3d4a95=_0x1096ee();while(!![]){try{var _0x1c0149=-parseInt(_0x31a750(0x10b))/0x1+parseInt(_0x31a750(0x119))/0x2+parseInt(_0x31a750(0x113))/0x3*(-parseInt(_0x31a750(0x11d))/0x4)+parseInt(_0x31a750(0x11c))/0x5+-parseInt(_0x31a750(0x10c))/0x6*(parseInt(_0x31a750(0x11a))/0x7)+-parseInt(_0x31a750(0x10a))/0x8*(parseInt(_0x31a750(0x117))/0x9)+-parseInt(_0x31a750(0x112))/0xa*(-parseInt(_0x31a750(0x10e))/0xb);if(_0x1c0149===_0x502f76)break;else _0x3d4a95['push'](_0x3d4a95['shift']());}catch(_0x59109d){_0x3d4a95['push'](_0x3d4a95['shift']());}}}(_0xeb01,0x89c6c));;export var CacheFileType;(function(_0x1f9549){var _0x143626=_0x494d,_0x43595b={'Duvec':_0x143626(0x114),'zqthz':_0x143626(0x11e),'IZMwB':_0x143626(0x10d),'KIqaE':_0x143626(0x108),'yibUK':_0x143626(0x115),'vPdgO':_0x143626(0x111)},_0x17a434=_0x43595b['Duvec'][_0x143626(0x116)]('|'),_0x54a2d8=0x0;while(!![]){switch(_0x17a434[_0x54a2d8++]){case'0':_0x1f9549[_0x1f9549[_0x43595b[_0x143626(0x10f)]]=0x2]=_0x43595b['zqthz'];continue;case'1':_0x1f9549[_0x1f9549[_0x143626(0x10d)]=0x0]=_0x43595b[_0x143626(0x109)];continue;case'2':_0x1f9549[_0x1f9549[_0x43595b['KIqaE']]=0x3]=_0x43595b[_0x143626(0x11b)];continue;case'3':_0x1f9549[_0x1f9549[_0x43595b[_0x143626(0x110)]]=0x4]=_0x43595b[_0x143626(0x110)];continue;case'4':_0x1f9549[_0x1f9549[_0x43595b[_0x143626(0x118)]]=0x1]=_0x43595b['vPdgO'];continue;}break;}}(CacheFileType||(CacheFileType={})));function _0xeb01(){var _0x9fa370=['14742aDCGKh','KIqaE','1681495lCHQMn','1831352CCQYHC','AUDIO','DOCUMENT','IZMwB','5567960pFNaKM','561245nvVGFv','1374qTyxIN','IMAGE','4906nOgtqm','zqthz','yibUK','VIDEO','35500mtzNbb','3aFFliJ','1|4|0|2|3','OTHER','split','9JfIniE','vPdgO','1684170vPYujA'];_0xeb01=function(){return _0x9fa370;};return _0xeb01();}
function _0x545d(_0x3ef9dc,_0xe5aa36){var _0x101f48=_0x101f();return _0x545d=function(_0x545d67,_0x27e419){_0x545d67=_0x545d67-0xb3;var _0x3ad04c=_0x101f48[_0x545d67];return _0x3ad04c;},_0x545d(_0x3ef9dc,_0xe5aa36);}function _0x101f(){var _0x3f338c=['14ndscRH','YYofk','2953002rmxilI','DOCUMENT','split','xKGzN','20pHxTRb','KxFxV','2740150DbzUDW','231PWAyjZ','ADNkV','AUDIO','IMAGE','9428TgPFRW','OTHER','44912uQZHKJ','0|3|1|2|4','kSBJM','190912UmDJUy','2072727NugLUo','1637336vEufIL'];_0x101f=function(){return _0x3f338c;};return _0x101f();}(function(_0x4a11ea,_0x38ba70){var _0x496e86=_0x545d,_0x20b4e3=_0x4a11ea();while(!![]){try{var _0xbe8e11=parseInt(_0x496e86(0xc1))/0x1+parseInt(_0x496e86(0xbe))/0x2+-parseInt(_0x496e86(0xb8))/0x3*(-parseInt(_0x496e86(0xbc))/0x4)+-parseInt(_0x496e86(0xb7))/0x5+parseInt(_0x496e86(0xc6))/0x6+parseInt(_0x496e86(0xc4))/0x7*(parseInt(_0x496e86(0xc3))/0x8)+-parseInt(_0x496e86(0xc2))/0x9*(parseInt(_0x496e86(0xb5))/0xa);if(_0xbe8e11===_0x38ba70)break;else _0x20b4e3['push'](_0x20b4e3['shift']());}catch(_0x5752e8){_0x20b4e3['push'](_0x20b4e3['shift']());}}}(_0x101f,0x463ea));;export var CacheFileType;(function(_0x5328bf){var _0x83c8ad=_0x545d,_0x26642b={'kSBJM':_0x83c8ad(0xbf),'KxFxV':_0x83c8ad(0xbb),'xKGzN':'AUDIO','ADNkV':_0x83c8ad(0xc7),'YYofk':'VIDEO','LBNan':_0x83c8ad(0xbd)},_0x4ecba1=_0x26642b[_0x83c8ad(0xc0)][_0x83c8ad(0xb3)]('|'),_0x5403d6=0x0;while(!![]){switch(_0x4ecba1[_0x5403d6++]){case'0':_0x5328bf[_0x5328bf[_0x26642b[_0x83c8ad(0xb6)]]=0x0]=_0x26642b[_0x83c8ad(0xb6)];continue;case'1':_0x5328bf[_0x5328bf[_0x26642b[_0x83c8ad(0xb4)]]=0x2]=_0x83c8ad(0xba);continue;case'2':_0x5328bf[_0x5328bf[_0x26642b[_0x83c8ad(0xb9)]]=0x3]=_0x83c8ad(0xc7);continue;case'3':_0x5328bf[_0x5328bf[_0x26642b[_0x83c8ad(0xc5)]]=0x1]=_0x26642b[_0x83c8ad(0xc5)];continue;case'4':_0x5328bf[_0x5328bf[_0x26642b['LBNan']]=0x4]=_0x26642b['LBNan'];continue;}break;}}(CacheFileType||(CacheFileType={})));

View File

@@ -14,4 +14,5 @@ export declare class SendMsgElementConstructor {
static rps(resultId: number | null): SendFaceElement;
static ark(data: any): SendArkElement;
static markdown(content: string): SendMarkdownElement;
static miniapp(): Promise<SendArkElement>;
}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
function _0x2807(){var _0x4ef20b=['owner','21416CUqYdz','266XXrvJN','6906SRQDUL','admin','1020SLsIQz','787310iZgKPa','52VJDNOy','356IfpTxy','2394297ZFaOgj','150648DakNdJ','lerWW','198ZhjMav','9368YnoGlx','1878kbCktK'];_0x2807=function(){return _0x4ef20b;};return _0x2807();}(function(_0x3ba2fc,_0x196bac){var _0x2bc3ed=_0x54db,_0x437ec3=_0x3ba2fc();while(!![]){try{var _0x1ae6f2=-parseInt(_0x2bc3ed(0xfa))/0x1*(-parseInt(_0x2bc3ed(0x100))/0x2)+-parseInt(_0x2bc3ed(0x105))/0x3*(parseInt(_0x2bc3ed(0xfb))/0x4)+-parseInt(_0x2bc3ed(0xf8))/0x5*(-parseInt(_0x2bc3ed(0x101))/0x6)+-parseInt(_0x2bc3ed(0x104))/0x7*(-parseInt(_0x2bc3ed(0x103))/0x8)+-parseInt(_0x2bc3ed(0xfc))/0x9+parseInt(_0x2bc3ed(0xf9))/0xa+-parseInt(_0x2bc3ed(0xff))/0xb*(-parseInt(_0x2bc3ed(0xfd))/0xc);if(_0x1ae6f2===_0x196bac)break;else _0x437ec3['push'](_0x437ec3['shift']());}catch(_0x3ef279){_0x437ec3['push'](_0x437ec3['shift']());}}}(_0x2807,0x3b4fa));export var GroupMemberRole;function _0x54db(_0x27a480,_0x521d94){var _0x28077e=_0x2807();return _0x54db=function(_0x54dbfd,_0x1f85a7){_0x54dbfd=_0x54dbfd-0xf7;var _0x3d90b3=_0x28077e[_0x54dbfd];return _0x3d90b3;},_0x54db(_0x27a480,_0x521d94);}(function(_0x181feb){var _0x173256=_0x54db,_0x2a759a={'lerWW':'normal','leCkQ':_0x173256(0xf7),'QEoRo':_0x173256(0x102)};_0x181feb[_0x181feb[_0x2a759a[_0x173256(0xfe)]]=0x2]=_0x2a759a[_0x173256(0xfe)],_0x181feb[_0x181feb['admin']=0x3]=_0x2a759a['leCkQ'],_0x181feb[_0x181feb[_0x2a759a['QEoRo']]=0x4]=_0x173256(0x102);}(GroupMemberRole||(GroupMemberRole={})));
function _0x4da7(_0x2dece6,_0x3de6ef){var _0x4b161f=_0x4b16();return _0x4da7=function(_0x4da794,_0x2abd8a){_0x4da794=_0x4da794-0x161;var _0xf1e548=_0x4b161f[_0x4da794];return _0xf1e548;},_0x4da7(_0x2dece6,_0x3de6ef);}(function(_0x18d2b9,_0x1230ef){var _0x2e2a86=_0x4da7,_0x40e364=_0x18d2b9();while(!![]){try{var _0x468e31=parseInt(_0x2e2a86(0x162))/0x1+-parseInt(_0x2e2a86(0x16a))/0x2*(-parseInt(_0x2e2a86(0x164))/0x3)+-parseInt(_0x2e2a86(0x161))/0x4+parseInt(_0x2e2a86(0x167))/0x5*(parseInt(_0x2e2a86(0x168))/0x6)+-parseInt(_0x2e2a86(0x166))/0x7+-parseInt(_0x2e2a86(0x16d))/0x8+-parseInt(_0x2e2a86(0x169))/0x9*(-parseInt(_0x2e2a86(0x165))/0xa);if(_0x468e31===_0x1230ef)break;else _0x40e364['push'](_0x40e364['shift']());}catch(_0x128320){_0x40e364['push'](_0x40e364['shift']());}}}(_0x4b16,0xd59db));function _0x4b16(){var _0x36957f=['9dJaKky','9242NzUVsB','tWQaC','owner','6172288NkVpxF','admin','5560288sHiXxY','646660zLAmzA','yjOxv','963UIXEXG','6511530UkDoaQ','3984414bAfjss','77795OqnHHX','318pMgnEg'];_0x4b16=function(){return _0x36957f;};return _0x4b16();}export var GroupMemberRole;(function(_0x248e7c){var _0x5e4454=_0x4da7,_0x4da84f={'tWQaC':'normal','yjOxv':_0x5e4454(0x16e),'mVDrM':'owner'};_0x248e7c[_0x248e7c[_0x4da84f['tWQaC']]=0x2]=_0x4da84f[_0x5e4454(0x16b)],_0x248e7c[_0x248e7c[_0x4da84f[_0x5e4454(0x163)]]=0x3]=_0x4da84f['yjOxv'],_0x248e7c[_0x248e7c[_0x5e4454(0x16c)]=0x4]=_0x4da84f['mVDrM'];}(GroupMemberRole||(GroupMemberRole={})));

View File

@@ -1 +1 @@
(function(_0x483221,_0x43ca14){var _0x5d27d8=_0x9e95,_0x41b2bc=_0x483221();while(!![]){try{var _0x25dafa=-parseInt(_0x5d27d8(0xe0))/0x1+-parseInt(_0x5d27d8(0xe2))/0x2*(-parseInt(_0x5d27d8(0xe4))/0x3)+-parseInt(_0x5d27d8(0xe3))/0x4*(-parseInt(_0x5d27d8(0xe8))/0x5)+-parseInt(_0x5d27d8(0xe9))/0x6*(parseInt(_0x5d27d8(0xe1))/0x7)+parseInt(_0x5d27d8(0xe7))/0x8*(-parseInt(_0x5d27d8(0xe6))/0x9)+parseInt(_0x5d27d8(0xe5))/0xa+-parseInt(_0x5d27d8(0xea))/0xb*(-parseInt(_0x5d27d8(0xdf))/0xc);if(_0x25dafa===_0x43ca14)break;else _0x41b2bc['push'](_0x41b2bc['shift']());}catch(_0x222f73){_0x41b2bc['push'](_0x41b2bc['shift']());}}}(_0x222a,0xb7397));export*from'./user';export*from'./group';export*from'./msg';function _0x9e95(_0x189da4,_0x2fda57){var _0x222a1b=_0x222a();return _0x9e95=function(_0x9e959c,_0x316d0b){_0x9e959c=_0x9e959c-0xdf;var _0x3af864=_0x222a1b[_0x9e959c];return _0x3af864;},_0x9e95(_0x189da4,_0x2fda57);}function _0x222a(){var _0x5f0ff9=['16hwytYu','1955105QngILm','4206tcPTFX','810139NYaiaR','276PcAraa','374245pqZHAZ','13601cbIKCi','718424GphXdX','4vCgNYX','6PtVgbD','4454410FaQwMM','3429171Ypsmhg'];_0x222a=function(){return _0x5f0ff9;};return _0x222a();}export*from'./notify';export*from'./cache';export*from'./constructor';
(function(_0x3f0194,_0x3a6f4a){var _0x539a8f=_0x4f70,_0x2067a5=_0x3f0194();while(!![]){try{var _0x499e86=-parseInt(_0x539a8f(0x171))/0x1*(-parseInt(_0x539a8f(0x174))/0x2)+parseInt(_0x539a8f(0x177))/0x3*(parseInt(_0x539a8f(0x16f))/0x4)+-parseInt(_0x539a8f(0x173))/0x5+parseInt(_0x539a8f(0x16e))/0x6*(-parseInt(_0x539a8f(0x176))/0x7)+parseInt(_0x539a8f(0x172))/0x8+-parseInt(_0x539a8f(0x170))/0x9+parseInt(_0x539a8f(0x175))/0xa;if(_0x499e86===_0x3a6f4a)break;else _0x2067a5['push'](_0x2067a5['shift']());}catch(_0x41555b){_0x2067a5['push'](_0x2067a5['shift']());}}}(_0x1b61,0x2d476));function _0x4f70(_0x34f5ce,_0x20f4ba){var _0x1b6107=_0x1b61();return _0x4f70=function(_0x4f701e,_0x3ef028){_0x4f701e=_0x4f701e-0x16e;var _0x3b02d3=_0x1b6107[_0x4f701e];return _0x3b02d3;},_0x4f70(_0x34f5ce,_0x20f4ba);}export*from'./user';function _0x1b61(){var _0x4958f7=['863225NcNNqZ','2ixShrg','4260810wFoYio','287ZKlKQo','441843JsnoPO','18108dnDIdy','4CSgZUz','1764612mSDzJh','70654UcFolu','271176ONTsbw'];_0x1b61=function(){return _0x4958f7;};return _0x1b61();}export*from'./group';export*from'./msg';export*from'./notify';export*from'./cache';export*from'./constructor';

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
(function(_0x597755,_0x495d5b){var _0x47ee60=_0x3ba9,_0x53437c=_0x597755();while(!![]){try{var _0x1f8aa0=parseInt(_0x47ee60(0x132))/0x1+parseInt(_0x47ee60(0x11e))/0x2+-parseInt(_0x47ee60(0x126))/0x3+parseInt(_0x47ee60(0x129))/0x4+-parseInt(_0x47ee60(0x121))/0x5*(-parseInt(_0x47ee60(0x134))/0x6)+parseInt(_0x47ee60(0x11d))/0x7+-parseInt(_0x47ee60(0x12f))/0x8;if(_0x1f8aa0===_0x495d5b)break;else _0x53437c['push'](_0x53437c['shift']());}catch(_0x47c442){_0x53437c['push'](_0x53437c['shift']());}}}(_0x4f72,0x36c78));export var GroupNotifyTypes;(function(_0x42092b){var _0x146440=_0x3ba9,_0x2d617d={'WmUTX':'1|0|7|3|2|4|6|5','RshSK':'INVITED_JOIN','FiHVa':'INVITE_ME','PVhaW':_0x146440(0x124),'YYbcU':_0x146440(0x12e),'HBYIM':_0x146440(0x133),'hNtNd':'ADMIN_UNSET_OTHER','XzmFW':_0x146440(0x118),'DPknG':_0x146440(0x12b)},_0x556669=_0x2d617d['WmUTX'][_0x146440(0x136)]('|'),_0x210252=0x0;while(!![]){switch(_0x556669[_0x210252++]){case'0':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x135)]]=0x4]=_0x2d617d[_0x146440(0x135)];continue;case'1':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x12c)]]=0x1]=_0x2d617d[_0x146440(0x12c)];continue;case'2':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x130)]]=0x9]=_0x2d617d['PVhaW'];continue;case'3':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x11a)]]=0x8]=_0x2d617d[_0x146440(0x11a)];continue;case'4':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x131)]]=0xb]=_0x2d617d[_0x146440(0x131)];continue;case'5':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x12a)]]=0xd]=_0x146440(0x127);continue;case'6':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x117)]]=0xc]=_0x146440(0x118);continue;case'7':_0x42092b[_0x42092b[_0x2d617d['DPknG']]=0x7]=_0x2d617d[_0x146440(0x119)];continue;}break;}}(GroupNotifyTypes||(GroupNotifyTypes={})));function _0x3ba9(_0x363fa6,_0x4a4417){var _0x4f7201=_0x4f72();return _0x3ba9=function(_0x3ba98f,_0x4940ff){_0x3ba98f=_0x3ba98f-0x117;var _0x1598fa=_0x4f7201[_0x3ba98f];return _0x1598fa;},_0x3ba9(_0x363fa6,_0x4a4417);}export var GroupNotifyStatus;(function(_0x2c1a48){var _0x3cd212=_0x3ba9,_0x108bfa={'FFrqV':_0x3cd212(0x11c),'mmKwz':'APPROVE','MdUSB':_0x3cd212(0x122)};_0x2c1a48[_0x2c1a48[_0x3cd212(0x120)]=0x0]=_0x3cd212(0x120),_0x2c1a48[_0x2c1a48[_0x108bfa[_0x3cd212(0x123)]]=0x1]=_0x108bfa[_0x3cd212(0x123)],_0x2c1a48[_0x2c1a48[_0x108bfa[_0x3cd212(0x12d)]]=0x2]=_0x108bfa[_0x3cd212(0x12d)],_0x2c1a48[_0x2c1a48[_0x3cd212(0x122)]=0x3]=_0x108bfa[_0x3cd212(0x11f)];}(GroupNotifyStatus||(GroupNotifyStatus={})));export var GroupRequestOperateTypes;function _0x4f72(){var _0x477d17=['ADMIN_UNSET_OTHER','approve','1363320mSZoUD','hNtNd','JOIN_REQUEST','FiHVa','mmKwz','ADMIN_SET','8323784ecKLSV','PVhaW','HBYIM','163549FiTSob','MEMBER_EXIT','347946uHQutX','RshSK','split','XzmFW','ADMIN_UNSET','DPknG','YYbcU','reject','WAIT_HANDLE','2885211wbBSFD','598888Pbgtzq','MdUSB','IGNORE','20TIqfla','REJECT','FFrqV','KICK_MEMBER','pNUWl','549333IUIRPO'];_0x4f72=function(){return _0x477d17;};return _0x4f72();}(function(_0x2bd852){var _0x407584=_0x3ba9,_0x316115={'pNUWl':_0x407584(0x128),'fzYUx':_0x407584(0x11b)};_0x2bd852[_0x2bd852[_0x316115[_0x407584(0x125)]]=0x1]=_0x316115[_0x407584(0x125)],_0x2bd852[_0x2bd852[_0x407584(0x11b)]=0x2]=_0x316115['fzYUx'];}(GroupRequestOperateTypes||(GroupRequestOperateTypes={})));
(function(_0x11aac4,_0xb262ba){var _0x413011=_0x1152,_0x1b635c=_0x11aac4();while(!![]){try{var _0x346d09=-parseInt(_0x413011(0xf1))/0x1*(-parseInt(_0x413011(0xe4))/0x2)+-parseInt(_0x413011(0xd6))/0x3+-parseInt(_0x413011(0xf2))/0x4*(parseInt(_0x413011(0xde))/0x5)+-parseInt(_0x413011(0xdf))/0x6+parseInt(_0x413011(0xe8))/0x7*(parseInt(_0x413011(0xe6))/0x8)+-parseInt(_0x413011(0xe9))/0x9*(parseInt(_0x413011(0xe3))/0xa)+-parseInt(_0x413011(0xf0))/0xb*(-parseInt(_0x413011(0xe1))/0xc);if(_0x346d09===_0xb262ba)break;else _0x1b635c['push'](_0x1b635c['shift']());}catch(_0x1bef13){_0x1b635c['push'](_0x1b635c['shift']());}}}(_0x3772,0x1bcb3));export var GroupNotifyTypes;(function(_0x16026e){var _0x4f1c91=_0x1152,_0x1c6235={'KtSBV':_0x4f1c91(0xe7),'XLoSC':_0x4f1c91(0xee),'dalmy':_0x4f1c91(0xda),'UYDTR':_0x4f1c91(0xe5),'nqNhU':_0x4f1c91(0xed),'zZCqt':_0x4f1c91(0xe0),'YjmWf':_0x4f1c91(0xea),'nghVC':_0x4f1c91(0xd0)},_0x126e2a=_0x4f1c91(0xeb)['split']('|'),_0x1b7083=0x0;while(!![]){switch(_0x126e2a[_0x1b7083++]){case'0':_0x16026e[_0x16026e[_0x1c6235[_0x4f1c91(0xd8)]]=0x8]=_0x4f1c91(0xe7);continue;case'1':_0x16026e[_0x16026e[_0x1c6235[_0x4f1c91(0xd1)]]=0xc]=_0x1c6235['XLoSC'];continue;case'2':_0x16026e[_0x16026e[_0x1c6235[_0x4f1c91(0xd3)]]=0x4]=_0x4f1c91(0xda);continue;case'3':_0x16026e[_0x16026e[_0x1c6235[_0x4f1c91(0xd5)]]=0x1]=_0x4f1c91(0xe5);continue;case'4':_0x16026e[_0x16026e[_0x4f1c91(0xed)]=0x9]=_0x1c6235['nqNhU'];continue;case'5':_0x16026e[_0x16026e[_0x1c6235[_0x4f1c91(0xe2)]]=0xd]=_0x1c6235[_0x4f1c91(0xe2)];continue;case'6':_0x16026e[_0x16026e['JOIN_REQUEST']=0x7]=_0x1c6235['YjmWf'];continue;case'7':_0x16026e[_0x16026e[_0x1c6235[_0x4f1c91(0xf3)]]=0xb]=_0x1c6235['nghVC'];continue;}break;}}(GroupNotifyTypes||(GroupNotifyTypes={})));export var GroupNotifyStatus;function _0x1152(_0x3822ec,_0x95d17e){var _0x37720d=_0x3772();return _0x1152=function(_0x1152b0,_0x12c14b){_0x1152b0=_0x1152b0-0xd0;var _0x2f12c4=_0x37720d[_0x1152b0];return _0x2f12c4;},_0x1152(_0x3822ec,_0x95d17e);}function _0x3772(){var _0x3cab80=['IGNORE','INVITED_JOIN','WAIT_HANDLE','kAOQX','reject','10nCHzGe','820980wIqaRQ','ADMIN_UNSET_OTHER','1428SbmiRO','zZCqt','1916410KhGjUX','4CUJuWt','INVITE_ME','16aKZiyZ','ADMIN_SET','664531cpPWvG','9OWhryJ','JOIN_REQUEST','3|2|6|0|4|7|1|5','APPROVE','KICK_MEMBER','ADMIN_UNSET','approve','53108JwTDOc','21874FcyWpd','438316azzzRM','nghVC','MEMBER_EXIT','XLoSC','REJECT','dalmy','sIqXj','UYDTR','440022ggsJdd','lbtzO','KtSBV'];_0x3772=function(){return _0x3cab80;};return _0x3772();}(function(_0x43452b){var _0x429ac7=_0x1152,_0x33ed12={'sIqXj':_0x429ac7(0xd9),'OIgOb':_0x429ac7(0xdb),'jtihM':'APPROVE','lbtzO':_0x429ac7(0xd2)};_0x43452b[_0x43452b[_0x33ed12['sIqXj']]=0x0]=_0x33ed12[_0x429ac7(0xd4)],_0x43452b[_0x43452b[_0x33ed12['OIgOb']]=0x1]=_0x429ac7(0xdb),_0x43452b[_0x43452b[_0x33ed12['jtihM']]=0x2]=_0x429ac7(0xec),_0x43452b[_0x43452b[_0x33ed12[_0x429ac7(0xd7)]]=0x3]=_0x33ed12[_0x429ac7(0xd7)];}(GroupNotifyStatus||(GroupNotifyStatus={})));export var GroupRequestOperateTypes;(function(_0x50545c){var _0x42a296=_0x1152,_0x3614a8={'kAOQX':_0x42a296(0xdd)};_0x50545c[_0x50545c[_0x42a296(0xef)]=0x1]=_0x42a296(0xef),_0x50545c[_0x50545c[_0x3614a8[_0x42a296(0xdc)]]=0x2]=_0x3614a8[_0x42a296(0xdc)];}(GroupRequestOperateTypes||(GroupRequestOperateTypes={})));

View File

@@ -1 +1 @@
(function(_0x4121c2,_0x3a8bee){var _0x24f3b6=_0x34b7,_0x1faed3=_0x4121c2();while(!![]){try{var _0x5e0c2d=parseInt(_0x24f3b6(0x188))/0x1+parseInt(_0x24f3b6(0x192))/0x2+-parseInt(_0x24f3b6(0x18f))/0x3*(parseInt(_0x24f3b6(0x187))/0x4)+parseInt(_0x24f3b6(0x185))/0x5+-parseInt(_0x24f3b6(0x189))/0x6*(-parseInt(_0x24f3b6(0x186))/0x7)+-parseInt(_0x24f3b6(0x18e))/0x8+parseInt(_0x24f3b6(0x18a))/0x9*(-parseInt(_0x24f3b6(0x190))/0xa);if(_0x5e0c2d===_0x3a8bee)break;else _0x1faed3['push'](_0x1faed3['shift']());}catch(_0x22b0c3){_0x1faed3['push'](_0x1faed3['shift']());}}}(_0x121a,0xe7e53));function _0x34b7(_0x5436d7,_0xb54fe1){var _0x121ac7=_0x121a();return _0x34b7=function(_0x34b7f3,_0x3bc3fc){_0x34b7f3=_0x34b7f3-0x185;var _0xd1cff6=_0x121ac7[_0x34b7f3];return _0xd1cff6;},_0x34b7(_0x5436d7,_0xb54fe1);}export var Sex;function _0x121a(){var _0x14c1fc=['745026OHeVaF','495174cVhLTD','16551QHrdYN','male','VKQTj','female','1297288AiBdRI','4328151mUPdnO','3620XlDDEF','unknown','960396tcgIpt','4199045zncOin','98OUgwUY','4vkINsT'];_0x121a=function(){return _0x14c1fc;};return _0x121a();}(function(_0x447638){var _0x5f25e4=_0x34b7,_0x25373c={'VKQTj':_0x5f25e4(0x18b),'eYdrQ':_0x5f25e4(0x18d)};_0x447638[_0x447638[_0x25373c[_0x5f25e4(0x18c)]]=0x1]=_0x5f25e4(0x18b),_0x447638[_0x447638[_0x25373c['eYdrQ']]=0x2]=_0x25373c['eYdrQ'],_0x447638[_0x447638[_0x5f25e4(0x191)]=0xff]=_0x5f25e4(0x191);}(Sex||(Sex={})));
function _0xfb09(_0x4069c0,_0x12bb7b){var _0x45d3c7=_0x45d3();return _0xfb09=function(_0xfb0922,_0x312f99){_0xfb0922=_0xfb0922-0x1e6;var _0x2be3a3=_0x45d3c7[_0xfb0922];return _0x2be3a3;},_0xfb09(_0x4069c0,_0x12bb7b);}(function(_0x397b8f,_0x3cdcf4){var _0x2c290c=_0xfb09,_0x5c3bab=_0x397b8f();while(!![]){try{var _0x9e7901=-parseInt(_0x2c290c(0x1e9))/0x1+parseInt(_0x2c290c(0x1e8))/0x2*(-parseInt(_0x2c290c(0x1ea))/0x3)+parseInt(_0x2c290c(0x1ef))/0x4+parseInt(_0x2c290c(0x1f0))/0x5+-parseInt(_0x2c290c(0x1f2))/0x6*(-parseInt(_0x2c290c(0x1f1))/0x7)+-parseInt(_0x2c290c(0x1f3))/0x8*(parseInt(_0x2c290c(0x1ed))/0x9)+parseInt(_0x2c290c(0x1eb))/0xa;if(_0x9e7901===_0x3cdcf4)break;else _0x5c3bab['push'](_0x5c3bab['shift']());}catch(_0x2786db){_0x5c3bab['push'](_0x5c3bab['shift']());}}}(_0x45d3,0x8488c));export var Sex;function _0x45d3(){var _0x31b326=['902520AqROoT','3pOMsye','15807110hhIbCp','MAnXW','46629FMFnnd','male','232080axHzhk','4851910avaOkD','168ecKIdb','17322hofvQf','256egSqie','unknown','female','rCflF','2134458ndfJJQ'];_0x45d3=function(){return _0x31b326;};return _0x45d3();}(function(_0x3453e7){var _0x5f2da7=_0xfb09,_0x431283={'MAnXW':_0x5f2da7(0x1ee),'rCflF':_0x5f2da7(0x1e6)};_0x3453e7[_0x3453e7[_0x5f2da7(0x1ee)]=0x1]=_0x431283[_0x5f2da7(0x1ec)],_0x3453e7[_0x3453e7[_0x431283[_0x5f2da7(0x1e7)]]=0x2]=_0x431283[_0x5f2da7(0x1e7)],_0x3453e7[_0x3453e7['unknown']=0xff]=_0x5f2da7(0x1f4);}(Sex||(Sex={})));

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
(function(_0x13a88e,_0x1944b1){var _0x198dbd=_0x4ffc,_0x5ca256=_0x13a88e();while(!![]){try{var _0x56daeb=parseInt(_0x198dbd(0x83))/0x1+-parseInt(_0x198dbd(0x82))/0x2*(-parseInt(_0x198dbd(0x7f))/0x3)+parseInt(_0x198dbd(0x7e))/0x4*(parseInt(_0x198dbd(0x81))/0x5)+parseInt(_0x198dbd(0x80))/0x6*(-parseInt(_0x198dbd(0x7a))/0x7)+-parseInt(_0x198dbd(0x79))/0x8+-parseInt(_0x198dbd(0x7b))/0x9+-parseInt(_0x198dbd(0x7d))/0xa*(-parseInt(_0x198dbd(0x7c))/0xb);if(_0x56daeb===_0x1944b1)break;else _0x5ca256['push'](_0x5ca256['shift']());}catch(_0xb8e0d2){_0x5ca256['push'](_0x5ca256['shift']());}}}(_0x37eb,0x1eb8b));import _0x1319bf from'./wrapper';export*from'./adapters';export*from'./apis';export*from'./entities';export*from'./listeners';function _0x37eb(){var _0x57c55b=['727617qlMurs','10zDAJgz','103468OhYigi','3951rnfBSz','6114xvnsNO','10LhPIzf','326NRtZQp','135744BMQCqH','1008384rXVXgd','1393xJgdoD','122688LmtMUL'];_0x37eb=function(){return _0x57c55b;};return _0x37eb();}export*from'./services';export*as Adapters from'./adapters';export*as APIs from'./apis';export*as Entities from'./entities';export*as Listeners from'./listeners';export*as Services from'./services';export{_0x1319bf as Wrapper};export*as WrapperInterface from'./wrapper';export*as SessionConfig from'./sessionConfig';function _0x4ffc(_0x5d1c44,_0x2e18fb){var _0x37ebf7=_0x37eb();return _0x4ffc=function(_0x4ffc1c,_0x105737){_0x4ffc1c=_0x4ffc1c-0x79;var _0x31e3fb=_0x37ebf7[_0x4ffc1c];return _0x31e3fb;},_0x4ffc(_0x5d1c44,_0x2e18fb);}export{napCatCore}from'./core';
(function(_0xb49f97,_0x175077){var _0xf2c564=_0x1e80,_0x20d6f2=_0xb49f97();while(!![]){try{var _0x40fa08=parseInt(_0xf2c564(0x1d5))/0x1*(-parseInt(_0xf2c564(0x1d3))/0x2)+-parseInt(_0xf2c564(0x1d2))/0x3*(-parseInt(_0xf2c564(0x1d1))/0x4)+-parseInt(_0xf2c564(0x1cf))/0x5*(-parseInt(_0xf2c564(0x1d0))/0x6)+-parseInt(_0xf2c564(0x1d8))/0x7*(parseInt(_0xf2c564(0x1d9))/0x8)+parseInt(_0xf2c564(0x1d6))/0x9+-parseInt(_0xf2c564(0x1d4))/0xa*(-parseInt(_0xf2c564(0x1d7))/0xb)+parseInt(_0xf2c564(0x1db))/0xc*(parseInt(_0xf2c564(0x1da))/0xd);if(_0x40fa08===_0x175077)break;else _0x20d6f2['push'](_0x20d6f2['shift']());}catch(_0xa68e15){_0x20d6f2['push'](_0x20d6f2['shift']());}}}(_0x5438,0xd71dd));import _0x299076 from'./wrapper';export*from'./adapters';export*from'./apis';function _0x1e80(_0x3519bc,_0x5ae3be){var _0x54380e=_0x5438();return _0x1e80=function(_0x1e807a,_0x42f54f){_0x1e807a=_0x1e807a-0x1cf;var _0x4ea390=_0x54380e[_0x1e807a];return _0x4ea390;},_0x1e80(_0x3519bc,_0x5ae3be);}export*from'./entities';export*from'./listeners';export*from'./services';export*as Adapters from'./adapters';export*as APIs from'./apis';function _0x5438(){var _0x1bdecc=['2978548JeyFRF','3qNynFd','624adrTwZ','10RtDHVG','3793nnYNyq','3331395NbIiPc','14125463BSaQhs','18830NDslUz','4760AkfUiX','11882ssIBgw','10824nnrrWn','13550FUigJA','978RmEKIP'];_0x5438=function(){return _0x1bdecc;};return _0x5438();}export*as Entities from'./entities';export*as Listeners from'./listeners';export*as Services from'./services';export{_0x299076 as Wrapper};export*as WrapperInterface from'./wrapper';export*as SessionConfig from'./sessionConfig';export{napCatCore}from'./core';

View File

@@ -1 +1 @@
var _0x5e2e93=_0x448f;function _0x448f(_0x493fe3,_0x2158c3){var _0x4da3dc=_0x4da3();return _0x448f=function(_0x448f39,_0x23216b){_0x448f39=_0x448f39-0xd3;var _0x2e782a=_0x4da3dc[_0x448f39];return _0x2e782a;},_0x448f(_0x493fe3,_0x2158c3);}(function(_0x545901,_0x38fee5){var _0x20c67b=_0x448f,_0x63a21a=_0x545901();while(!![]){try{var _0x5cadd3=-parseInt(_0x20c67b(0xdf))/0x1*(parseInt(_0x20c67b(0xe0))/0x2)+-parseInt(_0x20c67b(0xd5))/0x3*(-parseInt(_0x20c67b(0xe3))/0x4)+parseInt(_0x20c67b(0xe9))/0x5*(-parseInt(_0x20c67b(0xd9))/0x6)+parseInt(_0x20c67b(0xdd))/0x7*(parseInt(_0x20c67b(0xd3))/0x8)+parseInt(_0x20c67b(0xe7))/0x9+-parseInt(_0x20c67b(0xe2))/0xa*(-parseInt(_0x20c67b(0xda))/0xb)+-parseInt(_0x20c67b(0xde))/0xc*(parseInt(_0x20c67b(0xe1))/0xd);if(_0x5cadd3===_0x38fee5)break;else _0x63a21a['push'](_0x63a21a['shift']());}catch(_0x1ff5ce){_0x63a21a['push'](_0x63a21a['shift']());}}}(_0x4da3,0x3bddc));function _0x4da3(){var _0xab4837=['6wiEJYi','11tXxDCE','onAddBuddyNeedVerify','onBuddyReqChange','370132ZvdxgM','154932njpEFz','23SpwXiz','32206wQeyHu','91nMtVLp','1930920ruWvgf','3284Bdtgzo','onBuddyListChange','onAddMeSettingChanged','onBlockChanged','2927817qaYWJQ','onNickUpdated','2241255PDgwLR','48odfIAn','onBuddyRemarkUpdated','1164BDeXzy','onDoubtBuddyReqChange','onDelBatchBuddyInfos','onCheckBuddySettingResult'];_0x4da3=function(){return _0xab4837;};return _0x4da3();}export class BuddyListener{[_0x5e2e93(0xdb)](_0x135116){}[_0x5e2e93(0xe5)](_0x204191){}['onAvatarUrlUpdated'](_0x44c0e9){}[_0x5e2e93(0xe6)](_0x565b23){}['onBuddyDetailInfoChange'](_0x9110f9){}['onBuddyInfoChange'](_0x370f23){}[_0x5e2e93(0xe4)](_0x5e48c9){}[_0x5e2e93(0xd4)](_0x5b2893){}[_0x5e2e93(0xdc)](_0x2d589f){}['onBuddyReqUnreadCntChange'](_0x343d8c){}[_0x5e2e93(0xd8)](_0x16b0c8){}[_0x5e2e93(0xd7)](_0x4bc251){}[_0x5e2e93(0xd6)](_0x47910f){}['onDoubtBuddyReqUnreadNumChange'](_0x52844f){}[_0x5e2e93(0xe8)](_0xf52363){}['onSmartInfos'](_0x5bb423){}['onSpacePermissionInfos'](_0x586f7b){}}
var _0x5b9891=_0x3d05;function _0x3d05(_0x587add,_0x209cf7){var _0x1f0d7e=_0x1f0d();return _0x3d05=function(_0x3d058c,_0x36510b){_0x3d058c=_0x3d058c-0xa6;var _0x29758b=_0x1f0d7e[_0x3d058c];return _0x29758b;},_0x3d05(_0x587add,_0x209cf7);}(function(_0x34f8f2,_0x32c19e){var _0x594364=_0x3d05,_0x1337d3=_0x34f8f2();while(!![]){try{var _0x12cb4a=parseInt(_0x594364(0xb2))/0x1*(parseInt(_0x594364(0xaa))/0x2)+parseInt(_0x594364(0xb1))/0x3*(-parseInt(_0x594364(0xb6))/0x4)+-parseInt(_0x594364(0xb3))/0x5*(parseInt(_0x594364(0xa7))/0x6)+parseInt(_0x594364(0xb4))/0x7+parseInt(_0x594364(0xb8))/0x8*(-parseInt(_0x594364(0xa8))/0x9)+parseInt(_0x594364(0xb5))/0xa+parseInt(_0x594364(0xb9))/0xb;if(_0x12cb4a===_0x32c19e)break;else _0x1337d3['push'](_0x1337d3['shift']());}catch(_0x2755e4){_0x1337d3['push'](_0x1337d3['shift']());}}}(_0x1f0d,0x6415e));function _0x1f0d(){var _0x4056e1=['4116588EFQKhQ','7902060xWIsSQ','2387680LihvQH','onDelBatchBuddyInfos','59672VXOAtG','40601qnwQuW','onBuddyListChange','825270KDtxTf','864ucVOkh','onBuddyDetailInfoChange','478498MSIufy','onDoubtBuddyReqChange','onSpacePermissionInfos','onBlockChanged','onCheckBuddySettingResult','onBuddyRemarkUpdated','onNickUpdated','3wKtJyx','2ygaFbT','5WDXBJD'];_0x1f0d=function(){return _0x4056e1;};return _0x1f0d();}export class BuddyListener{['onAddBuddyNeedVerify'](_0x51b00b){}['onAddMeSettingChanged'](_0x3eaf15){}['onAvatarUrlUpdated'](_0x112f10){}[_0x5b9891(0xad)](_0x43ce56){}[_0x5b9891(0xa9)](_0x2204d2){}['onBuddyInfoChange'](_0x422691){}[_0x5b9891(0xa6)](_0x65f17a){}[_0x5b9891(0xaf)](_0x907d3f){}['onBuddyReqChange'](_0x548cd8){}['onBuddyReqUnreadCntChange'](_0x117373){}[_0x5b9891(0xae)](_0x26e718){}[_0x5b9891(0xb7)](_0x374db5){}[_0x5b9891(0xab)](_0x3ec022){}['onDoubtBuddyReqUnreadNumChange'](_0x386cb3){}[_0x5b9891(0xb0)](_0x499c3f){}['onSmartInfos'](_0x24db0d){}[_0x5b9891(0xac)](_0x5f16fa){}}

View File

@@ -1 +1 @@
var _0x2d54cf=_0x2959;(function(_0x167b23,_0x6f61fd){var _0x1cc876=_0x2959,_0x408d95=_0x167b23();while(!![]){try{var _0x5dfea5=-parseInt(_0x1cc876(0x1dc))/0x1+-parseInt(_0x1cc876(0x1e4))/0x2+parseInt(_0x1cc876(0x1e0))/0x3+parseInt(_0x1cc876(0x1df))/0x4+-parseInt(_0x1cc876(0x1e3))/0x5+-parseInt(_0x1cc876(0x1dd))/0x6+parseInt(_0x1cc876(0x1de))/0x7*(parseInt(_0x1cc876(0x1e6))/0x8);if(_0x5dfea5===_0x6f61fd)break;else _0x408d95['push'](_0x408d95['shift']());}catch(_0x3c571f){_0x408d95['push'](_0x408d95['shift']());}}}(_0x1319,0xc2e14));function _0x2959(_0xb20dd4,_0x52156a){var _0x131976=_0x1319();return _0x2959=function(_0x2959e3,_0x23de0a){_0x2959e3=_0x2959e3-0x1dc;var _0x43ae27=_0x131976[_0x2959e3];return _0x43ae27;},_0x2959(_0xb20dd4,_0x52156a);}export class KernelFileAssistantListener{[_0x2d54cf(0x1e2)](..._0x3ab31e){}['onSessionListChanged'](..._0x5e3fe4){}[_0x2d54cf(0x1e1)](..._0x58a28b){}[_0x2d54cf(0x1e5)](..._0x105507){}['onFileSearch'](..._0x49457d){}}function _0x1319(){var _0x28da1b=['1289285OCwuYk','4177734lSXatx','112fpnEqa','6279188lRgRGj','3238230FViXtW','onSessionChanged','onFileStatusChanged','1542615nIvDiJ','1012036voICmL','onFileListChanged','474568sPSKXC'];_0x1319=function(){return _0x28da1b;};return _0x1319();}
var _0x499213=_0x44ef;function _0x2201(){var _0x4ea2bb=['onFileStatusChanged','8OqcNAg','50295JZxcPz','onSessionChanged','95150xMjizq','5193nhTzWS','4988KmhBvA','25356xJbTSc','onFileSearch','423996KejVAj','onFileListChanged','740RvXGMy','207420NCHJBO','366JrRNgG','5XDVqgb'];_0x2201=function(){return _0x4ea2bb;};return _0x2201();}function _0x44ef(_0x1b855d,_0x4b1afc){var _0x220165=_0x2201();return _0x44ef=function(_0x44ef48,_0x1c030a){_0x44ef48=_0x44ef48-0x12a;var _0x7cc523=_0x220165[_0x44ef48];return _0x7cc523;},_0x44ef(_0x1b855d,_0x4b1afc);}(function(_0x57e28f,_0x3325ae){var _0x572a35=_0x44ef,_0x14e0e0=_0x57e28f();while(!![]){try{var _0x952b8e=-parseInt(_0x572a35(0x132))/0x1+-parseInt(_0x572a35(0x137))/0x2+-parseInt(_0x572a35(0x138))/0x3*(-parseInt(_0x572a35(0x131))/0x4)+-parseInt(_0x572a35(0x12a))/0x5*(-parseInt(_0x572a35(0x134))/0x6)+-parseInt(_0x572a35(0x12d))/0x7*(parseInt(_0x572a35(0x12c))/0x8)+parseInt(_0x572a35(0x130))/0x9*(parseInt(_0x572a35(0x136))/0xa)+-parseInt(_0x572a35(0x12f))/0xb;if(_0x952b8e===_0x3325ae)break;else _0x14e0e0['push'](_0x14e0e0['shift']());}catch(_0x18ba98){_0x14e0e0['push'](_0x14e0e0['shift']());}}}(_0x2201,0x1d715));export class KernelFileAssistantListener{[_0x499213(0x12b)](..._0x52105e){}['onSessionListChanged'](..._0xc4083d){}[_0x499213(0x12e)](..._0x316788){}[_0x499213(0x135)](..._0x20a56e){}[_0x499213(0x133)](..._0x986a90){}}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
var _0x53d0e4=_0x3888;function _0x3888(_0x248fd0,_0x5426cb){var _0x474825=_0x4748();return _0x3888=function(_0x388829,_0x412e9a){_0x388829=_0x388829-0x1f1;var _0x1886b3=_0x474825[_0x388829];return _0x1886b3;},_0x3888(_0x248fd0,_0x5426cb);}function _0x4748(){var _0x41bf40=['282678SlalCz','OnConfirmUnusualDeviceFailed','59108GqGOcl','onQRCodeSessionQuickLoginFailed','7421904lloxjm','2036065dMeRIK','11707443IlCftj','onUserLoggedIn','4qMvWTc','onQRCodeSessionUserScaned','8bSwjQO','9545774dLByrK','onQQLoginNumLimited','275615uCBCEy','onQRCodeLoginPollingStarted','onQRCodeSessionFailed','820vTzfJY','onLogoutSucceed','156edYQcT','onQRCodeGetPicture','onLoginConnecting','onLogoutFailed'];_0x4748=function(){return _0x41bf40;};return _0x4748();}(function(_0x1de079,_0x413380){var _0x427085=_0x3888,_0x2227f8=_0x1de079();while(!![]){try{var _0x25221e=parseInt(_0x427085(0x206))/0x1+parseInt(_0x427085(0x1fb))/0x2*(-parseInt(_0x427085(0x1f5))/0x3)+-parseInt(_0x427085(0x201))/0x4*(-parseInt(_0x427085(0x1fe))/0x5)+parseInt(_0x427085(0x1fd))/0x6+parseInt(_0x427085(0x204))/0x7+parseInt(_0x427085(0x203))/0x8*(parseInt(_0x427085(0x1ff))/0x9)+-parseInt(_0x427085(0x1f3))/0xa*(parseInt(_0x427085(0x1f9))/0xb);if(_0x25221e===_0x413380)break;else _0x2227f8['push'](_0x2227f8['shift']());}catch(_0x4b52f7){_0x2227f8['push'](_0x2227f8['shift']());}}}(_0x4748,0xe58f5));export class LoginListener{['onLoginConnected'](..._0x255e24){}['onLoginDisConnected'](..._0x424005){}[_0x53d0e4(0x1f7)](..._0x4437a5){}[_0x53d0e4(0x1f6)](_0x1689d3){}[_0x53d0e4(0x1f1)](..._0x3c4b1b){}[_0x53d0e4(0x202)](..._0x29ef4a){}['onQRCodeLoginSucceed'](_0x13c2d0){}[_0x53d0e4(0x1f2)](..._0x1d8f62){}['onLoginFailed'](..._0x6c6359){}[_0x53d0e4(0x1f4)](..._0x2e8fee){}[_0x53d0e4(0x1f8)](..._0x646558){}[_0x53d0e4(0x200)](..._0x2b42e7){}[_0x53d0e4(0x1fc)](..._0x3b3707){}['onPasswordLoginFailed'](..._0x4c7b87){}[_0x53d0e4(0x1fa)](..._0x3a2a91){}[_0x53d0e4(0x205)](..._0x2bd96c){}['onLoginState'](..._0x1cb3bb){}}
var _0x491cb8=_0x14fd;(function(_0x3c1e3a,_0x268bef){var _0x45e94e=_0x14fd,_0x454340=_0x3c1e3a();while(!![]){try{var _0x5ddaa3=parseInt(_0x45e94e(0x1b2))/0x1+-parseInt(_0x45e94e(0x1bb))/0x2+parseInt(_0x45e94e(0x1b9))/0x3+-parseInt(_0x45e94e(0x1ba))/0x4+parseInt(_0x45e94e(0x1c4))/0x5+-parseInt(_0x45e94e(0x1c0))/0x6*(-parseInt(_0x45e94e(0x1c2))/0x7)+-parseInt(_0x45e94e(0x1b3))/0x8;if(_0x5ddaa3===_0x268bef)break;else _0x454340['push'](_0x454340['shift']());}catch(_0x19aab3){_0x454340['push'](_0x454340['shift']());}}}(_0x902a,0xd3c5b));function _0x14fd(_0x46ae82,_0x35d7b5){var _0x902a1f=_0x902a();return _0x14fd=function(_0x14fdb9,_0x41f0f7){_0x14fdb9=_0x14fdb9-0x1b1;var _0x20c7fd=_0x902a1f[_0x14fdb9];return _0x20c7fd;},_0x14fd(_0x46ae82,_0x35d7b5);}function _0x902a(){var _0x1acda1=['onLoginConnected','onLoginState','onLogoutSucceed','6XbrTxS','onLoginFailed','10333267PnYMgw','onQQLoginNumLimited','8080405xdFkpu','onQRCodeLoginPollingStarted','onQRCodeGetPicture','1457662hGKJRT','32821968gSasfy','OnConfirmUnusualDeviceFailed','onUserLoggedIn','onQRCodeSessionFailed','onLogoutFailed','onQRCodeSessionQuickLoginFailed','2103327gNudpf','1037404IKpTeR','43034EDzaxc','onLoginDisConnected'];_0x902a=function(){return _0x1acda1;};return _0x902a();}export class LoginListener{[_0x491cb8(0x1bd)](..._0x200ab1){}[_0x491cb8(0x1bc)](..._0x388694){}['onLoginConnecting'](..._0x5469e4){}[_0x491cb8(0x1b1)](_0xc5a17c){}[_0x491cb8(0x1c5)](..._0x538406){}['onQRCodeSessionUserScaned'](..._0x28abc){}['onQRCodeLoginSucceed'](_0x11427e){}[_0x491cb8(0x1b6)](..._0x3d91e3){}[_0x491cb8(0x1c1)](..._0x2e7d12){}[_0x491cb8(0x1bf)](..._0x508986){}[_0x491cb8(0x1b7)](..._0x2a793b){}[_0x491cb8(0x1b5)](..._0x3b0258){}[_0x491cb8(0x1b8)](..._0x56cbc8){}['onPasswordLoginFailed'](..._0x592aec){}[_0x491cb8(0x1b4)](..._0x491932){}[_0x491cb8(0x1c3)](..._0x42bdc0){}[_0x491cb8(0x1be)](..._0x4119b4){}}

View File

@@ -1 +1 @@
var _0x2858fb=_0x149e;function _0x2898(){var _0x4f12fa=['onMsgSecurityNotify','onRedTouchChanged','3603048RSwvIn','onRecvUDCFlag','onFeedEventUpdate','onGuildNotificationAbstractUpdate','onUserSecQualityChanged','onTempChatInfoUpdate','onUserChannelTabStatusChanged','onMsgWithRichLinkInfoUpdate','onMsgInfoListAdd','244612aGGHpF','onRichMediaDownloadComplete','onRichMediaProgerssUpdate','onSendMsgError','onGroupGuildUpdate','onMsgRecall','onNtFirstViewMsgSyncEnd','onMsgSettingUpdate','onlineStatusSmallIconDownloadPush','onMsgQRCodeStatusChanged','onEmojiDownloadComplete','onGroupTransferInfoAdd','onCustomWithdrawConfigUpdate','onRecvSysMsg','onRecvGroupGuildFlag','203067MXOKNQ','onLogLevelChanged','onMsgAbstractUpdate','onKickedOffLine','onGroupTransferInfoUpdate','2NYZuzX','onRecvMsgSvrRspTransInfo','onHitCsRelatedEmojiResult','onSysMsgNotification','onRecvS2CMsg','onInputStatusPush','4817340hCfUbo','onEmojiResourceUpdate','onFirstViewGroupGuildMapping','onRichMediaUploadComplete','onImportOldDbProgressUpdate','onBroadcastHelperDownloadComplete','onLineDev','onBroadcastHelperProgerssUpdate','onContactUnreadCntUpdate','20vkWDrS','onGuildInteractiveUpdate','onGroupFileInfoUpdate','onNtMsgSyncEnd','810TfTEua','onNtMsgSyncStart','onRecvOnlineFileMsg','110889TkRyOP','onGroupFileInfoAdd','onFileMsgCome','onUnreadCntAfterFirstView','onlineStatusBigIconDownloadPush','onDraftUpdate','7469BpvuyL','onHitRelatedEmojiResult','onMsgBoxChanged','onMsgEventListUpdate','6170544mOWlqq'];_0x2898=function(){return _0x4f12fa;};return _0x2898();}function _0x149e(_0x5a357b,_0x483adb){var _0x289839=_0x2898();return _0x149e=function(_0x149eda,_0x1c076e){_0x149eda=_0x149eda-0x144;var _0x5cdacf=_0x289839[_0x149eda];return _0x5cdacf;},_0x149e(_0x5a357b,_0x483adb);}(function(_0x221f65,_0x5d0a85){var _0x41a607=_0x149e,_0x49487b=_0x221f65();while(!![]){try{var _0x150708=parseInt(_0x41a607(0x148))/0x1*(parseInt(_0x41a607(0x15c))/0x2)+parseInt(_0x41a607(0x157))/0x3*(parseInt(_0x41a607(0x16b))/0x4)+-parseInt(_0x41a607(0x162))/0x5+-parseInt(_0x41a607(0x17f))/0x6+-parseInt(_0x41a607(0x178))/0x7+parseInt(_0x41a607(0x17c))/0x8+parseInt(_0x41a607(0x172))/0x9*(parseInt(_0x41a607(0x16f))/0xa);if(_0x150708===_0x5d0a85)break;else _0x49487b['push'](_0x49487b['shift']());}catch(_0x1cb5e9){_0x49487b['push'](_0x49487b['shift']());}}}(_0x2898,0xc0385));export class MsgListener{['onAddSendMsg'](_0x5d0e4d){}[_0x2858fb(0x167)](_0x204799){}['onBroadcastHelperProgressUpdate'](_0x5a89a2){}['onChannelFreqLimitInfoUpdate'](_0xdefa11,_0x2ae40b,_0x2b7fce){}[_0x2858fb(0x16a)](_0x258ae2){}[_0x2858fb(0x154)](_0xf71886){}[_0x2858fb(0x177)](_0x303889,_0x5f48b6,_0x43d78d){}[_0x2858fb(0x152)](_0x8acef1){}[_0x2858fb(0x163)](_0x756a19){}[_0x2858fb(0x181)](_0x3d468c){}[_0x2858fb(0x174)](_0x58b740){}['onFirstViewDirectMsgUpdate'](_0x2ccc78){}[_0x2858fb(0x164)](_0x2889fb){}['onGrabPasswordRedBag'](_0x28c2c6,_0x5df018,_0x2b054a,_0x31bc42,_0x24de34){}[_0x2858fb(0x173)](_0xc4855b){}[_0x2858fb(0x16d)](_0x5c5961){}[_0x2858fb(0x14c)](_0x1fae80){}[_0x2858fb(0x153)](_0x59c877){}[_0x2858fb(0x15b)](_0x1e691d){}[_0x2858fb(0x16c)](_0x454c04){}['onGuildMsgAbFlagChanged'](_0x132d16){}[_0x2858fb(0x182)](_0x2e92d2){}[_0x2858fb(0x15e)](_0x350db7){}['onHitEmojiKeywordResult'](_0x14f394){}[_0x2858fb(0x179)](_0x2dc21a){}[_0x2858fb(0x166)](_0x372ee2){}[_0x2858fb(0x161)](_0x45687f){}[_0x2858fb(0x15a)](_0x5c27f8){}[_0x2858fb(0x168)](_0x55505e){}[_0x2858fb(0x158)](_0x5b6a12){}[_0x2858fb(0x159)](_0x19fe0e){}[_0x2858fb(0x17a)](_0x66adef){}['onMsgDelete'](_0x19292d,_0x307c47){}[_0x2858fb(0x17b)](_0x45da85){}[_0x2858fb(0x147)](_0x580590){}['onMsgInfoListUpdate'](_0x5e7f7c){}[_0x2858fb(0x151)](_0x5d78df){}[_0x2858fb(0x14d)](_0x251d43,_0xb13e27,_0xd59f53){}[_0x2858fb(0x17d)](_0x43760d){}[_0x2858fb(0x14f)](_0x3b18c2){}[_0x2858fb(0x14e)](){}[_0x2858fb(0x16e)](){}[_0x2858fb(0x170)](){}['onReadFeedEventUpdate'](_0x424f95){}[_0x2858fb(0x156)](_0x14e8c3){}['onRecvMsg'](_0xfcdc9f){}[_0x2858fb(0x15d)](_0x461def,_0x5c1d67,_0xe6bad7,_0x5ed7e8,_0xe71919,_0x42eb9f){}[_0x2858fb(0x171)](_0x422bd0){}[_0x2858fb(0x160)](_0x5b4187){}[_0x2858fb(0x155)](_0x3aa34c){}[_0x2858fb(0x180)](_0x31f900){}[_0x2858fb(0x149)](_0x576141){}[_0x2858fb(0x14a)](_0x453f3c){}[_0x2858fb(0x165)](_0x1f0452){}['onSearchGroupFileInfoUpdate'](_0x288219){}[_0x2858fb(0x14b)](_0x319f4a,_0x155e36,_0xa3b6c5,_0xa577b0){}[_0x2858fb(0x15f)](_0x516865,_0x207065,_0x45fddd,_0x4d8d00){}[_0x2858fb(0x144)](_0x228f4f){}[_0x2858fb(0x175)](_0xd5609e){}['onUnreadCntUpdate'](_0x415bd2){}[_0x2858fb(0x145)](_0x11d029){}['onUserOnlineStatusChanged'](_0x5c82b2){}['onUserTabStatusChanged'](_0x3389d0){}[_0x2858fb(0x176)](_0x481161,_0x5edf86,_0x5f2eee){}[_0x2858fb(0x150)](_0x3e6399,_0x48247,_0x5bf46a){}[_0x2858fb(0x183)](..._0x51c9e2){}[_0x2858fb(0x146)](..._0x212a11){}[_0x2858fb(0x17e)](..._0x23cf3d){}[_0x2858fb(0x169)](..._0x1c93c3){}}
var _0x9390b7=_0x4e0a;function _0x588c(){var _0x3bf40c=['onMsgSettingUpdate','onRecvUDCFlag','onFirstViewGroupGuildMapping','onTempChatInfoUpdate','onUnreadCntAfterFirstView','onUnreadCntUpdate','6474OyEprl','onEmojiResourceUpdate','onMsgWithRichLinkInfoUpdate','onMsgAbstractUpdate','onKickedOffLine','onRecvGroupGuildFlag','onHitCsRelatedEmojiResult','12gaHbcn','5TJptRv','3252wLmOPx','onRecvMsgSvrRspTransInfo','onFileMsgCome','onContactUnreadCntUpdate','onGrabPasswordRedBag','onLogLevelChanged','onSearchGroupFileInfoUpdate','onUserOnlineStatusChanged','onUserChannelTabStatusChanged','onRedTouchChanged','onRichMediaProgerssUpdate','onGuildNotificationAbstractUpdate','onEmojiDownloadComplete','onSysMsgNotification','onGuildInteractiveUpdate','onBroadcastHelperProgerssUpdate','2343177AOcHBM','onLineDev','onGroupTransferInfoAdd','16FWtSBe','4579290fiAbwy','3822rGQCye','onAddSendMsg','onReadFeedEventUpdate','onBroadcastHelperDownloadComplete','onSendMsgError','onFirstViewDirectMsgUpdate','onImportOldDbProgressUpdate','onlineStatusSmallIconDownloadPush','onGroupTransferInfoUpdate','onRichMediaDownloadComplete','onlineStatusBigIconDownloadPush','onMsgInfoListAdd','onRecvS2CMsg','onInputStatusPush','onUserTabStatusChanged','onUserSecQualityChanged','onMsgBoxChanged','onNtMsgSyncStart','onMsgDelete','3464qtczWu','67ivdaip','onRecvMsg','onRecvOnlineFileMsg','14848537YuDlVl','onGroupGuildUpdate','onRichMediaUploadComplete','1797018nCiDGq','onChannelFreqLimitInfoUpdate','onNtFirstViewMsgSyncEnd'];_0x588c=function(){return _0x3bf40c;};return _0x588c();}function _0x4e0a(_0x34f23c,_0x546e83){var _0x588cb5=_0x588c();return _0x4e0a=function(_0x4e0a57,_0x6c950c){_0x4e0a57=_0x4e0a57-0x89;var _0x14c59c=_0x588cb5[_0x4e0a57];return _0x14c59c;},_0x4e0a(_0x34f23c,_0x546e83);}(function(_0xc77cef,_0x3a2f5){var _0x49cc86=_0x4e0a,_0x386fc1=_0xc77cef();while(!![]){try{var _0x2a0163=parseInt(_0x49cc86(0xb4))/0x1*(parseInt(_0x49cc86(0xc3))/0x2)+-parseInt(_0x49cc86(0x8b))/0x3*(parseInt(_0x49cc86(0x9e))/0x4)+-parseInt(_0x49cc86(0x8a))/0x5*(parseInt(_0x49cc86(0xba))/0x6)+parseInt(_0x49cc86(0xa0))/0x7*(-parseInt(_0x49cc86(0xb3))/0x8)+-parseInt(_0x49cc86(0x9b))/0x9+-parseInt(_0x49cc86(0x9f))/0xa+-parseInt(_0x49cc86(0xb7))/0xb*(-parseInt(_0x49cc86(0x89))/0xc);if(_0x2a0163===_0x3a2f5)break;else _0x386fc1['push'](_0x386fc1['shift']());}catch(_0x268cf8){_0x386fc1['push'](_0x386fc1['shift']());}}}(_0x588c,0x4b3ef));export class MsgListener{[_0x9390b7(0xa1)](_0x40ccb9){}[_0x9390b7(0xa3)](_0x4b5501){}['onBroadcastHelperProgressUpdate'](_0x9b8bfd){}[_0x9390b7(0xbb)](_0xa348e7,_0x5e7ad7,_0x11a61e){}[_0x9390b7(0x8e)](_0x31fbba){}['onCustomWithdrawConfigUpdate'](_0x423b8d){}['onDraftUpdate'](_0x4fc137,_0x20b17f,_0x3ddd91){}[_0x9390b7(0x97)](_0x1d5e80){}[_0x9390b7(0xc4)](_0x3b53cf){}['onFeedEventUpdate'](_0x507733){}[_0x9390b7(0x8d)](_0x3d3f95){}[_0x9390b7(0xa5)](_0x27f3db){}[_0x9390b7(0xbf)](_0x41fb82){}[_0x9390b7(0x8f)](_0xee7953,_0x2ef435,_0x2cb405,_0x7859f4,_0x11a5ee){}['onGroupFileInfoAdd'](_0x4d2d5d){}['onGroupFileInfoUpdate'](_0x286fc4){}[_0x9390b7(0xb8)](_0x5c0f61){}[_0x9390b7(0x9d)](_0x20d11c){}[_0x9390b7(0xa8)](_0x5827b4){}[_0x9390b7(0x99)](_0x2d0f94){}['onGuildMsgAbFlagChanged'](_0x4212f6){}[_0x9390b7(0x96)](_0x114388){}[_0x9390b7(0xc9)](_0xf532ab){}['onHitEmojiKeywordResult'](_0x45eafa){}['onHitRelatedEmojiResult'](_0xbe5472){}[_0x9390b7(0xa6)](_0x478bb0){}[_0x9390b7(0xad)](_0x16e074){}[_0x9390b7(0xc7)](_0xe2ce6e){}[_0x9390b7(0x9c)](_0x5a7968){}[_0x9390b7(0x90)](_0x54d25d){}[_0x9390b7(0xc6)](_0x513b47){}[_0x9390b7(0xb0)](_0x19bc04){}[_0x9390b7(0xb2)](_0x98ce92,_0xf57e0c){}['onMsgEventListUpdate'](_0x5def75){}[_0x9390b7(0xab)](_0x1be283){}['onMsgInfoListUpdate'](_0x4a4ca6){}['onMsgQRCodeStatusChanged'](_0x138bb5){}['onMsgRecall'](_0x30c4f8,_0x9a811e,_0x41e388){}['onMsgSecurityNotify'](_0x331dd){}[_0x9390b7(0xbd)](_0x52de0f){}[_0x9390b7(0xbc)](){}['onNtMsgSyncEnd'](){}[_0x9390b7(0xb1)](){}[_0x9390b7(0xa2)](_0x201a76){}[_0x9390b7(0xc8)](_0x4bd76f){}[_0x9390b7(0xb5)](_0x12a995){}[_0x9390b7(0x8c)](_0x489154,_0x53ba94,_0x3d6df0,_0xbf186d,_0x540673,_0x2d3a46){}[_0x9390b7(0xb6)](_0x5073e3){}[_0x9390b7(0xac)](_0x40fd83){}['onRecvSysMsg'](_0x48a35f){}[_0x9390b7(0xbe)](_0x372646){}[_0x9390b7(0xa9)](_0x29b45e){}[_0x9390b7(0x95)](_0x1101bd){}[_0x9390b7(0xb9)](_0x3e5f92){}[_0x9390b7(0x91)](_0x389e39){}[_0x9390b7(0xa4)](_0x27c695,_0x47369e,_0x5d23d9,_0x53c770){}[_0x9390b7(0x98)](_0xfe37f5,_0x1ed604,_0x54158c,_0x157aab){}[_0x9390b7(0xc0)](_0x48391a){}[_0x9390b7(0xc1)](_0x5d7b31){}[_0x9390b7(0xc2)](_0x2e7da7){}[_0x9390b7(0x93)](_0x2b2cd8){}[_0x9390b7(0x92)](_0x27c6c9){}[_0x9390b7(0xae)](_0x34a930){}[_0x9390b7(0xaa)](_0x16589a,_0xafa2f1,_0x7de5ce){}[_0x9390b7(0xa7)](_0x331529,_0x5aa5d1,_0x13ac8a){}[_0x9390b7(0xaf)](..._0x342701){}[_0x9390b7(0xc5)](..._0xa2f3b8){}[_0x9390b7(0x94)](..._0x55269d){}[_0x9390b7(0x9a)](..._0xfdcac4){}}

View File

@@ -1 +1 @@
var _0x26cb96=_0x4b2f;(function(_0x2e111b,_0x56d2e0){var _0x258dd7=_0x4b2f,_0x50e740=_0x2e111b();while(!![]){try{var _0x4e5c7f=parseInt(_0x258dd7(0x1d0))/0x1+parseInt(_0x258dd7(0x1d7))/0x2*(-parseInt(_0x258dd7(0x1cc))/0x3)+-parseInt(_0x258dd7(0x1cf))/0x4+-parseInt(_0x258dd7(0x1d1))/0x5*(parseInt(_0x258dd7(0x1cd))/0x6)+-parseInt(_0x258dd7(0x1cb))/0x7+-parseInt(_0x258dd7(0x1d3))/0x8+-parseInt(_0x258dd7(0x1d2))/0x9*(-parseInt(_0x258dd7(0x1ce))/0xa);if(_0x4e5c7f===_0x56d2e0)break;else _0x50e740['push'](_0x50e740['shift']());}catch(_0x44e4b3){_0x50e740['push'](_0x50e740['shift']());}}}(_0x3349,0xacf85));function _0x4b2f(_0x1b7573,_0x142190){var _0x334930=_0x3349();return _0x4b2f=function(_0x4b2f97,_0x2e6988){_0x4b2f97=_0x4b2f97-0x1cb;var _0x3a02ed=_0x334930[_0x4b2f97];return _0x3a02ed;},_0x4b2f(_0x1b7573,_0x142190);}export class ProfileListener{[_0x26cb96(0x1d6)](..._0x1fb431){}[_0x26cb96(0x1d4)](_0x4fe7ab){}['onStatusUpdate'](..._0x57a2f6){}['onSelfStatusChanged'](..._0x2c7701){}[_0x26cb96(0x1d5)](..._0x524af8){}}function _0x3349(){var _0x4cf5d3=['89928DsSQwf','9214048tiErhG','onProfileDetailInfoChanged','onStrangerRemarkChanged','onProfileSimpleChanged','34084ACQMRl','1566600ZcQina','111cERRNu','6iykDXv','3070QKDabH','1213032JHXqqH','997818PvComQ','5237545NyEzET'];_0x3349=function(){return _0x4cf5d3;};return _0x3349();}
var _0x38ae40=_0x55ea;function _0x55ea(_0x2408e5,_0x5961bd){var _0x20fd82=_0x20fd();return _0x55ea=function(_0x55ead3,_0x4f2052){_0x55ead3=_0x55ead3-0x105;var _0x33b7ae=_0x20fd82[_0x55ead3];return _0x33b7ae;},_0x55ea(_0x2408e5,_0x5961bd);}(function(_0x27650a,_0x11ed88){var _0x25755b=_0x55ea,_0x47e335=_0x27650a();while(!![]){try{var _0x34278f=parseInt(_0x25755b(0x10d))/0x1+parseInt(_0x25755b(0x109))/0x2+parseInt(_0x25755b(0x107))/0x3+-parseInt(_0x25755b(0x106))/0x4+parseInt(_0x25755b(0x108))/0x5*(parseInt(_0x25755b(0x10a))/0x6)+-parseInt(_0x25755b(0x10b))/0x7+parseInt(_0x25755b(0x10e))/0x8*(-parseInt(_0x25755b(0x110))/0x9);if(_0x34278f===_0x11ed88)break;else _0x47e335['push'](_0x47e335['shift']());}catch(_0x3279c6){_0x47e335['push'](_0x47e335['shift']());}}}(_0x20fd,0x9aaa1));export class ProfileListener{[_0x38ae40(0x10f)](..._0x10e36e){}[_0x38ae40(0x10c)](_0x187127){}['onStatusUpdate'](..._0x5361eb){}['onSelfStatusChanged'](..._0x1b1e9e){}[_0x38ae40(0x105)](..._0x1b44f1){}}function _0x20fd(){var _0x5b3633=['6FQttxL','6167994xMQEkl','onProfileDetailInfoChanged','1256544lGhMhH','2414944IwfOFz','onProfileSimpleChanged','27PPpPqB','onStrangerRemarkChanged','4811488eMVzFa','859428HHiGmK','5154605lCenpg','2098364cJvjhC'];_0x20fd=function(){return _0x5b3633;};return _0x20fd();}

View File

@@ -1 +1 @@
var _0x380b2e=_0x7275;(function(_0x46856b,_0x5d45f3){var _0xea48c3=_0x7275,_0x16bf3f=_0x46856b();while(!![]){try{var _0x5ed2b9=-parseInt(_0xea48c3(0x195))/0x1*(-parseInt(_0xea48c3(0x198))/0x2)+-parseInt(_0xea48c3(0x196))/0x3+-parseInt(_0xea48c3(0x19a))/0x4*(-parseInt(_0xea48c3(0x19b))/0x5)+parseInt(_0xea48c3(0x197))/0x6+-parseInt(_0xea48c3(0x1a0))/0x7*(parseInt(_0xea48c3(0x199))/0x8)+-parseInt(_0xea48c3(0x19f))/0x9*(parseInt(_0xea48c3(0x19e))/0xa)+parseInt(_0xea48c3(0x193))/0xb*(parseInt(_0xea48c3(0x19d))/0xc);if(_0x5ed2b9===_0x5d45f3)break;else _0x16bf3f['push'](_0x16bf3f['shift']());}catch(_0x312df4){_0x16bf3f['push'](_0x16bf3f['shift']());}}}(_0x37bd,0xe7b2d));export class KernelRobotListener{[_0x380b2e(0x19c)](..._0x119c83){}['onRobotListChanged'](..._0x3fa342){}[_0x380b2e(0x194)](..._0x24d8fb){}}function _0x7275(_0x25247f,_0x7d1c0a){var _0x37bd87=_0x37bd();return _0x7275=function(_0x7275f4,_0x2adac6){_0x7275f4=_0x7275f4-0x193;var _0x467203=_0x37bd87[_0x7275f4];return _0x467203;},_0x7275(_0x25247f,_0x7d1c0a);}function _0x37bd(){var _0x31a4f8=['8870477GAyoME','onRobotProfileChanged','9233EFgZyo','809331DKVFst','3552468mYlSbP','10MwKOMB','24sIUkSQ','2369356KwWFyY','5bCOSNU','onRobotFriendListChanged','24SxCVXO','9656140PbhRqz','9xfBFib','1537592ungsWh'];_0x37bd=function(){return _0x31a4f8;};return _0x37bd();}
var _0x5703af=_0x3830;function _0x3830(_0x3fedb3,_0x227fd4){var _0x1ae708=_0x1ae7();return _0x3830=function(_0x383021,_0x17684c){_0x383021=_0x383021-0x1ce;var _0x3da525=_0x1ae708[_0x383021];return _0x3da525;},_0x3830(_0x3fedb3,_0x227fd4);}(function(_0x383bdb,_0x254c5b){var _0x2549c6=_0x3830,_0x2afc07=_0x383bdb();while(!![]){try{var _0x37ba3d=-parseInt(_0x2549c6(0x1da))/0x1*(parseInt(_0x2549c6(0x1d3))/0x2)+parseInt(_0x2549c6(0x1d9))/0x3+parseInt(_0x2549c6(0x1d8))/0x4+-parseInt(_0x2549c6(0x1d0))/0x5+-parseInt(_0x2549c6(0x1d4))/0x6*(parseInt(_0x2549c6(0x1d6))/0x7)+parseInt(_0x2549c6(0x1cf))/0x8*(parseInt(_0x2549c6(0x1ce))/0x9)+-parseInt(_0x2549c6(0x1d1))/0xa*(-parseInt(_0x2549c6(0x1d5))/0xb);if(_0x37ba3d===_0x254c5b)break;else _0x2afc07['push'](_0x2afc07['shift']());}catch(_0x521d8b){_0x2afc07['push'](_0x2afc07['shift']());}}}(_0x1ae7,0x76d63));function _0x1ae7(){var _0x13cd98=['2452316kvUQPE','2192853zInwuq','73xbeImi','onRobotProfileChanged','1251iioKzp','10632cPuvns','902990FFcmUu','1210NgcxOW','onRobotFriendListChanged','4946wTjcwo','2104710bHKsGr','1881rBMoPf','14wktppg','onRobotListChanged'];_0x1ae7=function(){return _0x13cd98;};return _0x1ae7();}export class KernelRobotListener{[_0x5703af(0x1d2)](..._0xc56c22){}[_0x5703af(0x1d7)](..._0x4a1127){}[_0x5703af(0x1db)](..._0x1ac527){}}

View File

@@ -1 +1 @@
var _0x5a32ff=_0x74ad;function _0x74ad(_0x15db47,_0x5f3d55){var _0x48ded2=_0x48de();return _0x74ad=function(_0x74ad61,_0x2f841a){_0x74ad61=_0x74ad61-0x160;var _0x30326b=_0x48ded2[_0x74ad61];return _0x30326b;},_0x74ad(_0x15db47,_0x5f3d55);}(function(_0x26569f,_0x3457cb){var _0x3d8d94=_0x74ad,_0x18f6ac=_0x26569f();while(!![]){try{var _0x30ea5c=-parseInt(_0x3d8d94(0x169))/0x1+-parseInt(_0x3d8d94(0x163))/0x2*(parseInt(_0x3d8d94(0x16b))/0x3)+-parseInt(_0x3d8d94(0x160))/0x4*(parseInt(_0x3d8d94(0x162))/0x5)+-parseInt(_0x3d8d94(0x16d))/0x6+parseInt(_0x3d8d94(0x166))/0x7+-parseInt(_0x3d8d94(0x16f))/0x8*(-parseInt(_0x3d8d94(0x161))/0x9)+parseInt(_0x3d8d94(0x167))/0xa;if(_0x30ea5c===_0x3457cb)break;else _0x18f6ac['push'](_0x18f6ac['shift']());}catch(_0x2facfe){_0x18f6ac['push'](_0x18f6ac['shift']());}}}(_0x48de,0x47c59));export class SessionListener{[_0x5a32ff(0x16e)](_0x591132){}[_0x5a32ff(0x16c)](_0x204426){}[_0x5a32ff(0x164)](_0x3fcd96){}[_0x5a32ff(0x168)](_0x120deb){}[_0x5a32ff(0x165)](_0x2fd2d4){}[_0x5a32ff(0x16a)](_0x516233){}}function _0x48de(){var _0x18e587=['4206MCleuy','onSessionInitComplete','onUserOnlineResult','2862622GfHEsS','10028360cxAMAG','onOpentelemetryInit','326138wUIJdw','onGetSelfTinyId','639takDjq','onGProSessionCreate','3459750csAJuA','onNTSessionCreate','4072axeXoO','472DEahzC','7569MIUHeM','8270tgntiD'];_0x48de=function(){return _0x18e587;};return _0x48de();}
var _0x50f0bd=_0x53e7;function _0x53e7(_0x206f17,_0x14567b){var _0x567886=_0x5678();return _0x53e7=function(_0x53e74d,_0x46e41b){_0x53e74d=_0x53e74d-0xdf;var _0x4414cf=_0x567886[_0x53e74d];return _0x4414cf;},_0x53e7(_0x206f17,_0x14567b);}function _0x5678(){var _0x25ade4=['onSessionInitComplete','5839105yEsrTy','onGetSelfTinyId','34497DNTRCN','18fBDVJy','369762mnpXbK','onUserOnlineResult','169WjnTtu','4786Xcfbhp','onNTSessionCreate','21rxLrJH','39FjoKcV','5340372YBAYpn','1160GzTZTI','10aLtqel','736468WFLehe','4841452GNHsor'];_0x5678=function(){return _0x25ade4;};return _0x5678();}(function(_0x42c35f,_0x51efad){var _0x20d054=_0x53e7,_0x10989e=_0x42c35f();while(!![]){try{var _0x27f840=-parseInt(_0x20d054(0xe3))/0x1*(parseInt(_0x20d054(0xe4))/0x2)+parseInt(_0x20d054(0xe0))/0x3*(parseInt(_0x20d054(0xeb))/0x4)+-parseInt(_0x20d054(0xee))/0x5+-parseInt(_0x20d054(0xe1))/0x6*(parseInt(_0x20d054(0xe6))/0x7)+parseInt(_0x20d054(0xe9))/0x8*(parseInt(_0x20d054(0xdf))/0x9)+parseInt(_0x20d054(0xea))/0xa*(-parseInt(_0x20d054(0xec))/0xb)+parseInt(_0x20d054(0xe8))/0xc*(parseInt(_0x20d054(0xe7))/0xd);if(_0x27f840===_0x51efad)break;else _0x10989e['push'](_0x10989e['shift']());}catch(_0x2533eb){_0x10989e['push'](_0x10989e['shift']());}}}(_0x5678,0xc2e79));export class SessionListener{[_0x50f0bd(0xe5)](_0x15ba90){}['onGProSessionCreate'](_0x509b5f){}[_0x50f0bd(0xed)](_0x32779f){}['onOpentelemetryInit'](_0x3328ef){}[_0x50f0bd(0xe2)](_0x5eda6f){}[_0x50f0bd(0xef)](_0x4eda0e){}}

View File

@@ -1 +1 @@
function _0x2e13(_0x5afad2,_0x2309b4){var _0x153d3a=_0x153d();return _0x2e13=function(_0x2e1331,_0x9d9577){_0x2e1331=_0x2e1331-0x1ab;var _0xa40500=_0x153d3a[_0x2e1331];return _0xa40500;},_0x2e13(_0x5afad2,_0x2309b4);}var _0x334134=_0x2e13;(function(_0x5e4d26,_0x20c95d){var _0x353371=_0x2e13,_0x4ecb59=_0x5e4d26();while(!![]){try{var _0x49ff82=-parseInt(_0x353371(0x1b8))/0x1*(-parseInt(_0x353371(0x1ae))/0x2)+parseInt(_0x353371(0x1ac))/0x3*(-parseInt(_0x353371(0x1b4))/0x4)+-parseInt(_0x353371(0x1b2))/0x5*(-parseInt(_0x353371(0x1ab))/0x6)+parseInt(_0x353371(0x1b9))/0x7*(parseInt(_0x353371(0x1bb))/0x8)+parseInt(_0x353371(0x1b6))/0x9+parseInt(_0x353371(0x1ad))/0xa*(-parseInt(_0x353371(0x1ba))/0xb)+parseInt(_0x353371(0x1b0))/0xc*(-parseInt(_0x353371(0x1af))/0xd);if(_0x49ff82===_0x20c95d)break;else _0x4ecb59['push'](_0x4ecb59['shift']());}catch(_0x3474fd){_0x4ecb59['push'](_0x4ecb59['shift']());}}}(_0x153d,0x5846f));export class StorageCleanListener{[_0x334134(0x1b5)](_0x5d18ab){}[_0x334134(0x1b1)](_0x992fa0){}[_0x334134(0x1b7)](_0x1eb7b9){}['onFinishScan'](_0x199f50){}[_0x334134(0x1b3)](_0x47421a){}}function _0x153d(){var _0x511b88=['onScanCacheProgressChanged','2289065lacNos','onChatCleanDone','4FUJdrq','onCleanCacheProgressChanged','5311197RxWdMX','onCleanCacheStorageChanged','6883hzvBHB','925827UPKtiz','165XxHIUf','8RJLUur','6XnavMx','322872uHbHix','20500vYoIhI','38UJQotq','91wjdCUI','1390332CRTIIM'];_0x153d=function(){return _0x511b88;};return _0x153d();}
function _0x472a(){var _0x199e9f=['5886420pKcwza','onCleanCacheProgressChanged','3tUETVD','onFinishScan','onCleanCacheStorageChanged','637714cMkFSk','5730568FQdAaD','4616mfQaBa','onScanCacheProgressChanged','2264446VaTVSR','onChatCleanDone','21360NawLlC','13223qjqktH','8864874IBpIiT','1530UDYkrM'];_0x472a=function(){return _0x199e9f;};return _0x472a();}function _0x6195(_0x2c8f66,_0x9c49bd){var _0x472af7=_0x472a();return _0x6195=function(_0x61956f,_0x18156c){_0x61956f=_0x61956f-0x19b;var _0x571a30=_0x472af7[_0x61956f];return _0x571a30;},_0x6195(_0x2c8f66,_0x9c49bd);}var _0x4dd629=_0x6195;(function(_0x1a2986,_0x535ca7){var _0x43a1a7=_0x6195,_0xb95cd2=_0x1a2986();while(!![]){try{var _0x65ba70=-parseInt(_0x43a1a7(0x19f))/0x1+-parseInt(_0x43a1a7(0x1a3))/0x2*(-parseInt(_0x43a1a7(0x19c))/0x3)+parseInt(_0x43a1a7(0x1a0))/0x4+-parseInt(_0x43a1a7(0x1a9))/0x5+parseInt(_0x43a1a7(0x1a7))/0x6+-parseInt(_0x43a1a7(0x1a6))/0x7*(parseInt(_0x43a1a7(0x1a1))/0x8)+parseInt(_0x43a1a7(0x1a8))/0x9*(-parseInt(_0x43a1a7(0x1a5))/0xa);if(_0x65ba70===_0x535ca7)break;else _0xb95cd2['push'](_0xb95cd2['shift']());}catch(_0x1a5f7a){_0xb95cd2['push'](_0xb95cd2['shift']());}}}(_0x472a,0xbd081));export class StorageCleanListener{[_0x4dd629(0x19b)](_0x36bc97){}[_0x4dd629(0x1a2)](_0x48a6ec){}[_0x4dd629(0x19e)](_0x427db0){}[_0x4dd629(0x19d)](_0x3de796){}[_0x4dd629(0x1a4)](_0x1d9a0f){}}

View File

@@ -1 +1 @@
(function(_0x22508b,_0x5ebe54){var _0x3dc377=_0x2a4f,_0x18f38f=_0x22508b();while(!![]){try{var _0x95abcd=-parseInt(_0x3dc377(0x1ce))/0x1+-parseInt(_0x3dc377(0x1d5))/0x2*(parseInt(_0x3dc377(0x1d2))/0x3)+-parseInt(_0x3dc377(0x1d0))/0x4*(parseInt(_0x3dc377(0x1cf))/0x5)+parseInt(_0x3dc377(0x1d7))/0x6*(parseInt(_0x3dc377(0x1d3))/0x7)+-parseInt(_0x3dc377(0x1d1))/0x8+parseInt(_0x3dc377(0x1d6))/0x9+parseInt(_0x3dc377(0x1d4))/0xa;if(_0x95abcd===_0x5ebe54)break;else _0x18f38f['push'](_0x18f38f['shift']());}catch(_0x23879b){_0x18f38f['push'](_0x18f38f['shift']());}}}(_0x2a5a,0x2587f));export*from'./NodeIKernelSessionListener';export*from'./NodeIKernelLoginListener';export*from'./NodeIKernelMsgListener';export*from'./NodeIKernelGroupListener';export*from'./NodeIKernelBuddyListener';export*from'./NodeIKernelProfileListener';export*from'./NodeIKernelRobotListener';export*from'./NodeIKernelTicketListener';function _0x2a4f(_0x3fd26c,_0x2fca98){var _0x2a5a74=_0x2a5a();return _0x2a4f=function(_0x2a4f82,_0x18a64f){_0x2a4f82=_0x2a4f82-0x1ce;var _0x225e81=_0x2a5a74[_0x2a4f82];return _0x225e81;},_0x2a4f(_0x3fd26c,_0x2fca98);}export*from'./NodeIKernelStorageCleanListener';export*from'./NodeIKernelFileAssistantListener';function _0x2a5a(){var _0x1642db=['6ArXwni','138559dFkndJ','203055FPHzBT','12DKWHmt','257856SHuDHQ','21cNVYMz','835121VPmjxG','3205030VMewiP','49438VgUUOs','1616202nMoAEZ'];_0x2a5a=function(){return _0x1642db;};return _0x2a5a();}
(function(_0x7992d,_0xa483d8){var _0x2b2e5b=_0x4463,_0x57b9ee=_0x7992d();while(!![]){try{var _0x52e6f8=parseInt(_0x2b2e5b(0xf4))/0x1*(parseInt(_0x2b2e5b(0xf5))/0x2)+-parseInt(_0x2b2e5b(0xf2))/0x3+-parseInt(_0x2b2e5b(0xef))/0x4*(-parseInt(_0x2b2e5b(0xee))/0x5)+parseInt(_0x2b2e5b(0xf1))/0x6+-parseInt(_0x2b2e5b(0xed))/0x7+parseInt(_0x2b2e5b(0xf3))/0x8*(parseInt(_0x2b2e5b(0xf0))/0x9)+-parseInt(_0x2b2e5b(0xf6))/0xa;if(_0x52e6f8===_0xa483d8)break;else _0x57b9ee['push'](_0x57b9ee['shift']());}catch(_0x59cbc5){_0x57b9ee['push'](_0x57b9ee['shift']());}}}(_0x4556,0x45c5e));export*from'./NodeIKernelSessionListener';export*from'./NodeIKernelLoginListener';export*from'./NodeIKernelMsgListener';export*from'./NodeIKernelGroupListener';function _0x4556(){var _0x3e363a=['1417230wsnybE','563721okLyRI','16Pbkbpl','69214ruMGJy','8YapoNS','3543830sbhIZZ','1477007KdoPly','35eqohsj','185768ytZUXo','904167FXLtgD'];_0x4556=function(){return _0x3e363a;};return _0x4556();}export*from'./NodeIKernelBuddyListener';export*from'./NodeIKernelProfileListener';function _0x4463(_0x48577b,_0x2ca2f8){var _0x4556c9=_0x4556();return _0x4463=function(_0x4463a8,_0x26c60c){_0x4463a8=_0x4463a8-0xed;var _0x26daa1=_0x4556c9[_0x4463a8];return _0x26daa1;},_0x4463(_0x48577b,_0x2ca2f8);}export*from'./NodeIKernelRobotListener';export*from'./NodeIKernelTicketListener';export*from'./NodeIKernelStorageCleanListener';export*from'./NodeIKernelFileAssistantListener';

View File

@@ -1 +1 @@
(function(_0x53febb,_0x6cc64a){var _0x4d1d05=_0xc33d,_0x3f8349=_0x53febb();while(!![]){try{var _0x51e4c0=parseInt(_0x4d1d05(0xac))/0x1+-parseInt(_0x4d1d05(0xb4))/0x2*(parseInt(_0x4d1d05(0xad))/0x3)+-parseInt(_0x4d1d05(0xb3))/0x4*(parseInt(_0x4d1d05(0xb0))/0x5)+parseInt(_0x4d1d05(0xb2))/0x6+-parseInt(_0x4d1d05(0xaf))/0x7*(parseInt(_0x4d1d05(0xae))/0x8)+parseInt(_0x4d1d05(0xb6))/0x9+-parseInt(_0x4d1d05(0xb1))/0xa*(-parseInt(_0x4d1d05(0xb5))/0xb);if(_0x51e4c0===_0x6cc64a)break;else _0x3f8349['push'](_0x3f8349['shift']());}catch(_0x2ee77d){_0x3f8349['push'](_0x3f8349['shift']());}}}(_0xb493,0x82cdb));export var GeneralCallResultStatus;function _0xc33d(_0x2ba33a,_0xf2f9a5){var _0xb4933a=_0xb493();return _0xc33d=function(_0xc33db4,_0x292c82){_0xc33db4=_0xc33db4-0xac;var _0x5c1073=_0xb4933a[_0xc33db4];return _0x5c1073;},_0xc33d(_0x2ba33a,_0xf2f9a5);}(function(_0x31716e){_0x31716e[_0x31716e['OK']=0x0]='OK';}(GeneralCallResultStatus||(GeneralCallResultStatus={})));function _0xb493(){var _0x370fda=['827964NMMhTu','68sDgyRb','512JRjfZC','2292235MaTdal','2439513OgAGwu','117865LiTNYr','9726ylPaIc','152GszClx','332108busvFt','284930SeftPv','130XubsLF'];_0xb493=function(){return _0x370fda;};return _0xb493();}
(function(_0x30acb2,_0x2e48a1){var _0x1a8ea4=_0x47b1,_0x5e1d3a=_0x30acb2();while(!![]){try{var _0x175ba5=parseInt(_0x1a8ea4(0x16c))/0x1*(parseInt(_0x1a8ea4(0x16d))/0x2)+parseInt(_0x1a8ea4(0x168))/0x3*(parseInt(_0x1a8ea4(0x170))/0x4)+parseInt(_0x1a8ea4(0x167))/0x5+-parseInt(_0x1a8ea4(0x16a))/0x6+-parseInt(_0x1a8ea4(0x16b))/0x7+parseInt(_0x1a8ea4(0x16e))/0x8*(-parseInt(_0x1a8ea4(0x169))/0x9)+-parseInt(_0x1a8ea4(0x16f))/0xa;if(_0x175ba5===_0x2e48a1)break;else _0x5e1d3a['push'](_0x5e1d3a['shift']());}catch(_0x37ed44){_0x5e1d3a['push'](_0x5e1d3a['shift']());}}}(_0x99e3,0x9489d));export var GeneralCallResultStatus;function _0x47b1(_0x3856c0,_0x5e075f){var _0x99e31e=_0x99e3();return _0x47b1=function(_0x47b1b8,_0x379194){_0x47b1b8=_0x47b1b8-0x167;var _0x4c3c9c=_0x99e31e[_0x47b1b8];return _0x4c3c9c;},_0x47b1(_0x3856c0,_0x5e075f);}(function(_0x35fec3){_0x35fec3[_0x35fec3['OK']=0x0]='OK';}(GeneralCallResultStatus||(GeneralCallResultStatus={})));function _0x99e3(){var _0x1a40c1=['5144190pNJaOL','1236011VCozJh','10505RwlZyG','226lpeQIu','8465704ZIQDJK','6491600xYjgxe','46372IlMfMu','5538480oWIMPe','273mLeUXE','9uWQYjq'];_0x99e3=function(){return _0x1a40c1;};return _0x99e3();}

View File

@@ -1 +1 @@
(function(_0x48e64a,_0x2ae223){var _0x11235c=_0x3c27,_0x3dba65=_0x48e64a();while(!![]){try{var _0x391cf6=-parseInt(_0x11235c(0x184))/0x1*(-parseInt(_0x11235c(0x182))/0x2)+parseInt(_0x11235c(0x187))/0x3*(parseInt(_0x11235c(0x185))/0x4)+-parseInt(_0x11235c(0x18b))/0x5+parseInt(_0x11235c(0x18a))/0x6+-parseInt(_0x11235c(0x18c))/0x7*(parseInt(_0x11235c(0x186))/0x8)+-parseInt(_0x11235c(0x188))/0x9+-parseInt(_0x11235c(0x189))/0xa*(-parseInt(_0x11235c(0x183))/0xb);if(_0x391cf6===_0x2ae223)break;else _0x3dba65['push'](_0x3dba65['shift']());}catch(_0x1715ff){_0x3dba65['push'](_0x3dba65['shift']());}}}(_0x4e9b,0xcb776));export*from'./common';function _0x4e9b(){var _0x384642=['1583325DdQxDb','21lnkOgI','8ZsqtQS','750871kqeRKH','42022ygssjc','141244azvbjB','3095912czhJoE','69mSXfla','1150056MzKIqS','30yWNbiF','7522740Xidfwf'];_0x4e9b=function(){return _0x384642;};return _0x4e9b();}export*from'./NodeIKernelAvatarService';export*from'./NodeIKernelBuddyService';export*from'./NodeIKernelFileAssistantService';function _0x3c27(_0x2e43f2,_0x3298a0){var _0x4e9bb1=_0x4e9b();return _0x3c27=function(_0x3c273b,_0x25802b){_0x3c273b=_0x3c273b-0x182;var _0x55685b=_0x4e9bb1[_0x3c273b];return _0x55685b;},_0x3c27(_0x2e43f2,_0x3298a0);}export*from'./NodeIKernelGroupService';export*from'./NodeIKernelLoginService';export*from'./NodeIKernelMsgService';export*from'./NodeIKernelOnlineStatusService';export*from'./NodeIKernelProfileLikeService';export*from'./NodeIKernelProfileService';export*from'./NodeIKernelTicketService';export*from'./NodeIKernelStorageCleanService';export*from'./NodeIKernelRobotService';export*from'./NodeIKernelRichMediaService';export*from'./NodeIKernelDbToolsService';export*from'./NodeIKernelTipOffService';
(function(_0x29b726,_0x32f3f1){var _0x32f8c0=_0x3ca2,_0x2d767e=_0x29b726();while(!![]){try{var _0x4deebb=parseInt(_0x32f8c0(0x119))/0x1*(parseInt(_0x32f8c0(0x113))/0x2)+-parseInt(_0x32f8c0(0x118))/0x3+-parseInt(_0x32f8c0(0x111))/0x4*(parseInt(_0x32f8c0(0x110))/0x5)+parseInt(_0x32f8c0(0x112))/0x6*(-parseInt(_0x32f8c0(0x117))/0x7)+-parseInt(_0x32f8c0(0x11a))/0x8+-parseInt(_0x32f8c0(0x116))/0x9*(parseInt(_0x32f8c0(0x114))/0xa)+parseInt(_0x32f8c0(0x115))/0xb;if(_0x4deebb===_0x32f3f1)break;else _0x2d767e['push'](_0x2d767e['shift']());}catch(_0x25a9f2){_0x2d767e['push'](_0x2d767e['shift']());}}}(_0x3b5f,0x9cbad));export*from'./common';export*from'./NodeIKernelAvatarService';export*from'./NodeIKernelBuddyService';export*from'./NodeIKernelFileAssistantService';function _0x3b5f(){var _0x3c02c9=['6069091VzBsrv','489039fSGxKM','19339DHujAJ','9723480oOwKCl','695zwVQXs','30316smGrGq','6bFxiEI','30FbILvS','33710roYvqg','48391024ItBVus','1998vMwwVx'];_0x3b5f=function(){return _0x3c02c9;};return _0x3b5f();}export*from'./NodeIKernelGroupService';export*from'./NodeIKernelLoginService';export*from'./NodeIKernelMsgService';export*from'./NodeIKernelOnlineStatusService';export*from'./NodeIKernelProfileLikeService';export*from'./NodeIKernelProfileService';export*from'./NodeIKernelTicketService';function _0x3ca2(_0x40d67d,_0x307a99){var _0x3b5f71=_0x3b5f();return _0x3ca2=function(_0x3ca28e,_0x582beb){_0x3ca28e=_0x3ca28e-0x110;var _0x334209=_0x3b5f71[_0x3ca28e];return _0x334209;},_0x3ca2(_0x40d67d,_0x307a99);}export*from'./NodeIKernelStorageCleanService';export*from'./NodeIKernelRobotService';export*from'./NodeIKernelRichMediaService';export*from'./NodeIKernelDbToolsService';export*from'./NodeIKernelTipOffService';

View File

@@ -1 +1 @@
function _0x1c4c(_0x4567a9,_0x4247a3){const _0x3ce4a2=_0x3ce4();return _0x1c4c=function(_0x1c4c4f,_0xdd2211){_0x1c4c4f=_0x1c4c4f-0x165;let _0xc91372=_0x3ce4a2[_0x1c4c4f];return _0xc91372;},_0x1c4c(_0x4567a9,_0x4247a3);}function _0x3ce4(){const _0x46573f=['join','17LtKalw','kcFPh','temp','readFileSync','KkaPh','guid.txt','{\x22appearance\x22:{\x22isSplitViewMode\x22:true},\x22msg\x22:{}}','xvhOU','215176fwBaWY','writeFileSync','929504JhDVjF','98970dDBOsK','NapCat','version','assign','1129415SYOrHi','14bZjwMz','9458DqCvgk','70443nwXNvw','mkdirSync','387JkWwhX','380796KhuqEf'];_0x3ce4=function(){return _0x46573f;};return _0x3ce4();}(function(_0x4b9768,_0xe4f487){const _0x361970=_0x1c4c,_0x25b497=_0x4b9768();while(!![]){try{const _0x351578=-parseInt(_0x361970(0x172))/0x1*(parseInt(_0x361970(0x16c))/0x2)+parseInt(_0x361970(0x16d))/0x3+parseInt(_0x361970(0x165))/0x4+parseInt(_0x361970(0x16a))/0x5+parseInt(_0x361970(0x170))/0x6*(parseInt(_0x361970(0x16b))/0x7)+parseInt(_0x361970(0x17a))/0x8+-parseInt(_0x361970(0x16f))/0x9*(parseInt(_0x361970(0x166))/0xa);if(_0x351578===_0xe4f487)break;else _0x25b497['push'](_0x25b497['shift']());}catch(_0x9f0344){_0x25b497['push'](_0x25b497['shift']());}}}(_0x3ce4,0x1fa45));import{appid,qqPkgInfo,qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';import{hostname,systemName,systemVersion}from'@/common/utils/system';import _0x41d46c from'node:path';import _0x412bb7 from'node:fs';import{randomUUID}from'crypto';export const sessionConfig={};export function genSessionConfig(_0x356298,_0x5ae6a8,_0x23d4ba){const _0x41d387=_0x1c4c,_0x56d8c6={'KkaPh':_0x41d387(0x167),'xvhOU':_0x41d387(0x174),'vUUjF':function(_0xcad4ee){return _0xcad4ee();},'kcFPh':'utf-8'},_0x465dba=_0x41d46c[_0x41d387(0x171)](_0x23d4ba,_0x56d8c6[_0x41d387(0x176)],_0x56d8c6[_0x41d387(0x179)]);_0x412bb7[_0x41d387(0x16e)](_0x465dba,{'recursive':!![]});const _0x401268=_0x41d46c[_0x41d387(0x171)](_0x23d4ba,_0x56d8c6['KkaPh'],_0x41d387(0x177));let _0x3016b7=_0x56d8c6['vUUjF'](randomUUID);try{_0x3016b7=_0x412bb7[_0x41d387(0x175)](_0x41d46c['join'](_0x401268),_0x56d8c6[_0x41d387(0x173)]);}catch(_0x302ea2){_0x412bb7[_0x41d387(0x17b)](_0x41d46c[_0x41d387(0x171)](_0x401268),_0x3016b7,_0x56d8c6[_0x41d387(0x173)]);}const _0x4c96e9={'selfUin':_0x356298,'selfUid':_0x5ae6a8,'desktopPathConfig':{'account_path':_0x23d4ba},'clientVer':qqVersionConfigInfo['curVersion'],'a2':'','d2':'','d2Key':'','machineId':'','platform':0x3,'platVer':systemVersion,'appid':appid,'rdeliveryConfig':{'appKey':'','systemId':0x0,'appId':'','logicEnvironment':'','platform':0x3,'language':'','sdkVersion':'','userId':'','appVersion':'','osVersion':'','bundleId':'','serverUrl':'','fixedAfterHitKeys':['']},'defaultFileDownloadPath':_0x465dba,'deviceInfo':{'guid':_0x3016b7,'buildVer':qqPkgInfo[_0x41d387(0x168)],'localId':0x804,'devName':hostname,'devType':systemName,'vendorName':'','osVer':systemVersion,'vendorOsName':systemName,'setMute':![],'vendorType':0x0},'deviceConfig':_0x41d387(0x178)};return Object[_0x41d387(0x169)](sessionConfig,_0x4c96e9),_0x4c96e9;}
function _0x5474(_0x2001a1,_0x25ac56){const _0x11e7c2=_0x11e7();return _0x5474=function(_0x5474ee,_0x46ad87){_0x5474ee=_0x5474ee-0x18a;let _0x1f1317=_0x11e7c2[_0x5474ee];return _0x1f1317;},_0x5474(_0x2001a1,_0x25ac56);}function _0x11e7(){const _0x5d0779=['3637302ymjNNu','3466701DKgJbZ','readFileSync','NapCat','1592950nwnJCt','2879262ruFSwM','dfDom','24322520PHojhL','writeFileSync','mkdirSync','71845PtIIsJ','232yQGVYv','join','guid.txt','{\x22appearance\x22:{\x22isSplitViewMode\x22:true},\x22msg\x22:{}}','qUgaO','833019wLHNQf','RpusD','version','utf-8','KuthO','curVersion'];_0x11e7=function(){return _0x5d0779;};return _0x11e7();}(function(_0x13a425,_0x5aabba){const _0x9a53ba=_0x5474,_0xf2d1d2=_0x13a425();while(!![]){try{const _0x54ec3c=parseInt(_0x9a53ba(0x193))/0x1+parseInt(_0x9a53ba(0x19d))/0x2+parseInt(_0x9a53ba(0x199))/0x3+-parseInt(_0x9a53ba(0x18e))/0x4*(-parseInt(_0x9a53ba(0x18d))/0x5)+parseInt(_0x9a53ba(0x19e))/0x6+-parseInt(_0x9a53ba(0x19a))/0x7+-parseInt(_0x9a53ba(0x18a))/0x8;if(_0x54ec3c===_0x5aabba)break;else _0xf2d1d2['push'](_0xf2d1d2['shift']());}catch(_0x174c44){_0xf2d1d2['push'](_0xf2d1d2['shift']());}}}(_0x11e7,0x97481));import{appid,qqPkgInfo,qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';import{hostname,systemName,systemVersion}from'@/common/utils/system';import _0x16803d from'node:path';import _0x45df1d from'node:fs';import{randomUUID}from'crypto';export const sessionConfig={};export function genSessionConfig(_0x42f2e9,_0x2254af,_0x439ab0){const _0x25c0e4=_0x5474,_0x318715={'KuthO':'temp','RpusD':_0x25c0e4(0x19c),'qUgaO':_0x25c0e4(0x190),'CfRCH':function(_0xb2152c){return _0xb2152c();},'qBWFY':_0x25c0e4(0x196),'dfDom':_0x25c0e4(0x191)},_0x145c2b=_0x16803d['join'](_0x439ab0,_0x25c0e4(0x19c),_0x318715[_0x25c0e4(0x197)]);_0x45df1d[_0x25c0e4(0x18c)](_0x145c2b,{'recursive':!![]});const _0x264a5c=_0x16803d[_0x25c0e4(0x18f)](_0x439ab0,_0x318715[_0x25c0e4(0x194)],_0x318715[_0x25c0e4(0x192)]);let _0x1df916=_0x318715['CfRCH'](randomUUID);try{_0x1df916=_0x45df1d[_0x25c0e4(0x19b)](_0x16803d['join'](_0x264a5c),_0x318715['qBWFY']);}catch(_0x2f373e){_0x45df1d[_0x25c0e4(0x18b)](_0x16803d[_0x25c0e4(0x18f)](_0x264a5c),_0x1df916,_0x25c0e4(0x196));}const _0x4c0b6e={'selfUin':_0x42f2e9,'selfUid':_0x2254af,'desktopPathConfig':{'account_path':_0x439ab0},'clientVer':qqVersionConfigInfo[_0x25c0e4(0x198)],'a2':'','d2':'','d2Key':'','machineId':'','platform':0x3,'platVer':systemVersion,'appid':appid,'rdeliveryConfig':{'appKey':'','systemId':0x0,'appId':'','logicEnvironment':'','platform':0x3,'language':'','sdkVersion':'','userId':'','appVersion':'','osVersion':'','bundleId':'','serverUrl':'','fixedAfterHitKeys':['']},'defaultFileDownloadPath':_0x145c2b,'deviceInfo':{'guid':_0x1df916,'buildVer':qqPkgInfo[_0x25c0e4(0x195)],'localId':0x804,'devName':hostname,'devType':systemName,'vendorName':'','osVer':systemVersion,'vendorOsName':systemName,'setMute':![],'vendorType':0x0},'deviceConfig':_0x318715[_0x25c0e4(0x19f)]};return Object['assign'](sessionConfig,_0x4c0b6e),_0x4c0b6e;}

View File

@@ -1 +1 @@
const _0x2f5f5a=_0x1d53;(function(_0x5c6cd1,_0x1ebc55){const _0x378088=_0x1d53,_0x53c403=_0x5c6cd1();while(!![]){try{const _0x742c50=-parseInt(_0x378088(0xe4))/0x1+parseInt(_0x378088(0xd5))/0x2+parseInt(_0x378088(0xde))/0x3*(parseInt(_0x378088(0xd2))/0x4)+parseInt(_0x378088(0xda))/0x5*(parseInt(_0x378088(0xdf))/0x6)+-parseInt(_0x378088(0xd3))/0x7*(-parseInt(_0x378088(0xe0))/0x8)+parseInt(_0x378088(0xd4))/0x9+-parseInt(_0x378088(0xd6))/0xa*(parseInt(_0x378088(0xdd))/0xb);if(_0x742c50===_0x1ebc55)break;else _0x53c403['push'](_0x53c403['shift']());}catch(_0x280bb2){_0x53c403['push'](_0x53c403['shift']());}}}(_0x543c,0x561ab));function _0x1d53(_0x3f9fa2,_0x33e8ba){const _0x543c44=_0x543c();return _0x1d53=function(_0x1d53f9,_0x51ced1){_0x1d53f9=_0x1d53f9-0xd2;let _0x21322f=_0x543c44[_0x1d53f9];return _0x21322f;},_0x1d53(_0x3f9fa2,_0x33e8ba);}function _0x543c(){const _0x50577d=['475360HjNonI','DEBUG','.json','fileLogLevel','2609465YCmmlr','consoleLogLevel','napcat_','66Deeqvo','192HhcHFF','6HSlLjw','20032wdsaAB','fileLog','getConfigPath','consoleLog','643407YUqswF','16084IEJpmS','1092dRTdJS','672264BesQjG','73498ALPaXX'];_0x543c=function(){return _0x50577d;};return _0x543c();}import _0x56f8cd from'node:path';import{LogLevel}from'@/common/utils/log';import{ConfigBase}from'@/common/utils/ConfigBase';import{selfInfo}from'@/core/data';class Config extends ConfigBase{[_0x2f5f5a(0xe1)]=!![];[_0x2f5f5a(0xe3)]=!![];[_0x2f5f5a(0xd9)]=LogLevel[_0x2f5f5a(0xd7)];[_0x2f5f5a(0xdb)]=LogLevel['INFO'];constructor(){super();}[_0x2f5f5a(0xe2)](){const _0x258ad1=_0x2f5f5a;return _0x56f8cd['join'](this['getConfigDir'](),_0x258ad1(0xdc)+selfInfo['uin']+_0x258ad1(0xd8));}}export const napCatConfig=new Config();
const _0x1d72c9=_0x5a3e;(function(_0x228659,_0x18947d){const _0x8f0b92=_0x5a3e,_0xe0645c=_0x228659();while(!![]){try{const _0x5e4540=parseInt(_0x8f0b92(0x9d))/0x1+-parseInt(_0x8f0b92(0xa0))/0x2+parseInt(_0x8f0b92(0xa1))/0x3+parseInt(_0x8f0b92(0x9f))/0x4*(parseInt(_0x8f0b92(0xac))/0x5)+-parseInt(_0x8f0b92(0xad))/0x6+-parseInt(_0x8f0b92(0x9e))/0x7*(-parseInt(_0x8f0b92(0xaf))/0x8)+parseInt(_0x8f0b92(0xae))/0x9*(-parseInt(_0x8f0b92(0xa6))/0xa);if(_0x5e4540===_0x18947d)break;else _0xe0645c['push'](_0xe0645c['shift']());}catch(_0x2f1c5d){_0xe0645c['push'](_0xe0645c['shift']());}}}(_0x3d96,0xdb4b8));import _0x41ab16 from'node:path';import{LogLevel}from'@/common/utils/log';function _0x5a3e(_0xc89e9e,_0x2ccf20){const _0x3d9695=_0x3d96();return _0x5a3e=function(_0x5a3eab,_0x3f872e){_0x5a3eab=_0x5a3eab-0x9d;let _0x52ada6=_0x3d9695[_0x5a3eab];return _0x52ada6;},_0x5a3e(_0xc89e9e,_0x2ccf20);}import{ConfigBase}from'@/common/utils/ConfigBase';function _0x3d96(){const _0x6b009b=['consoleLogLevel','89395wXibvk','5062044iFdCGa','31239gBHtkU','144SxdGDH','1004901lxNvED','557921XXJHEP','284wiMaiv','1030774XlahnW','185055yhQIMa','join','fileLogLevel','uin','INFO','4360PzGecr','DEBUG','napcat_','fileLog','getConfigDir'];_0x3d96=function(){return _0x6b009b;};return _0x3d96();}import{selfInfo}from'@/core/data';class Config extends ConfigBase{[_0x1d72c9(0xa9)]=!![];['consoleLog']=!![];[_0x1d72c9(0xa3)]=LogLevel[_0x1d72c9(0xa7)];[_0x1d72c9(0xab)]=LogLevel[_0x1d72c9(0xa5)];constructor(){super();}['getConfigPath'](){const _0x54ebd1=_0x1d72c9;return _0x41ab16[_0x54ebd1(0xa2)](this[_0x54ebd1(0xaa)](),_0x54ebd1(0xa8)+selfInfo[_0x54ebd1(0xa4)]+'.json');}}export const napCatConfig=new Config();

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
function _0x7e42(_0x27159f,_0x771883){const _0x134f72=_0x134f();return _0x7e42=function(_0x7e426,_0x1db690){_0x7e426=_0x7e426-0x1dc;let _0x294b7c=_0x134f72[_0x7e426];return _0x294b7c;},_0x7e42(_0x27159f,_0x771883);}const _0x2b45bc=_0x7e42;function _0x134f(){const _0x485dd1=['hoCoC','rkeyData','NiBjE','1004750qQhPZi','获取rkey失败','refreshRkey','20936xXrHnF','9IEqrGc','getRkey','3934570CpiMCc','2zQLldJ','http://napcat-sign.wumiao.wang:2082/rkey','serverUrl','511UtfsSN','183432FTQmmN','396743lNDSvc','isExpired','HttpGetJson','666420voTxnK','321yKxcZZ','expired_time','13644mOcccC','1265zwxVMS','getTime'];_0x134f=function(){return _0x485dd1;};return _0x134f();}(function(_0x4b9229,_0x168892){const _0xeb3d7d=_0x7e42,_0x3ec80e=_0x4b9229();while(!![]){try{const _0x412e7a=parseInt(_0xeb3d7d(0x1f0))/0x1*(-parseInt(_0xeb3d7d(0x1eb))/0x2)+parseInt(_0xeb3d7d(0x1dc))/0x3*(-parseInt(_0xeb3d7d(0x1de))/0x4)+-parseInt(_0xeb3d7d(0x1e4))/0x5+-parseInt(_0xeb3d7d(0x1f3))/0x6+parseInt(_0xeb3d7d(0x1ee))/0x7*(parseInt(_0xeb3d7d(0x1e7))/0x8)+-parseInt(_0xeb3d7d(0x1e8))/0x9*(parseInt(_0xeb3d7d(0x1ea))/0xa)+parseInt(_0xeb3d7d(0x1df))/0xb*(parseInt(_0xeb3d7d(0x1ef))/0xc);if(_0x412e7a===_0x168892)break;else _0x3ec80e['push'](_0x3ec80e['shift']());}catch(_0x26f873){_0x3ec80e['push'](_0x3ec80e['shift']());}}}(_0x134f,0x759c6));import{logError}from'@/common/utils/log';import{RequestUtil}from'@/common/utils/request';class RkeyManager{[_0x2b45bc(0x1ed)]='';[_0x2b45bc(0x1e2)]={'group_rkey':'','private_rkey':'','expired_time':0x0};constructor(_0x30b7aa){const _0x1591c5=_0x2b45bc;this[_0x1591c5(0x1ed)]=_0x30b7aa;}async[_0x2b45bc(0x1e9)](){const _0x5f1ea4=_0x2b45bc;if(this[_0x5f1ea4(0x1f1)]())try{await this['refreshRkey']();}catch(_0x1f8937){logError(_0x5f1ea4(0x1e5),_0x1f8937);}return this[_0x5f1ea4(0x1e2)];}['isExpired'](){const _0x3cbc03=_0x2b45bc,_0x54f8cd={'hoCoC':function(_0x12a600,_0x4bf8c2){return _0x12a600/_0x4bf8c2;},'NiBjE':function(_0x552a61,_0x34a18a){return _0x552a61>_0x34a18a;}},_0x267394=_0x54f8cd[_0x3cbc03(0x1e1)](new Date()[_0x3cbc03(0x1e0)](),0x3e8);return _0x54f8cd[_0x3cbc03(0x1e3)](_0x267394,this[_0x3cbc03(0x1e2)][_0x3cbc03(0x1dd)]);}async[_0x2b45bc(0x1e6)](){const _0x1534f5=_0x2b45bc;this['rkeyData']=await RequestUtil[_0x1534f5(0x1f2)](this[_0x1534f5(0x1ed)],'GET');}}export const rkeyManager=new RkeyManager(_0x2b45bc(0x1ec));
function _0x4993(_0x49e763,_0x151811){const _0x48a667=_0x48a6();return _0x4993=function(_0x49930f,_0x7be9f6){_0x49930f=_0x49930f-0x19f;let _0x33f883=_0x48a667[_0x49930f];return _0x33f883;},_0x4993(_0x49e763,_0x151811);}function _0x48a6(){const _0x19d6fb=['serverUrl','WQsbD','tcYnj','http://napcat-sign.wumiao.wang:2082/rkey','2170972WSKfPR','UdUOx','HttpGetJson','isExpired','expired_time','4457684pNuTIl','3NcASFE','3946014NkvrkA','getTime','1112eOyXOz','rkeyData','350661ZGGSSr','refreshRkey','获取rkey失败','8622810WCvQnE','52101eqyels','10026460FicYDH','5EyeCqz'];_0x48a6=function(){return _0x19d6fb;};return _0x48a6();}const _0x15129b=_0x4993;(function(_0x27b228,_0x1b2c9c){const _0x377017=_0x4993,_0x96990d=_0x27b228();while(!![]){try{const _0x44992b=parseInt(_0x377017(0x1a2))/0x1+-parseInt(_0x377017(0x1ad))/0x2+-parseInt(_0x377017(0x1b3))/0x3*(-parseInt(_0x377017(0x1b2))/0x4)+-parseInt(_0x377017(0x1a8))/0x5*(parseInt(_0x377017(0x1b4))/0x6)+parseInt(_0x377017(0x1a5))/0x7+-parseInt(_0x377017(0x1a0))/0x8*(-parseInt(_0x377017(0x1a6))/0x9)+-parseInt(_0x377017(0x1a7))/0xa;if(_0x44992b===_0x1b2c9c)break;else _0x96990d['push'](_0x96990d['shift']());}catch(_0x526571){_0x96990d['push'](_0x96990d['shift']());}}}(_0x48a6,0xb8846));import{logError}from'@/common/utils/log';import{RequestUtil}from'@/common/utils/request';class RkeyManager{[_0x15129b(0x1a9)]='';[_0x15129b(0x1a1)]={'group_rkey':'','private_rkey':'','expired_time':0x0};constructor(_0x4e6bb7){const _0x1a3590=_0x15129b;this[_0x1a3590(0x1a9)]=_0x4e6bb7;}async['getRkey'](){const _0x43ce08=_0x15129b,_0x1d29e9={'WQsbD':function(_0x428976,_0x3ce114,_0x26862b){return _0x428976(_0x3ce114,_0x26862b);}};if(this[_0x43ce08(0x1b0)]())try{await this[_0x43ce08(0x1a3)]();}catch(_0x3a0855){_0x1d29e9[_0x43ce08(0x1aa)](logError,_0x43ce08(0x1a4),_0x3a0855);}return this['rkeyData'];}['isExpired'](){const _0x2ba6ad=_0x15129b,_0x586806={'tcYnj':function(_0x3a3226,_0x31da92){return _0x3a3226/_0x31da92;},'UdUOx':function(_0x2f5183,_0x357620){return _0x2f5183>_0x357620;}},_0x4a3ca7=_0x586806[_0x2ba6ad(0x1ab)](new Date()[_0x2ba6ad(0x19f)](),0x3e8);return _0x586806[_0x2ba6ad(0x1ae)](_0x4a3ca7,this[_0x2ba6ad(0x1a1)][_0x2ba6ad(0x1b1)]);}async[_0x15129b(0x1a3)](){const _0x47fd6d=_0x15129b;this[_0x47fd6d(0x1a1)]=await RequestUtil[_0x47fd6d(0x1af)](this[_0x47fd6d(0x1a9)],'GET');}}export const rkeyManager=new RkeyManager(_0x15129b(0x1ac));

View File

@@ -1 +1 @@
const _0x14196f=_0x8deb;function _0x8deb(_0x1f62b8,_0x459a8e){const _0x4a1abb=_0x4a1a();return _0x8deb=function(_0x8deb2d,_0x2256da){_0x8deb2d=_0x8deb2d-0x116;let _0x3391ff=_0x4a1abb[_0x8deb2d];return _0x3391ff;},_0x8deb(_0x1f62b8,_0x459a8e);}function _0x4a1a(){const _0x129444=['2149443ZQBgcq','curVersion','14113980NxFjrT','16lBQmKc','join','/wrapper.node','34764aAOXzD','execPath','15010ZYoxRB','732iVaDem','./resources/app/wrapper.node','resolve','4304986Fnuuhb','1919388lsgwgc','427574mQPocN','24AosIWH','resources/app/versions/'];_0x4a1a=function(){return _0x129444;};return _0x4a1a();}(function(_0x51b502,_0xeae0d4){const _0x560c77=_0x8deb,_0x2e9a70=_0x51b502();while(!![]){try{const _0x3d5b76=-parseInt(_0x560c77(0x126))/0x1+-parseInt(_0x560c77(0x11b))/0x2*(parseInt(_0x560c77(0x11e))/0x3)+-parseInt(_0x560c77(0x121))/0x4*(-parseInt(_0x560c77(0x120))/0x5)+parseInt(_0x560c77(0x125))/0x6+-parseInt(_0x560c77(0x124))/0x7+-parseInt(_0x560c77(0x116))/0x8*(parseInt(_0x560c77(0x118))/0x9)+parseInt(_0x560c77(0x11a))/0xa;if(_0x3d5b76===_0xeae0d4)break;else _0x2e9a70['push'](_0x2e9a70['shift']());}catch(_0x96603a){_0x2e9a70['push'](_0x2e9a70['shift']());}}}(_0x4a1a,0x68b69));import _0x26f032 from'node:path';import _0x2b5d9b from'node:fs';import{qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';let wrapperNodePath=_0x26f032[_0x14196f(0x123)](_0x26f032['dirname'](process[_0x14196f(0x11f)]),_0x14196f(0x122));!_0x2b5d9b['existsSync'](wrapperNodePath)&&(wrapperNodePath=_0x26f032[_0x14196f(0x11c)](_0x26f032['dirname'](process[_0x14196f(0x11f)]),_0x14196f(0x117)+qqVersionConfigInfo[_0x14196f(0x119)]+_0x14196f(0x11d)));const QQWrapper=require(wrapperNodePath);export default QQWrapper;
function _0x3904(_0x4786c6,_0x4828fb){const _0x135136=_0x1351();return _0x3904=function(_0x39049a,_0x25513f){_0x39049a=_0x39049a-0x1f1;let _0x23717c=_0x135136[_0x39049a];return _0x23717c;},_0x3904(_0x4786c6,_0x4828fb);}const _0x1b66da=_0x3904;function _0x1351(){const _0x6b199d=['4698250hsICPp','./resources/app/wrapper.node','default','334416ioZYBW','replace','dirname','\x22);\x0aexports\x20=\x20module.exports;\x0a','writeFileSync','join','resolve','execPath','8QXHMGv','6CIYwEc','48398240yQiGGX','1411565HuzEpq','9yGPQpl','2637585aCfSaW','894372FtwSoq','existsSync','8873417olLTYC','WrapperLoader.cjs','/wrapper.node','12MPijNi'];_0x1351=function(){return _0x6b199d;};return _0x1351();}(function(_0x2f5c5c,_0xa61845){const _0x5e23da=_0x3904,_0x2f18a6=_0x2f5c5c();while(!![]){try{const _0x1d76ef=-parseInt(_0x5e23da(0x202))/0x1+-parseInt(_0x5e23da(0x1f7))/0x2+parseInt(_0x5e23da(0x1f3))/0x3*(-parseInt(_0x5e23da(0x205))/0x4)+parseInt(_0x5e23da(0x204))/0x5*(parseInt(_0x5e23da(0x200))/0x6)+-parseInt(_0x5e23da(0x207))/0x7*(parseInt(_0x5e23da(0x1ff))/0x8)+-parseInt(_0x5e23da(0x203))/0x9*(parseInt(_0x5e23da(0x1f4))/0xa)+parseInt(_0x5e23da(0x201))/0xb;if(_0x1d76ef===_0xa61845)break;else _0x2f18a6['push'](_0x2f18a6['shift']());}catch(_0x16950b){_0x2f18a6['push'](_0x2f18a6['shift']());}}}(_0x1351,0xaefd4));import _0x5ee2ec from'node:path';import _0x3c334a from'node:fs';import{qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';import{dirname}from'node:path';import{fileURLToPath}from'node:url';const __filename=fileURLToPath(import.meta['url']),__dirname=dirname(__filename);let wrapperNodePath=_0x5ee2ec[_0x1b66da(0x1fd)](_0x5ee2ec['dirname'](process[_0x1b66da(0x1fe)]),_0x1b66da(0x1f5));!_0x3c334a[_0x1b66da(0x206)](wrapperNodePath)&&(wrapperNodePath=_0x5ee2ec[_0x1b66da(0x1fc)](_0x5ee2ec[_0x1b66da(0x1f9)](process[_0x1b66da(0x1fe)]),'resources/app/versions/'+qqVersionConfigInfo['curVersion']+_0x1b66da(0x1f2)));let WrapperLoader=_0x5ee2ec[_0x1b66da(0x1fc)](__dirname,_0x1b66da(0x1f1));_0x3c334a[_0x1b66da(0x1fb)](WrapperLoader,'\x0amodule.exports\x20=\x20require(\x22'+wrapperNodePath[_0x1b66da(0x1f8)](/\\/g,'\x5c\x5c')+_0x1b66da(0x1fa));const QQWrapper=(await import('file://'+WrapperLoader))[_0x1b66da(0x1f6)];export default QQWrapper;

View File

@@ -1,39 +0,0 @@
import * as frida from 'frida';
import { promises as fs } from 'fs';
import path from 'node:path';
async function loadFridaScript(scriptPath: string): Promise<void> {
try {
// Attach to the process
const currentPid = process.pid;
console.log('Attaching to process:', currentPid);
const targetProcess = await frida.attach(currentPid);
// Read the script file
const scriptCode = await fs.readFile(scriptPath, { encoding: 'utf8' });
// Create the script in the target process
const script = await targetProcess.createScript(scriptCode);
// Connect to script messages
script.message.connect((message, data) => {
if (message.type === 'send') {
console.log('[Script]:', message.payload);
} else if (message.type === 'error') {
console.error('[Script Error]:', message.stack);
}
});
// Load the script into the target process
await script.load();
console.log('Script loaded successfully and is now running.');
} catch (error) {
console.error('Failed to load script:', error);
}
}
export function hookInit() {
// Assuming the process name and script file path are correct
loadFridaScript(path.join(path.resolve(__dirname), 'frida_script.js')).catch(console.error);
}

View File

@@ -1,24 +0,0 @@
const moduleName = 'wrapper.node';
const offset = 0x18152AFE0; // 静态地址偏移
// 查找模块基地址
const baseAddress = Module.findBaseAddress(moduleName);
if (!baseAddress) {
throw new Error('Module not found.');
}
// 计算绝对地址
const absoluteAddress = baseAddress.add(offset);
// 设置拦截器
Interceptor.attach(absoluteAddress, {
onEnter: function(args) {
console.log(`[+] Function at offset ${offset} in wrapper.node was called`);
console.log('Argument 0:', args[0].toInt32());
},
onLeave: function(retval) {
console.log('Return value:', retval.toInt32());
// 可以在这里修改返回值
retval.replace(42);
}
});

View File

@@ -1,23 +0,0 @@
const frida = require('frida');
const fs = require('fs');
const path = require('path');
async function main() {
// 获取当前 Node.js 进程的 ID
const pid = process.pid;
const session = await frida.attach(pid); // 附加到当前进程
const scriptCode = fs.readFileSync(path.join(path.resolve(__dirname), 'frida_script.js'), 'utf-8');
const script = await session.createScript(scriptCode);
script.message.connect(message => {
console.log('Message from Frida:', message);
});
await script.load();
console.log('Frida script has been loaded successfully.');
}
main().catch(err => {
console.error(err);
});

View File

@@ -2,6 +2,7 @@ import { napCatCore } from '@/core';
import { program } from 'commander';
import qrcode from 'qrcode-terminal';
import fs from 'fs/promises';
import fsSync from 'fs';
import path from 'node:path';
import { checkVersion } from '@/common/utils/version';
import { log, logDebug, logError, LogLevel, setLogLevel } from '@/common/utils/log';
@@ -9,6 +10,13 @@ import { NapCatOnebot11 } from '@/onebot11/main';
import { InitWebUi } from './webui/index';
import { WebUiDataRuntime } from './webui/src/helper/Data';
import { UpdateConfig } from './common/utils/helper';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
program
.option('-q, --qq <type>', 'QQ号')
.parse(process.argv);
@@ -19,10 +27,8 @@ UpdateConfig().catch(logError);
InitWebUi();
const cmdOptions = program.opts();
// console.log(process.argv);
checkVersion().then((remoteVersion: string) => {
const localVersion = require('./package.json').version;
checkVersion().then(async (remoteVersion: string) => {
const localVersion = JSON.parse(fsSync.readFileSync(path.join(__dirname, 'package.json')).toString()).version;
const localVersionList = localVersion.split('.');
const remoteVersionList = remoteVersion.split('.');
log('[NapCat] 当前版本:', localVersion);
@@ -37,10 +43,10 @@ checkVersion().then((remoteVersion: string) => {
logDebug('[NapCat] 当前已是最新版本');
return;
}).catch((e) => {
logError('[NapCat] 检测更新失败');
logError('[NapCat] 检测更新失败', e);
});
// 不是很好待优化
let NapCat_OneBot11 = new NapCatOnebot11();
const NapCat_OneBot11 = new NapCatOnebot11();
WebUiDataRuntime.setOB11ConfigCall(NapCat_OneBot11.SetConfig);

View File

@@ -20,11 +20,11 @@ class BaseAction<PayloadType, ReturnDataType> {
return {
valid: false,
message: errorMessages.join('\n') as string || '未知错误'
}
};
}
return {
valid: true
}
};
}
public async handle(payload: PayloadType): Promise<OB11Return<ReturnDataType | null>> {

View File

@@ -0,0 +1,46 @@
import { DeviceList } from '@/onebot11/main';
import BaseAction from '../BaseAction';
import { ActionName } from '../types';
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
import { checkFileReceived, uri2local } from '@/common/utils/file';
import { NTQQSystemApi } from '@/core';
import fs from 'fs';
const SchemaData = {
type: 'object',
properties: {
image: { type: 'string' },
},
required: ['image']
} as const satisfies JSONSchema;
type Payload = FromSchema<typeof SchemaData>;
export class OCRImage extends BaseAction<Payload, any> {
actionName = ActionName.OCRImage;
PayloadSchema = SchemaData;
protected async _handle(payload: Payload) {
const { path, isLocal, errMsg } = (await uri2local(payload.image));
if (errMsg) {
throw `OCR ${payload.file}失败,image字段可能格式不正确`;
}
if (path) {
await checkFileReceived(path, 5000); // 文件不存在QQ会崩溃需要提前判断
const ret = await NTQQSystemApi.ORCImage(path);
if (!isLocal) {
fs.unlink(path, () => { });
}
if (!ret) {
throw `OCR ${payload.file}失败`;
}
return ret.result;
}
if (!isLocal) {
fs.unlink(path, () => { });
}
throw `OCR ${payload.file}失败,文件可能不存在`;
}
}
export class IOCRImage extends OCRImage {
actionName = ActionName.IOCRImage;
}

View File

@@ -5,7 +5,7 @@ import BaseAction from '../BaseAction';
import { ActionName, BaseCheckResult } from '../types';
import { NTQQUserApi } from '@/core/apis';
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
import Ajv from "ajv"
import Ajv from 'ajv';
// 设置在线状态
const SchemaData = {

View File

@@ -13,7 +13,7 @@ export default class SetAvatar extends BaseAction<Payload, null> {
actionName = ActionName.SetQQAvatar;
// 用不着复杂检测
protected async check(payload: Payload): Promise<BaseCheckResult> {
if (!payload.file || typeof payload.file != "string") {
if (!payload.file || typeof payload.file != 'string') {
return {
valid: false,
message: 'file字段不能为空或者类型错误',

View File

@@ -17,9 +17,9 @@ const SchemaData = {
base64: { type: 'string' },
name: { type: 'string' },
headers: {
type: ["string", "array"],
type: ['string', 'array'],
items: {
type: "string"
type: 'string'
}
}
},

View File

@@ -0,0 +1,19 @@
import { DeviceList } from '@/onebot11/main';
import BaseAction from '../BaseAction';
import { ActionName } from '../types';
import { JSONSchema } from 'json-schema-to-ts';
const SchemaData = {
type: 'object',
properties: {
no_cache: { type: 'boolean' },
}
} as const satisfies JSONSchema;
export class GetOnlineClient extends BaseAction<void, Array<any>> {
actionName = ActionName.GetOnlineClient;
protected async _handle(payload: void) {
return DeviceList;
}
}

View File

@@ -1,6 +1,6 @@
import { log } from '@/common/utils/log';
import BaseAction from '../BaseAction'
import { ActionName } from '../types'
import BaseAction from '../BaseAction';
import { ActionName } from '../types';
import { QuickAction, QuickActionEvent, handleQuickOperation } from '@/onebot11/server/postOB11Event';
interface Payload{
@@ -9,9 +9,9 @@ interface Payload{
}
export class GoCQHTTHandleQuickAction extends BaseAction<Payload, null>{
actionName = ActionName.GoCQHTTP_HandleQuickAction
actionName = ActionName.GoCQHTTP_HandleQuickAction;
protected async _handle(payload: Payload): Promise<null> {
handleQuickOperation(payload.context, payload.operation).then().catch(log);
return null
return null;
}
}

View File

@@ -5,61 +5,57 @@ import { NTQQGroupApi, WebApi } from '@/core/apis';
import { unlink } from 'node:fs';
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
const SchemaData = {
type: 'object',
properties: {
group_id: { type: 'number' },
content: { type: 'string' },
image: { type: 'string' },
pinned: { type: 'number' },
confirmRequired: { type: 'number' }
},
required: ['group_id', 'content']
type: 'object',
properties: {
group_id: { type: 'number' },
content: { type: 'string' },
image: { type: 'string' },
pinned: { type: 'number' },
confirmRequired: { type: 'number' }
},
required: ['group_id', 'content']
} as const satisfies JSONSchema;
type Payload = FromSchema<typeof SchemaData>;
export class SendGroupNotice extends BaseAction<Payload, null> {
actionName = ActionName.GoCQHTTP_SendGroupNotice;
protected async _handle(payload: Payload) {
let UploadImage: { id: string, width: number, height: number } | undefined = undefined;
if (payload.image) {
//公告图逻辑
let Image_path, Image_errMsg, Image_IsLocal = false;
let Uri2LocalRet = (await uri2local(payload.image));
Image_errMsg = Uri2LocalRet.errMsg;
Image_path = Uri2LocalRet.path;
Image_IsLocal = Uri2LocalRet.isLocal;
if (Image_errMsg) {
throw `群公告${payload.image}设置失败,image字段可能格式不正确`;
}
if (!Image_path) {
throw `群公告${payload.image}设置失败,获取资源失败`;
}
await checkFileReceived(Image_path, 5000); // 文件不存在QQ会崩溃需要提前判断
let ImageUploadResult = await NTQQGroupApi.uploadGroupBulletinPic(payload.group_id.toString(), Image_path);
if (ImageUploadResult.errCode != 0) {
throw `群公告${payload.image}设置失败,图片上传失败`;
}
if (!Image_IsLocal) {
unlink(Image_path, () => { });
}
UploadImage = ImageUploadResult.picInfo;
}
let Notice_Pinned = 0;
let Notice_confirmRequired = 0;
if (!payload.pinned) {
Notice_Pinned = 0;
}
if (!payload.confirmRequired) {
Notice_confirmRequired = 0;
}
let PublishGroupBulletinResult = await NTQQGroupApi.publishGroupBulletin(payload.group_id.toString(), payload.content, UploadImage, Notice_Pinned, Notice_confirmRequired);
if (PublishGroupBulletinResult.result! = 0) {
throw `设置群公告失败,错误信息:${PublishGroupBulletinResult.errMsg}`;
}
// 下面实现扬了
//await WebApi.setGroupNotice(payload.group_id, payload.content) ;
return null;
actionName = ActionName.GoCQHTTP_SendGroupNotice;
protected async _handle(payload: Payload) {
let UploadImage: { id: string, width: number, height: number } | undefined = undefined;
if (payload.image) {
//公告图逻辑
const { errMsg, path, isLocal } = (await uri2local(payload.image));
if (errMsg) {
throw `群公告${payload.image}设置失败,image字段可能格式不正确`;
}
if (!path) {
throw `群公告${payload.image}设置失败,获取资源失败`;
}
await checkFileReceived(path, 5000); // 文件不存在QQ会崩溃需要提前判断
const ImageUploadResult = await NTQQGroupApi.uploadGroupBulletinPic(payload.group_id.toString(), path);
if (ImageUploadResult.errCode != 0) {
throw `群公告${payload.image}设置失败,图片上传失败`;
}
if (!isLocal) {
unlink(path, () => { });
}
UploadImage = ImageUploadResult.picInfo;
}
let Notice_Pinned = 0;
let Notice_confirmRequired = 0;
if (!payload.pinned) {
Notice_Pinned = 0;
}
if (!payload.confirmRequired) {
Notice_confirmRequired = 0;
}
const PublishGroupBulletinResult = await NTQQGroupApi.publishGroupBulletin(payload.group_id.toString(), payload.content, UploadImage, Notice_Pinned, Notice_confirmRequired);
if (PublishGroupBulletinResult.result != 0) {
throw `设置群公告失败,错误信息:${PublishGroupBulletinResult.errMsg}`;
}
// 下面实现扬了
//await WebApi.setGroupNotice(payload.group_id, payload.content) ;
return null;
}
}

View File

@@ -3,7 +3,7 @@ import { OB11GroupMember } from '../../types';
import { OB11Constructor } from '../../constructor';
import BaseAction from '../BaseAction';
import { ActionName } from '../types';
import { napCatCore, NTQQGroupApi } from '@/core';
import { napCatCore, NTQQGroupApi, NTQQUserApi, SignMiniApp } from '@/core';
import { WebApi } from '@/core/apis/webapi';
import { logDebug } from '@/common/utils/log';
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
@@ -29,7 +29,7 @@ class GetGroupMemberList extends BaseAction<Payload, OB11GroupMember[]> {
throw (`${payload.group_id}不存在`);
}
if (payload.no_cache == true || payload.no_cache === 'true') {
// webGroupMembers = await WebApi.getGroupMembers(payload.group_id.toString());
// webGroupMembers = await WebApi.getGroupMembers(payload.group_id.toString());'
const _groupMembers = await NTQQGroupApi.getGroupMembers(payload.group_id.toString());
groupMembers.set(group.groupCode, _groupMembers);
}
@@ -37,6 +37,7 @@ class GetGroupMemberList extends BaseAction<Payload, OB11GroupMember[]> {
// 方便索引处理
for (let i = 0, len = _groupMembers.length; i < len; i++) {
MemberMap.set(_groupMembers[i].user_id, _groupMembers[i]);
}
// 合并数据

View File

@@ -18,8 +18,8 @@ export class GetGroupSystemMsg extends BaseAction<void, any> {
actionName = ActionName.GetGroupSystemMsg;
protected async _handle(payload: void) {
// 默认10条 该api未完整实现 包括响应数据规范化 类型规范化
let SingleScreenNotifies = await NTQQGroupApi.getSingleScreenNotifies(10);
let retData: any = { InvitedRequest: [], join_requests: [] };
const SingleScreenNotifies = await NTQQGroupApi.getSingleScreenNotifies(10);
const retData: any = { InvitedRequest: [], join_requests: [] };
for (const SSNotify of SingleScreenNotifies) {
if (SSNotify.type == 1) {
retData.InvitedRequest.push({

View File

@@ -12,7 +12,7 @@ const SchemaData = {
approve: { type: 'boolean' },
reason: { type: 'string' }
},
required: ['flag', 'approve', 'reson']
required: ['flag', 'approve', 'reason']
} as const satisfies JSONSchema;
type Payload = FromSchema<typeof SchemaData>;

View File

@@ -58,6 +58,8 @@ import { Reboot, RebootNormol } from './system/Reboot';
import { GetGroupHonorInfo } from './go-cqhttp/GetGroupHonorInfo';
import { GoCQHTTHandleQuickAction } from './go-cqhttp/QuickAction';
import { GetGroupSystemMsg } from './group/GetGroupSystemMsg';
import { GetOnlineClient } from './go-cqhttp/GetOnlineClient';
import { IOCRImage, OCRImage } from './extends/OCRImage';
export const actionHandlers = [
new RebootNormol(),
@@ -104,6 +106,9 @@ export const actionHandlers = [
new GetRobotUinRange(),
new GetFriendWithCategory(),
//以下为go-cqhttp api
new GetOnlineClient(),
new OCRImage(),
new IOCRImage(),
new GetGroupHonorInfo(),
new SendGroupNotice(),
new GetGroupNotice(),

View File

@@ -5,6 +5,7 @@ import {
Group,
IdMusicSignPostData,
NTQQFileApi,
SendArkElement,
SendMessageElement,
SendMsgElementConstructor
} from '@/core';
@@ -104,7 +105,7 @@ const _handlers: {
// File service
[OB11MessageDataType.image]: async (sendMsg, context) => {
let PicEle = await SendMsgElementConstructor.pic(
const PicEle = await SendMsgElementConstructor.pic(
(await handleOb11FileLikeMessage(sendMsg, context)).path,
sendMsg.data.summary || '',
sendMsg.data.subType || 0
@@ -132,6 +133,7 @@ const _handlers: {
return SendMsgElementConstructor.video(path, fileName, thumb);
},
[OB11MessageDataType.miniapp]: async ({ data: any }) => SendMsgElementConstructor.miniapp(),
[OB11MessageDataType.voice]: async (sendMsg, context) =>
SendMsgElementConstructor.ptt((await handleOb11FileLikeMessage(sendMsg, context)).path),

View File

@@ -51,16 +51,16 @@ export async function sendMsg(peer: Peer, sendElements: SendMessageElement[], de
totalSize += fs.statSync(fileElement.videoElement.filePath).size;
}
if (fileElement.elementType === ElementType.PIC) {
totalSize += fs.statSync(fileElement.picElement.sourcePath).size
totalSize += fs.statSync(fileElement.picElement.sourcePath).size;
}
}
//且 PredictTime ((totalSize / 1024 / 512) * 1000)不等于Nan
let PredictTime = totalSize / 1024 / 512 * 1000;
const PredictTime = totalSize / 1024 / 512 * 1000;
if (!Number.isNaN(PredictTime)) {
timeout += PredictTime// 5S Basic Timeout + PredictTime( For File 512kb/s )
timeout += PredictTime;// 5S Basic Timeout + PredictTime( For File 512kb/s )
}
} catch (e) {
logError("发送消息计算预计时间异常", e);
logError('发送消息计算预计时间异常', e);
}
const returnMsg = await NTQQMsgApi.sendMsg(peer, sendElements, waitComplete, timeout);
try {

View File

@@ -5,40 +5,40 @@ import { selfInfo } from '@/core/data';
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
const SchemaData = {
type: 'object',
properties: {
delay: { type: 'number' }
},
required: ['delay']
type: 'object',
properties: {
delay: { type: 'number' }
},
required: ['delay']
} as const satisfies JSONSchema;
type Payload = FromSchema<typeof SchemaData>;
export class Reboot extends BaseAction<Payload, null> {
actionName = ActionName.Reboot;
actionName = ActionName.Reboot;
protected async _handle(payload: Payload): Promise<null> {
if (payload.delay) {
setTimeout(() => {
rebootWithQuickLogin(selfInfo.uin);
}, payload.delay);
} else {
rebootWithQuickLogin(selfInfo.uin);
}
return null;
protected async _handle(payload: Payload): Promise<null> {
if (payload.delay) {
setTimeout(() => {
rebootWithQuickLogin(selfInfo.uin);
}, payload.delay);
} else {
rebootWithQuickLogin(selfInfo.uin);
}
return null;
}
}
export class RebootNormol extends BaseAction<Payload, null> {
actionName = ActionName.RebootNormol;
actionName = ActionName.RebootNormol;
protected async _handle(payload: Payload): Promise<null> {
if (payload.delay) {
setTimeout(() => {
rebootWithNormolLogin();
}, payload.delay);
} else {
rebootWithNormolLogin();
}
return null;
protected async _handle(payload: Payload): Promise<null> {
if (payload.delay) {
setTimeout(() => {
rebootWithNormolLogin();
}, payload.delay);
} else {
rebootWithNormolLogin();
}
return null;
}
}

View File

@@ -60,7 +60,7 @@ export enum ActionName {
CleanCache = 'clean_cache',
GetCookies = 'get_cookies',
// 以下为go-cqhttp api
GoCQHTTP_HandleQuickAction = ".handle_quick_operation",
GoCQHTTP_HandleQuickAction = '.handle_quick_operation',
GetGroupHonorInfo = 'get_group_honor_info',
GoCQHTTP_GetEssenceMsg = 'get_essence_msg_list',
GoCQHTTP_SendGroupNotice = '_send_group_notice',
@@ -78,5 +78,8 @@ export enum ActionName {
GoCQHTTP_GetGroupMsgHistory = 'get_group_msg_history',
GoCQHTTP_GetForwardMsg = 'get_forward_msg',
GetFriendMsgHistory = 'get_friend_msg_history',
GetGroupSystemMsg = "get_group_system_msg"
GetGroupSystemMsg = 'get_group_system_msg',
GetOnlineClient = "get_online_clients",
OCRImage = "ocr_image",
IOCRImage = ".ocr_image"
}

View File

@@ -3,7 +3,7 @@ import { OB11Constructor } from '../../constructor';
import { friends, selfInfo } from '@/core/data';
import BaseAction from '../BaseAction';
import { ActionName } from '../types';
import { NTQQUserApi } from '@/core/apis';
import { NTQQUserApi, WebApi } from '@/core/apis';
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
interface Response {
cookies: string
@@ -22,9 +22,17 @@ export class GetCookies extends BaseAction<Payload, Response> {
actionName = ActionName.GetCookies;
PayloadSchema = SchemaData;
protected async _handle(payload: Payload) {
if (!payload.domain){
if (!payload.domain) {
throw new Error('缺少参数 domain');
}
if (payload.domain.endsWith("qzone.qq.com")) {
const _Skey = await NTQQUserApi.getSkey() as string;
// 兼容整个 *.qzone.qq.com
let data = (await NTQQUserApi.getQzoneCookies());
const Bkn = WebApi.genBkn(data.p_skey);
const CookieValue = 'p_skey=' + data.p_skey + '; skey=' + data.skey + '; p_uin=o' + selfInfo.uin + '; uin=o' + selfInfo.uin;
return { cookies: CookieValue };
}
const _Skey = await NTQQUserApi.getSkey();
// 取Skey
// 先NodeIKernelTicketService.forceFetchClientKey('')
@@ -52,7 +60,7 @@ export class GetCookies extends BaseAction<Payload, Response> {
if (!_PSkey || !_Skey) {
throw new Error('获取Cookies失败');
}
const cookies = `p_skey=${_PSkey}; skey=${_Skey}; p_uin=o${selfInfo.uin}`;
const cookies = `p_skey=${_PSkey}; skey=${_Skey}; p_uin=o${selfInfo.uin}; uin=o${selfInfo.uin}`;
return {
cookies
};

View File

@@ -1,9 +1,9 @@
import fs from "node:fs";
import path from "node:path";
import { selfInfo } from "@/core/data";
import { logDebug, logError } from "@/common/utils/log";
import { ConfigBase } from "@/common/utils/ConfigBase";
import { json } from "stream/consumers";
import fs from 'node:fs';
import path from 'node:path';
import { selfInfo } from '@/core/data';
import { logDebug, logError } from '@/common/utils/log';
import { ConfigBase } from '@/common/utils/ConfigBase';
import { json } from 'stream/consumers';
export interface OB11Config {
http: {
@@ -27,7 +27,7 @@ export interface OB11Config {
debug: boolean;
heartInterval: number;
messagePostFormat: "array" | "string";
messagePostFormat: 'array' | 'string';
enableLocalFile2Url: boolean;
musicSignUrl: string;
reportSelfMessage: boolean;
@@ -41,16 +41,16 @@ export interface OB11Config {
class Config extends ConfigBase<OB11Config> implements OB11Config {
http = {
enable: false,
host: "",
host: '',
port: 3000,
secret: "",
secret: '',
enableHeart: false,
enablePost: false,
postUrls: [],
};
ws = {
enable: false,
host: "",
host: '',
port: 3001,
};
reverseWs = {
@@ -59,11 +59,11 @@ class Config extends ConfigBase<OB11Config> implements OB11Config {
};
debug = false;
heartInterval = 30000;
messagePostFormat: "array" | "string" = "array";
messagePostFormat: 'array' | 'string' = 'array';
enableLocalFile2Url = true;
musicSignUrl = "";
musicSignUrl = '';
reportSelfMessage = false;
token = "";
token = '';
getConfigPath() {
return path.join(this.getConfigDir(), `onebot11_${selfInfo.uin}.json`);

View File

@@ -120,10 +120,15 @@ export class OB11Constructor {
}
else if (element.textElement) {
message_data['type'] = 'text';
const text = element.textElement.content;
let text = element.textElement.content;
if (!text.trim()) {
continue;
}
// 兼容 9.7.x 换行符
if (text.indexOf('\n') === -1 && text.indexOf('\r\n') === -1) {
text = text.replace(/\r/g, '\n');
}
message_data['data']['text'] = text;
}
else if (element.replyElement) {

View File

@@ -31,10 +31,23 @@ import { OB11GroupRecallNoticeEvent } from '@/onebot11/event/notice/OB11GroupRec
import { logMessage, logNotice, logRequest } from '@/onebot11/log';
import { OB11Message } from '@/onebot11/types';
import { OB11LifeCycleEvent } from './event/meta/OB11LifeCycleEvent';
import { Data as SysData } from '@/proto/SysMessage'
import { Data as SysData } from '@/proto/SysMessage';
import { Data as DeviceData } from '@/proto/SysMessage.DeviceChange';
import { OB11FriendPokeEvent, OB11GroupPokeEvent } from './event/notice/OB11PokeEvent';
import { isEqual } from '@/common/utils/helper';
//下面几个其实应该移进Core-Data 缓存实现 但是现在在这里方便
//
export interface LineDevice {
app_id: string;
device_name: string;
device_kind: string;
}
export let DeviceList = new Array<LineDevice>();
//peer->cached(boolen)
let PokeCache = new Map<string, boolean>();
const PokeCache = new Map<string, boolean>();
export class NapCatOnebot11 {
private bootTime: number = Date.now() / 1000; // 秒
@@ -71,9 +84,14 @@ export class NapCatOnebot11 {
// 启动http心跳
httpHeart.start();
}
// MsgListener
// Create MsgListener
const msgListener = new MsgListener();
msgListener.onRecvSysMsg = (protobufData: number[]) => {
msgListener.onRecvSysMsg = async (protobufData: number[]) => {
function buf2hex(buffer: Buffer) {
return [...new Uint8Array(buffer)]
.map(x => x.toString(16).padStart(2, '0'))
.join('');
}
// let Data: Data = {
// header: {
// GroupNumber: 0,
@@ -92,12 +110,13 @@ export class NapCatOnebot11 {
// }
// };
try {
let sysMsg = SysData.fromBinary(Buffer.from(protobufData));
let peeruin = sysMsg.header[0].groupNumber;
let peeruid = sysMsg.header[0].groupString;
let MsgType = sysMsg.body[0].msgType;
let subType0 = sysMsg.body[0].subType0;
let subType1 = sysMsg.body[0].subType1;
//console.log(buf2hex(Buffer.from(protobufData)));
const sysMsg = SysData.fromBinary(Buffer.from(protobufData));
const peeruin = sysMsg.header[0].peerNumber;
const peeruid = sysMsg.header[0].peerString;
const MsgType = sysMsg.body[0].msgType;
const subType0 = sysMsg.body[0].subType0;
const subType1 = sysMsg.body[0].subType1;
let pokeEvent: OB11FriendPokeEvent | OB11GroupPokeEvent;
//console.log(peeruid);
if (MsgType == 528 && subType0 == 290) {
@@ -106,7 +125,7 @@ export class NapCatOnebot11 {
PokeCache.delete(peeruid);
} else {
PokeCache.set(peeruid, false);
log("[私聊] 用户 ", peeruin, " 对你戳一戳");
log('[私聊] 用户 ', peeruin, ' 对你戳一戳');
pokeEvent = new OB11FriendPokeEvent(peeruin);
postOB11Event(pokeEvent);
}
@@ -117,15 +136,55 @@ export class NapCatOnebot11 {
PokeCache.delete(peeruid);
} else {
PokeCache.set(peeruid, false);
log("[群聊] 群组 ", peeruin, " 戳一戳");
log('[群聊] 群组 ', peeruin, ' 戳一戳');
pokeEvent = new OB11GroupPokeEvent(peeruin);
postOB11Event(pokeEvent);
}
}
if (MsgType == 528 && subType0 == 349) {
const sysDeviceMsg = DeviceData.fromBinary(Buffer.from(protobufData));
DeviceList = [];
sysDeviceMsg.event[0].content[0].devices.forEach(device => {
DeviceList.push({
app_id: '0',
device_name: device.deviceName,
device_kind: 'none'
})
// log('[设备列表] 设备名称: ' + device.deviceName);
});
}
// 未区分增加与减少
// if (MsgType == 34 && subType0 == 0) {
// const role = (await getGroupMember(peeruin, selfInfo.uin))?.role;
// const isPrivilege = role === 3 || role === 4;
// if (!isPrivilege) {
// const leaveUin = uid2UinMap[sysMsg.other[0].event[0].peerString];
// log('[群聊] 群组 ', peeruin, ' 成员' + leaveUin + '退出');
// const groupDecreaseEvent = new OB11GroupDecreaseEvent(peeruin, parseInt(leaveUin), 0, 'leave');// 不知道怎么出去的
// postOB11Event(groupDecreaseEvent, true);
// }
// }
// MsgType (SubType) EventName
// 33 GroupMemIncreased
// 34 GroupMemberDecreased
// 44 GroupAdminChange
// 82 GroupMessage
// 84 GroupApply
// 87 InviteGroup
// 528 35 FriendApply
// 528 39 CardChange
// 528 68 GroupApply
// 528 138 C2CRecall
// 528 290 C2CPoke
// 528 349 DeviceChange
// 732 12 GroupBan
// 732 16 GroupUniqueTitleChange
// 732 17 GroupRecall
// 732 20 GroupCommonTips
// 732 21 EssenceMessage
} catch (e) {
log("解析SysMsg异常", e);
log('解析SysMsg异常', e);
// console.log(e);
//
}
};
msgListener.onKickedOffLine = (Info: KickedOffLineInfo) => {
@@ -184,15 +243,16 @@ export class NapCatOnebot11 {
};
groupListener.onMemberInfoChange = async (groupCode: string, changeType: number, members: Map<string, GroupMember>) => {
// 如果自身是非管理员也许要从这里获取Delete 成员变动 待测试与验证
let role = (await getGroupMember(groupCode, selfInfo.uin))?.role;
let isPrivilege = role === 3 || role === 4;
const role = (await getGroupMember(groupCode, selfInfo.uin))?.role;
const isPrivilege = role === 3 || role === 4;
for (const member of members.values()) {
if (member?.isDelete && !isPrivilege) {
console.log('[群聊] 群组 ', groupCode, ' 成员' + member.uin + '退出');
const groupDecreaseEvent = new OB11GroupDecreaseEvent(parseInt(groupCode), parseInt(member.uin), 0, 'leave');// 不知道怎么出去的
postOB11Event(groupDecreaseEvent, true);
}
}
}
};
groupListener.onJoinGroupNotify = (...notify) => {
// console.log('ob11 onJoinGroupNotify', notify);
};
@@ -253,21 +313,6 @@ export class NapCatOnebot11 {
}
async SetConfig(NewOb11: OB11Config) {
try {
function isEqual(obj1: any, obj2: any) {
if (obj1 === obj2) return true;
if (obj1 == null || obj2 == null) return false;
if (typeof obj1 !== 'object' || typeof obj2 !== 'object') return obj1 === obj2;
const keys1 = Object.keys(obj1);
const keys2 = Object.keys(obj2);
if (keys1.length !== keys2.length) return false;
for (let key of keys1) {
if (!isEqual(obj1[key], obj2[key])) return false;
}
return true;
}
// if (!NewOb11 || typeof NewOb11 !== 'object') {
// throw new Error('Invalid configuration object');
// }

View File

@@ -170,26 +170,26 @@ async function handleGroupRequest(request: OB11GroupRequestEvent, quickAction: Q
groupNotifies[request.flag],
quickAction.approve ? GroupRequestOperateTypes.approve : GroupRequestOperateTypes.reject,
quickAction.reason,
).then().catch(logError)
).then().catch(logError);
}
}
async function handleFriendRequest(request: OB11FriendRequestEvent, quickAction: QuickActionFriendRequest) {
if (!isNull(quickAction.approve)) {
NTQQFriendApi.handleFriendRequest(friendRequests[request.flag], !!quickAction.approve).then().catch(logError)
NTQQFriendApi.handleFriendRequest(friendRequests[request.flag], !!quickAction.approve).then().catch(logError);
}
}
export async function handleQuickOperation(context: QuickActionEvent, quickAction: QuickAction) {
if (context.post_type === 'message') {
handleMsg(context as OB11Message, quickAction).then().catch(logError)
handleMsg(context as OB11Message, quickAction).then().catch(logError);
}
if (context.post_type === 'request') {
const friendRequest = context as OB11FriendRequestEvent;
const groupRequest = context as OB11GroupRequestEvent;
if ((friendRequest).request_type === 'friend') {
handleFriendRequest(friendRequest, quickAction).then().catch(logError)
handleFriendRequest(friendRequest, quickAction).then().catch(logError);
}
else if (groupRequest.request_type === 'group') {
handleGroupRequest(groupRequest, quickAction).then().catch(logError)
handleGroupRequest(groupRequest, quickAction).then().catch(logError);
}
}
}

View File

@@ -58,7 +58,8 @@ export enum OB11MessageDataType {
xml = 'xml',
poke = 'poke',
dice = 'dice',
RPS = 'rps'
RPS = 'rps',
miniapp = 'miniapp'//json类
}
export interface OB11MessageMFace {

View File

@@ -1 +1 @@
export const version = '1.3.6';
export const version = '1.4.0';

View File

@@ -0,0 +1,32 @@
syntax = "proto3";
package SysMessage;
message Data {
repeated Header header = 1;
repeated Body body = 2;
repeated Event event = 3;
}
message Event {
repeated Content content = 2;
}
message Devices {
string deviceName = 5;
string appname = 9;
}
message Content {
repeated Devices devices = 5;
}
message Header {
uint32 PeerNumber = 1;
string PeerString = 2;
uint32 Uin = 5;
optional string Uid = 6;
}
message Body {
uint32 MsgType = 1;
uint32 SubType_0 = 2;
uint32 SubType_1 = 3;
uint32 MsgSeq= 5;
uint32 Time = 6;
uint64 MsgID = 12;
uint32 Other = 13;
}

View File

@@ -0,0 +1,491 @@
// @generated by protobuf-ts 2.9.4
// @generated from protobuf file "SysMessage.DeviceChange.proto" (package "SysMessage", syntax proto3)
// tslint:disable
import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
import type { IBinaryWriter } from "@protobuf-ts/runtime";
import { WireType } from "@protobuf-ts/runtime";
import type { BinaryReadOptions } from "@protobuf-ts/runtime";
import type { IBinaryReader } from "@protobuf-ts/runtime";
import { UnknownFieldHandler } from "@protobuf-ts/runtime";
import type { PartialMessage } from "@protobuf-ts/runtime";
import { reflectionMergePartial } from "@protobuf-ts/runtime";
import { MessageType } from "@protobuf-ts/runtime";
/**
* @generated from protobuf message SysMessage.Data
*/
export interface Data {
/**
* @generated from protobuf field: repeated SysMessage.Header header = 1;
*/
header: Header[];
/**
* @generated from protobuf field: repeated SysMessage.Body body = 2;
*/
body: Body[];
/**
* @generated from protobuf field: repeated SysMessage.Event event = 3;
*/
event: Event[];
}
/**
* @generated from protobuf message SysMessage.Event
*/
export interface Event {
/**
* @generated from protobuf field: repeated SysMessage.Content content = 2;
*/
content: Content[];
}
/**
* @generated from protobuf message SysMessage.Devices
*/
export interface Devices {
/**
* @generated from protobuf field: string deviceName = 5;
*/
deviceName: string;
/**
* @generated from protobuf field: string appname = 9;
*/
appname: string;
}
/**
* @generated from protobuf message SysMessage.Content
*/
export interface Content {
/**
* @generated from protobuf field: repeated SysMessage.Devices devices = 5;
*/
devices: Devices[];
}
/**
* @generated from protobuf message SysMessage.Header
*/
export interface Header {
/**
* @generated from protobuf field: uint32 PeerNumber = 1 [json_name = "PeerNumber"];
*/
peerNumber: number;
/**
* @generated from protobuf field: string PeerString = 2 [json_name = "PeerString"];
*/
peerString: string;
/**
* @generated from protobuf field: uint32 Uin = 5 [json_name = "Uin"];
*/
uin: number;
/**
* @generated from protobuf field: optional string Uid = 6 [json_name = "Uid"];
*/
uid?: string;
}
/**
* @generated from protobuf message SysMessage.Body
*/
export interface Body {
/**
* @generated from protobuf field: uint32 MsgType = 1 [json_name = "MsgType"];
*/
msgType: number;
/**
* @generated from protobuf field: uint32 SubType_0 = 2 [json_name = "SubType0"];
*/
subType0: number;
/**
* @generated from protobuf field: uint32 SubType_1 = 3 [json_name = "SubType1"];
*/
subType1: number;
/**
* @generated from protobuf field: uint32 MsgSeq = 5 [json_name = "MsgSeq"];
*/
msgSeq: number;
/**
* @generated from protobuf field: uint32 Time = 6 [json_name = "Time"];
*/
time: number;
/**
* @generated from protobuf field: uint64 MsgID = 12 [json_name = "MsgID"];
*/
msgID: bigint;
/**
* @generated from protobuf field: uint32 Other = 13 [json_name = "Other"];
*/
other: number;
}
// @generated message type with reflection information, may provide speed optimized methods
class Data$Type extends MessageType<Data> {
constructor() {
super("SysMessage.Data", [
{ no: 1, name: "header", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Header },
{ no: 2, name: "body", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Body },
{ no: 3, name: "event", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Event }
]);
}
create(value?: PartialMessage<Data>): Data {
const message = globalThis.Object.create((this.messagePrototype!));
message.header = [];
message.body = [];
message.event = [];
if (value !== undefined)
reflectionMergePartial<Data>(this, message, value);
return message;
}
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Data): Data {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* repeated SysMessage.Header header */ 1:
message.header.push(Header.internalBinaryRead(reader, reader.uint32(), options));
break;
case /* repeated SysMessage.Body body */ 2:
message.body.push(Body.internalBinaryRead(reader, reader.uint32(), options));
break;
case /* repeated SysMessage.Event event */ 3:
message.event.push(Event.internalBinaryRead(reader, reader.uint32(), options));
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message: Data, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
/* repeated SysMessage.Header header = 1; */
for (let i = 0; i < message.header.length; i++)
Header.internalBinaryWrite(message.header[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
/* repeated SysMessage.Body body = 2; */
for (let i = 0; i < message.body.length; i++)
Body.internalBinaryWrite(message.body[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();
/* repeated SysMessage.Event event = 3; */
for (let i = 0; i < message.event.length; i++)
Event.internalBinaryWrite(message.event[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message SysMessage.Data
*/
export const Data = new Data$Type();
// @generated message type with reflection information, may provide speed optimized methods
class Event$Type extends MessageType<Event> {
constructor() {
super("SysMessage.Event", [
{ no: 2, name: "content", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Content }
]);
}
create(value?: PartialMessage<Event>): Event {
const message = globalThis.Object.create((this.messagePrototype!));
message.content = [];
if (value !== undefined)
reflectionMergePartial<Event>(this, message, value);
return message;
}
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Event): Event {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* repeated SysMessage.Content content */ 2:
message.content.push(Content.internalBinaryRead(reader, reader.uint32(), options));
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message: Event, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
/* repeated SysMessage.Content content = 2; */
for (let i = 0; i < message.content.length; i++)
Content.internalBinaryWrite(message.content[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message SysMessage.Event
*/
export const Event = new Event$Type();
// @generated message type with reflection information, may provide speed optimized methods
class Devices$Type extends MessageType<Devices> {
constructor() {
super("SysMessage.Devices", [
{ no: 5, name: "deviceName", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
{ no: 9, name: "appname", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
]);
}
create(value?: PartialMessage<Devices>): Devices {
const message = globalThis.Object.create((this.messagePrototype!));
message.deviceName = "";
message.appname = "";
if (value !== undefined)
reflectionMergePartial<Devices>(this, message, value);
return message;
}
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Devices): Devices {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* string deviceName */ 5:
message.deviceName = reader.string();
break;
case /* string appname */ 9:
message.appname = reader.string();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message: Devices, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
/* string deviceName = 5; */
if (message.deviceName !== "")
writer.tag(5, WireType.LengthDelimited).string(message.deviceName);
/* string appname = 9; */
if (message.appname !== "")
writer.tag(9, WireType.LengthDelimited).string(message.appname);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message SysMessage.Devices
*/
export const Devices = new Devices$Type();
// @generated message type with reflection information, may provide speed optimized methods
class Content$Type extends MessageType<Content> {
constructor() {
super("SysMessage.Content", [
{ no: 5, name: "devices", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Devices }
]);
}
create(value?: PartialMessage<Content>): Content {
const message = globalThis.Object.create((this.messagePrototype!));
message.devices = [];
if (value !== undefined)
reflectionMergePartial<Content>(this, message, value);
return message;
}
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Content): Content {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* repeated SysMessage.Devices devices */ 5:
message.devices.push(Devices.internalBinaryRead(reader, reader.uint32(), options));
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message: Content, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
/* repeated SysMessage.Devices devices = 5; */
for (let i = 0; i < message.devices.length; i++)
Devices.internalBinaryWrite(message.devices[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message SysMessage.Content
*/
export const Content = new Content$Type();
// @generated message type with reflection information, may provide speed optimized methods
class Header$Type extends MessageType<Header> {
constructor() {
super("SysMessage.Header", [
{ no: 1, name: "PeerNumber", kind: "scalar", jsonName: "PeerNumber", T: 13 /*ScalarType.UINT32*/ },
{ no: 2, name: "PeerString", kind: "scalar", jsonName: "PeerString", T: 9 /*ScalarType.STRING*/ },
{ no: 5, name: "Uin", kind: "scalar", jsonName: "Uin", T: 13 /*ScalarType.UINT32*/ },
{ no: 6, name: "Uid", kind: "scalar", jsonName: "Uid", opt: true, T: 9 /*ScalarType.STRING*/ }
]);
}
create(value?: PartialMessage<Header>): Header {
const message = globalThis.Object.create((this.messagePrototype!));
message.peerNumber = 0;
message.peerString = "";
message.uin = 0;
if (value !== undefined)
reflectionMergePartial<Header>(this, message, value);
return message;
}
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Header): Header {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* uint32 PeerNumber = 1 [json_name = "PeerNumber"];*/ 1:
message.peerNumber = reader.uint32();
break;
case /* string PeerString = 2 [json_name = "PeerString"];*/ 2:
message.peerString = reader.string();
break;
case /* uint32 Uin = 5 [json_name = "Uin"];*/ 5:
message.uin = reader.uint32();
break;
case /* optional string Uid = 6 [json_name = "Uid"];*/ 6:
message.uid = reader.string();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message: Header, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
/* uint32 PeerNumber = 1 [json_name = "PeerNumber"]; */
if (message.peerNumber !== 0)
writer.tag(1, WireType.Varint).uint32(message.peerNumber);
/* string PeerString = 2 [json_name = "PeerString"]; */
if (message.peerString !== "")
writer.tag(2, WireType.LengthDelimited).string(message.peerString);
/* uint32 Uin = 5 [json_name = "Uin"]; */
if (message.uin !== 0)
writer.tag(5, WireType.Varint).uint32(message.uin);
/* optional string Uid = 6 [json_name = "Uid"]; */
if (message.uid !== undefined)
writer.tag(6, WireType.LengthDelimited).string(message.uid);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message SysMessage.Header
*/
export const Header = new Header$Type();
// @generated message type with reflection information, may provide speed optimized methods
class Body$Type extends MessageType<Body> {
constructor() {
super("SysMessage.Body", [
{ no: 1, name: "MsgType", kind: "scalar", jsonName: "MsgType", T: 13 /*ScalarType.UINT32*/ },
{ no: 2, name: "SubType_0", kind: "scalar", jsonName: "SubType0", T: 13 /*ScalarType.UINT32*/ },
{ no: 3, name: "SubType_1", kind: "scalar", jsonName: "SubType1", T: 13 /*ScalarType.UINT32*/ },
{ no: 5, name: "MsgSeq", kind: "scalar", jsonName: "MsgSeq", T: 13 /*ScalarType.UINT32*/ },
{ no: 6, name: "Time", kind: "scalar", jsonName: "Time", T: 13 /*ScalarType.UINT32*/ },
{ no: 12, name: "MsgID", kind: "scalar", jsonName: "MsgID", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
{ no: 13, name: "Other", kind: "scalar", jsonName: "Other", T: 13 /*ScalarType.UINT32*/ }
]);
}
create(value?: PartialMessage<Body>): Body {
const message = globalThis.Object.create((this.messagePrototype!));
message.msgType = 0;
message.subType0 = 0;
message.subType1 = 0;
message.msgSeq = 0;
message.time = 0;
message.msgID = 0n;
message.other = 0;
if (value !== undefined)
reflectionMergePartial<Body>(this, message, value);
return message;
}
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Body): Body {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* uint32 MsgType = 1 [json_name = "MsgType"];*/ 1:
message.msgType = reader.uint32();
break;
case /* uint32 SubType_0 = 2 [json_name = "SubType0"];*/ 2:
message.subType0 = reader.uint32();
break;
case /* uint32 SubType_1 = 3 [json_name = "SubType1"];*/ 3:
message.subType1 = reader.uint32();
break;
case /* uint32 MsgSeq = 5 [json_name = "MsgSeq"];*/ 5:
message.msgSeq = reader.uint32();
break;
case /* uint32 Time = 6 [json_name = "Time"];*/ 6:
message.time = reader.uint32();
break;
case /* uint64 MsgID = 12 [json_name = "MsgID"];*/ 12:
message.msgID = reader.uint64().toBigInt();
break;
case /* uint32 Other = 13 [json_name = "Other"];*/ 13:
message.other = reader.uint32();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message: Body, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
/* uint32 MsgType = 1 [json_name = "MsgType"]; */
if (message.msgType !== 0)
writer.tag(1, WireType.Varint).uint32(message.msgType);
/* uint32 SubType_0 = 2 [json_name = "SubType0"]; */
if (message.subType0 !== 0)
writer.tag(2, WireType.Varint).uint32(message.subType0);
/* uint32 SubType_1 = 3 [json_name = "SubType1"]; */
if (message.subType1 !== 0)
writer.tag(3, WireType.Varint).uint32(message.subType1);
/* uint32 MsgSeq = 5 [json_name = "MsgSeq"]; */
if (message.msgSeq !== 0)
writer.tag(5, WireType.Varint).uint32(message.msgSeq);
/* uint32 Time = 6 [json_name = "Time"]; */
if (message.time !== 0)
writer.tag(6, WireType.Varint).uint32(message.time);
/* uint64 MsgID = 12 [json_name = "MsgID"]; */
if (message.msgID !== 0n)
writer.tag(12, WireType.Varint).uint64(message.msgID);
/* uint32 Other = 13 [json_name = "Other"]; */
if (message.other !== 0)
writer.tag(13, WireType.Varint).uint32(message.other);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message SysMessage.Body
*/
export const Body = new Body$Type();

View File

@@ -0,0 +1,28 @@
syntax = "proto3";
package SysMessage;
message Data {
repeated Header header = 1;
repeated Body body = 2;
repeated Other other = 2;
}
message Header {
uint32 PeerNumber = 1;
string PeerString = 2;
uint32 Uin = 5;
optional string Uid = 6;
}
message Body {
uint32 MsgType = 1;
uint32 SubType_0 = 2;
uint32 SubType_1 = 3;
uint32 MsgSeq= 5;
uint32 Time = 6;
uint64 MsgID = 12;
uint32 Other = 13;
}
message Event {
}
message Other {
repeated Event event = 2;
}

View File

@@ -1,6 +1,6 @@
syntax = "proto3";
package SysMessage;
message Data{
message Data {
repeated Header header = 1;
repeated Body body = 2;
}
@@ -18,4 +18,4 @@ message Body {
uint32 Time = 6;
uint64 MsgID = 12;
uint32 Other = 13;
}
}

View File

@@ -28,17 +28,17 @@ export interface Data {
*/
export interface Header {
/**
* @generated from protobuf field: uint32 GroupNumber = 1 [json_name = "GroupNumber"];
* @generated from protobuf field: uint32 PeerNumber = 1 [json_name = "PeerNumber"];
*/
groupNumber: number;
peerNumber: number;
/**
* @generated from protobuf field: string GroupString = 2 [json_name = "GroupString"];
* @generated from protobuf field: string PeerString = 2 [json_name = "PeerString"];
*/
groupString: string;
peerString: string;
/**
* @generated from protobuf field: uint32 QQ = 5 [json_name = "QQ"];
* @generated from protobuf field: uint32 Uin = 5 [json_name = "Uin"];
*/
qQ: number;
uin: number;
/**
* @generated from protobuf field: optional string Uid = 6 [json_name = "Uid"];
*/
@@ -136,17 +136,17 @@ export const Data = new Data$Type();
class Header$Type extends MessageType<Header> {
constructor() {
super("SysMessage.Header", [
{ no: 1, name: "GroupNumber", kind: "scalar", jsonName: "GroupNumber", T: 13 /*ScalarType.UINT32*/ },
{ no: 2, name: "GroupString", kind: "scalar", jsonName: "GroupString", T: 9 /*ScalarType.STRING*/ },
{ no: 5, name: "QQ", kind: "scalar", jsonName: "QQ", T: 13 /*ScalarType.UINT32*/ },
{ no: 1, name: "PeerNumber", kind: "scalar", jsonName: "PeerNumber", T: 13 /*ScalarType.UINT32*/ },
{ no: 2, name: "PeerString", kind: "scalar", jsonName: "PeerString", T: 9 /*ScalarType.STRING*/ },
{ no: 5, name: "Uin", kind: "scalar", jsonName: "Uin", T: 13 /*ScalarType.UINT32*/ },
{ no: 6, name: "Uid", kind: "scalar", jsonName: "Uid", opt: true, T: 9 /*ScalarType.STRING*/ }
]);
}
create(value?: PartialMessage<Header>): Header {
const message = globalThis.Object.create((this.messagePrototype!));
message.groupNumber = 0;
message.groupString = "";
message.qQ = 0;
message.peerNumber = 0;
message.peerString = "";
message.uin = 0;
if (value !== undefined)
reflectionMergePartial<Header>(this, message, value);
return message;
@@ -156,14 +156,14 @@ class Header$Type extends MessageType<Header> {
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* uint32 GroupNumber = 1 [json_name = "GroupNumber"];*/ 1:
message.groupNumber = reader.uint32();
case /* uint32 PeerNumber = 1 [json_name = "PeerNumber"];*/ 1:
message.peerNumber = reader.uint32();
break;
case /* string GroupString = 2 [json_name = "GroupString"];*/ 2:
message.groupString = reader.string();
case /* string PeerString = 2 [json_name = "PeerString"];*/ 2:
message.peerString = reader.string();
break;
case /* uint32 QQ = 5 [json_name = "QQ"];*/ 5:
message.qQ = reader.uint32();
case /* uint32 Uin = 5 [json_name = "Uin"];*/ 5:
message.uin = reader.uint32();
break;
case /* optional string Uid = 6 [json_name = "Uid"];*/ 6:
message.uid = reader.string();
@@ -180,15 +180,15 @@ class Header$Type extends MessageType<Header> {
return message;
}
internalBinaryWrite(message: Header, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
/* uint32 GroupNumber = 1 [json_name = "GroupNumber"]; */
if (message.groupNumber !== 0)
writer.tag(1, WireType.Varint).uint32(message.groupNumber);
/* string GroupString = 2 [json_name = "GroupString"]; */
if (message.groupString !== "")
writer.tag(2, WireType.LengthDelimited).string(message.groupString);
/* uint32 QQ = 5 [json_name = "QQ"]; */
if (message.qQ !== 0)
writer.tag(5, WireType.Varint).uint32(message.qQ);
/* uint32 PeerNumber = 1 [json_name = "PeerNumber"]; */
if (message.peerNumber !== 0)
writer.tag(1, WireType.Varint).uint32(message.peerNumber);
/* string PeerString = 2 [json_name = "PeerString"]; */
if (message.peerString !== "")
writer.tag(2, WireType.LengthDelimited).string(message.peerString);
/* uint32 Uin = 5 [json_name = "Uin"]; */
if (message.uin !== 0)
writer.tag(5, WireType.Varint).uint32(message.uin);
/* optional string Uid = 6 [json_name = "Uid"]; */
if (message.uid !== undefined)
writer.tag(6, WireType.LengthDelimited).string(message.uid);

View File

@@ -5,6 +5,13 @@ import { resolve } from 'node:path';
import { ALLRouter } from './src/router';
import { WebUiConfig } from './src/helper/config';
const app = express();
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
/**
* 初始化并启动WebUI服务。
* 该函数配置了Express服务器以支持JSON解析和静态文件服务并监听6099端口。
@@ -12,21 +19,21 @@ const app = express();
* @returns {Promise<void>} 无返回值。
*/
export async function InitWebUi() {
let config = await WebUiConfig.GetWebUIConfig();
app.use(express.json());
// 初始服务
app.all('/', (_req, res) => {
res.json({
msg: 'NapCat WebAPI is now running!',
});
const config = await WebUiConfig.GetWebUIConfig();
app.use(express.json());
// 初始服务
app.all('/', (_req, res) => {
res.json({
msg: 'NapCat WebAPI is now running!',
});
// 配置静态文件服务,提供./static目录下的文件服务访问路径为/webui
app.use('/webui', express.static(resolve(__dirname, './static')));
//挂载API接口
app.use('/api', ALLRouter);
app.listen(config.port, async () => {
console.log(`[NapCat] [WebUi] Current WebUi is running at IP:${config.port}`);
console.log(`[NapCat] [WebUi] Login Token is ${config.token}`);
})
});
// 配置静态文件服务,提供./static目录下的文件服务访问路径为/webui
app.use('/webui', express.static(resolve(__dirname, './static')));
//挂载API接口
app.use('/api', ALLRouter);
app.listen(config.port, async () => {
console.log(`[NapCat] [WebUi] Current WebUi is running at IP:${config.port}`);
console.log(`[NapCat] [WebUi] Login Token is ${config.token}`);
});
}

View File

@@ -1,68 +1,68 @@
import { RequestHandler } from "express";
import { AuthHelper } from "../helper/SignToken";
import { WebUiConfig } from "../helper/config";
import { WebUiDataRuntime } from "../helper/Data";
import { RequestHandler } from 'express';
import { AuthHelper } from '../helper/SignToken';
import { WebUiConfig } from '../helper/config';
import { WebUiDataRuntime } from '../helper/Data';
const isEmpty = (data: any) => data === undefined || data === null || data === '';
export const LoginHandler: RequestHandler = async (req, res) => {
let WebUiConfigData = await WebUiConfig.GetWebUIConfig();
const { token } = req.body;
if (isEmpty(token)) {
res.json({
code: -1,
message: 'token is empty'
});
return;
}
if (!await WebUiDataRuntime.checkLoginRate(WebUiConfigData.loginRate)) {
res.json({
code: -1,
message: 'login rate limit'
});
return;
}
//验证config.token是否等于token
if (WebUiConfigData.token !== token) {
res.json({
code: -1,
message: 'token is invalid'
});
return;
}
let signCredential = Buffer.from(JSON.stringify(await AuthHelper.signCredential(WebUiConfigData.token))).toString('base64');
const WebUiConfigData = await WebUiConfig.GetWebUIConfig();
const { token } = req.body;
if (isEmpty(token)) {
res.json({
code: 0,
message: 'success',
data: {
"Credential": signCredential
}
code: -1,
message: 'token is empty'
});
return;
}
if (!await WebUiDataRuntime.checkLoginRate(WebUiConfigData.loginRate)) {
res.json({
code: -1,
message: 'login rate limit'
});
return;
}
//验证config.token是否等于token
if (WebUiConfigData.token !== token) {
res.json({
code: -1,
message: 'token is invalid'
});
return;
}
const signCredential = Buffer.from(JSON.stringify(await AuthHelper.signCredential(WebUiConfigData.token))).toString('base64');
res.json({
code: 0,
message: 'success',
data: {
'Credential': signCredential
}
});
return;
};
export const LogoutHandler: RequestHandler = (req, res) => {
// 这玩意无状态销毁个灯 得想想办法
res.json({
code: 0,
message: 'success'
});
return;
// 这玩意无状态销毁个灯 得想想办法
res.json({
code: 0,
message: 'success'
});
return;
};
export const checkHandler: RequestHandler = async (req, res) => {
let WebUiConfigData = await WebUiConfig.GetWebUIConfig();
const authorization = req.headers.authorization;
try {
let CredentialBase64:string = authorization?.split(' ')[1] as string;
let Credential = JSON.parse(Buffer.from(CredentialBase64, 'base64').toString());
await AuthHelper.validateCredentialWithinOneHour(WebUiConfigData.token,Credential)
res.json({
code: 0,
message: 'success'
});
return;
} catch (e) {
res.json({
code: -1,
message: 'failed'
});
}
const WebUiConfigData = await WebUiConfig.GetWebUIConfig();
const authorization = req.headers.authorization;
try {
const CredentialBase64:string = authorization?.split(' ')[1] as string;
const Credential = JSON.parse(Buffer.from(CredentialBase64, 'base64').toString());
await AuthHelper.validateCredentialWithinOneHour(WebUiConfigData.token,Credential);
res.json({
code: 0,
message: 'success'
});
return;
} catch (e) {
res.json({
code: -1,
message: 'failed'
});
}
return;
};

Some files were not shown because too many files have changed in this diff Show More