mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2025-07-19 12:03:37 +00:00
Compare commits
110 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
4dd7363dd3 | ||
![]() |
3d5e5ab78f | ||
![]() |
73045a1b21 | ||
![]() |
871173a7cf | ||
![]() |
0002313093 | ||
![]() |
948cf5cca6 | ||
![]() |
d40230879c | ||
![]() |
ab22b775f1 | ||
![]() |
42c85224ba | ||
![]() |
e57444a353 | ||
![]() |
3c6503d495 | ||
![]() |
149b518f48 | ||
![]() |
74621447ff | ||
![]() |
3280952931 | ||
![]() |
9e670e2736 | ||
![]() |
9fc6347a2f | ||
![]() |
ec7a15a192 | ||
![]() |
7f99982810 | ||
![]() |
935d83aaf8 | ||
![]() |
0ff6edd546 | ||
![]() |
94f629585a | ||
![]() |
89c04be02f | ||
![]() |
3151965ea8 | ||
![]() |
bdf5159be1 | ||
![]() |
0499ebbea3 | ||
![]() |
d5843b7236 | ||
![]() |
1c9c574a90 | ||
![]() |
39acf20e48 | ||
![]() |
52eb6ed5ab | ||
![]() |
ee78d2d59d | ||
![]() |
60dc5c4a38 | ||
![]() |
50a0dc0355 | ||
![]() |
3f681ec914 | ||
![]() |
0bf499f191 | ||
![]() |
389695a0d6 | ||
![]() |
07f1afb312 | ||
![]() |
ae91e61304 | ||
![]() |
6248991b01 | ||
![]() |
7f2d57ef62 | ||
![]() |
31f8f884f1 | ||
![]() |
4f4af5985a | ||
![]() |
a716fdf6d4 | ||
![]() |
9717f64abd | ||
![]() |
adf239183a | ||
![]() |
6cf209c79c | ||
![]() |
decc5fb3c0 | ||
![]() |
1e0820d613 | ||
![]() |
70124d5177 | ||
![]() |
269de65201 | ||
![]() |
1d11abbfb6 | ||
![]() |
700f308d6e | ||
![]() |
21b6928ca6 | ||
![]() |
998c67a649 | ||
![]() |
fb99e878b0 | ||
![]() |
1619adfc27 | ||
![]() |
5510fb473f | ||
![]() |
be1878cb2b | ||
![]() |
15ab121cbd | ||
![]() |
aa79b0e861 | ||
![]() |
b80e550bcd | ||
![]() |
dbc40b5814 | ||
![]() |
0d5696a644 | ||
![]() |
ceffa05802 | ||
![]() |
d5668920b6 | ||
![]() |
516f2da144 | ||
![]() |
33c94e1888 | ||
![]() |
51ab58cd91 | ||
![]() |
aa7798d1d1 | ||
![]() |
9067a1fc92 | ||
![]() |
4024b6c564 | ||
![]() |
d39730928b | ||
![]() |
e1f049229c | ||
![]() |
8f2676ec19 | ||
![]() |
32d26248dc | ||
![]() |
16f926401b | ||
![]() |
66d60d3599 | ||
![]() |
5a35ab6c34 | ||
![]() |
ba1542bd31 | ||
![]() |
453060945a | ||
![]() |
c8351be461 | ||
![]() |
9954da22a6 | ||
![]() |
907b5611eb | ||
![]() |
5f075de212 | ||
![]() |
8fcf3c5079 | ||
![]() |
07cee90c7a | ||
![]() |
75ad495b98 | ||
![]() |
0bb7288ad2 | ||
![]() |
ad72415532 | ||
![]() |
0ad0353fc0 | ||
![]() |
9fa0dcd7aa | ||
![]() |
1f2e80cd39 | ||
![]() |
6cb6034d43 | ||
![]() |
25134c6ac6 | ||
![]() |
92bf42878a | ||
![]() |
9f4582d158 | ||
![]() |
68af73970e | ||
![]() |
b6ed8d4975 | ||
![]() |
d07d3645ce | ||
![]() |
123759ab17 | ||
![]() |
f2f1f893d8 | ||
![]() |
db93a8eed2 | ||
![]() |
12ab6d4a7d | ||
![]() |
add759e889 | ||
![]() |
f315f7977d | ||
![]() |
f2f6701ebd | ||
![]() |
1a92794d33 | ||
![]() |
7640deb798 | ||
![]() |
f1e8ef1cf6 | ||
![]() |
5e5ac0162e | ||
![]() |
0c013820f0 |
12
docs/changelogs/CHANGELOG.v1.5.1.md
Normal file
12
docs/changelogs/CHANGELOG.v1.5.1.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# v1.5.1
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 支持 新Api: set_self_profile 可设置个性签名
|
||||
* 修复 Api: get_group_system_msg
|
||||
* 整理日志、添加颜色、使用统一的日志函数以提高日志可读性
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
11
docs/changelogs/old/CHANGELOG.v1.3.9.md
Normal file
11
docs/changelogs/old/CHANGELOG.v1.3.9.md
Normal 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)
|
12
docs/changelogs/old/CHANGELOG.v1.4.0.md
Normal file
12
docs/changelogs/old/CHANGELOG.v1.4.0.md
Normal 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)
|
14
docs/changelogs/old/CHANGELOG.v1.4.1.md
Normal file
14
docs/changelogs/old/CHANGELOG.v1.4.1.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# v1.4.1
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 提高部分Api兼容性
|
||||
* 优化日志膨胀问题
|
||||
* 在线状态刷新问题修复
|
||||
## 新增与调整
|
||||
* 支持非管理群 本地记录时间数据 (建议 **备份配置 清空配置 重新配置**)
|
||||
* 新增英译中接口 Api: /translate_en2zh
|
||||
* 新增群文件管理相关扩展接口 Api: /get_group_file_count /get_group_file_list /set_group_file_folder /del_group_file /del_group_file_folder
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
12
docs/changelogs/old/CHANGELOG.v1.4.2.md
Normal file
12
docs/changelogs/old/CHANGELOG.v1.4.2.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# v1.4.2
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 修复获取群文件列表Api
|
||||
* 修复退群通知问题
|
||||
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
11
docs/changelogs/old/CHANGELOG.v1.4.3.md
Normal file
11
docs/changelogs/old/CHANGELOG.v1.4.3.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# v1.4.3
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 修复名片通知
|
||||
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
10
docs/changelogs/old/CHANGELOG.v1.4.4.md
Normal file
10
docs/changelogs/old/CHANGELOG.v1.4.4.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# v1.4.4
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 更新
|
||||
* **重大更新:**更新了版本号
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
||||
|
12
docs/changelogs/old/CHANGELOG.v1.4.5.md
Normal file
12
docs/changelogs/old/CHANGELOG.v1.4.5.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# v1.4.5
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 紧急修复二维扫码问题
|
||||
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
||||
|
12
docs/changelogs/old/CHANGELOG.v1.4.6.md
Normal file
12
docs/changelogs/old/CHANGELOG.v1.4.6.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# v1.4.6
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 优化整体稳定性
|
||||
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
||||
|
11
docs/changelogs/old/CHANGELOG.v1.4.7.md
Normal file
11
docs/changelogs/old/CHANGELOG.v1.4.7.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# v1.4.7
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 临时扩展 Api: GoCQHTTPUploadGroupFile folder_id字段 用于选择文件夹
|
||||
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
12
docs/changelogs/old/CHANGELOG.v1.4.8.md
Normal file
12
docs/changelogs/old/CHANGELOG.v1.4.8.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# v1.4.8
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 优化Guid的生成方式
|
||||
* 支持临时消息获取群来源
|
||||
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
11
docs/changelogs/old/CHANGELOG.v1.4.9.md
Normal file
11
docs/changelogs/old/CHANGELOG.v1.4.9.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# v1.4.9
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 修复接口调用问题 接口标准化 API:set_group_add_request
|
||||
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
11
docs/changelogs/old/CHANGELOG.v1.5.0.md
Normal file
11
docs/changelogs/old/CHANGELOG.v1.5.0.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# v1.5.0
|
||||
|
||||
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
|
||||
|
||||
## 修复与优化
|
||||
* 修正各Api默认值
|
||||
|
||||
## 新增与调整
|
||||
|
||||
|
||||
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)
|
@@ -2,7 +2,7 @@
|
||||
"name": "napcat",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"version": "1.3.8",
|
||||
"version": "1.5.1",
|
||||
"scripts": {
|
||||
"watch:dev": "vite --mode development",
|
||||
"watch:prod": "vite --mode production",
|
||||
@@ -19,6 +19,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@log4js-node/log4js-api": "^1.0.2",
|
||||
"@protobuf-ts/plugin": "^2.9.4",
|
||||
"@rollup/plugin-node-resolve": "^15.2.3",
|
||||
"@rollup/plugin-typescript": "^11.1.6",
|
||||
"@types/cors": "^2.8.17",
|
||||
@@ -43,11 +44,11 @@
|
||||
"vite": "^5.2.6",
|
||||
"vite-plugin-cp": "^4.0.8",
|
||||
"vite-plugin-dts": "^3.8.2",
|
||||
"vite-tsconfig-paths": "^4.3.2",
|
||||
"@protobuf-ts/plugin": "^2.9.4"
|
||||
"vite-tsconfig-paths": "^4.3.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"ajv": "^8.13.0",
|
||||
"chalk": "^5.3.0",
|
||||
"commander": "^12.0.0",
|
||||
"cors": "^2.8.5",
|
||||
"express": "^5.0.0-beta.2",
|
||||
|
@@ -37,14 +37,14 @@ export abstract class HttpServerBase {
|
||||
const authHeader = req.get('authorization');
|
||||
if (authHeader) {
|
||||
clientToken = authHeader.split('Bearer ').pop() || '';
|
||||
logDebug('receive http header token', clientToken);
|
||||
//logDebug('receive http header token', clientToken);
|
||||
} else if (req.query.access_token) {
|
||||
if (Array.isArray(req.query.access_token)) {
|
||||
clientToken = req.query.access_token[0].toString();
|
||||
} else {
|
||||
clientToken = req.query.access_token.toString();
|
||||
}
|
||||
logDebug('receive http url token', clientToken);
|
||||
//logDebug('receive http url token', clientToken);
|
||||
}
|
||||
|
||||
if (serverToken && clientToken != serverToken) {
|
||||
|
@@ -1,5 +1,5 @@
|
||||
import { sleep } from '@/common/utils/helper';
|
||||
|
||||
import { logError } from './log';
|
||||
type AsyncQueueTask = (() => void) | (()=>Promise<void>);
|
||||
|
||||
|
||||
@@ -26,7 +26,8 @@ export class AsyncQueue {
|
||||
await taskRet;
|
||||
}
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
// console.error(e);
|
||||
logError(e);
|
||||
}
|
||||
this.tasks.shift();
|
||||
await sleep(100);
|
||||
|
182
src/common/utils/EventTask.ts
Normal file
182
src/common/utils/EventTask.ts
Normal file
@@ -0,0 +1,182 @@
|
||||
import { NodeIKernelMsgListener } from '@/core';
|
||||
import { NodeIQQNTWrapperSession } from '@/core/wrapper';
|
||||
import { randomUUID } from 'crypto';
|
||||
|
||||
interface Internal_MapKey {
|
||||
timeout: number,
|
||||
createtime: number,
|
||||
func: (...arg: any[]) => any,
|
||||
}
|
||||
|
||||
export class ListenerClassBase {
|
||||
[key: string]: string;
|
||||
}
|
||||
|
||||
export interface ListenerIBase {
|
||||
// eslint-disable-next-line @typescript-eslint/no-misused-new
|
||||
new(listener: any): ListenerClassBase;
|
||||
}
|
||||
|
||||
export class NTEventWrapper {
|
||||
|
||||
private ListenerMap: { [key: string]: ListenerIBase } | undefined;//ListenerName-Unique -> Listener构造函数
|
||||
private WrapperSession: NodeIQQNTWrapperSession | undefined;//WrapperSession
|
||||
private ListenerManger: Map<string, ListenerClassBase> = new Map<string, ListenerClassBase>(); //ListenerName-Unique -> Listener实例
|
||||
private EventTask = new Map<string, Map<string, Map<string, Internal_MapKey>>>();//tasks ListenerMainName -> ListenerSubName-> uuid -> {timeout,createtime,func}
|
||||
constructor() {
|
||||
|
||||
}
|
||||
createProxyDispatch(ListenerMainName: string) {
|
||||
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
||||
const current = this;
|
||||
return new Proxy({}, {
|
||||
get(target: any, prop: any, receiver: any) {
|
||||
// console.log('get', prop, typeof target[prop]);
|
||||
if (typeof target[prop] === 'undefined') {
|
||||
// 如果方法不存在,返回一个函数,这个函数调用existentMethod
|
||||
return (...args: any[]) => {
|
||||
current.DispatcherListener.apply(current, [ListenerMainName, prop, ...args]).then();
|
||||
};
|
||||
}
|
||||
// 如果方法存在,正常返回
|
||||
return Reflect.get(target, prop, receiver);
|
||||
}
|
||||
});
|
||||
}
|
||||
init({ ListenerMap, WrapperSession }: { ListenerMap: { [key: string]: typeof ListenerClassBase }, WrapperSession: NodeIQQNTWrapperSession }) {
|
||||
this.ListenerMap = ListenerMap;
|
||||
this.WrapperSession = WrapperSession;
|
||||
}
|
||||
CreatEventFunction<T extends (...args: any) => any>(eventName: string): T | undefined {
|
||||
const eventNameArr = eventName.split('/');
|
||||
type eventType = {
|
||||
[key: string]: () => { [key: string]: (...params: Parameters<T>) => Promise<ReturnType<T>> }
|
||||
}
|
||||
if (eventNameArr.length > 1) {
|
||||
const serviceName = 'get' + eventNameArr[0].replace('NodeIKernel', '');
|
||||
const eventName = eventNameArr[1];
|
||||
//getNodeIKernelGroupListener,GroupService
|
||||
//console.log('2', eventName);
|
||||
const services = (this.WrapperSession as unknown as eventType)[serviceName]();
|
||||
let event = services[eventName];
|
||||
//重新绑定this
|
||||
event = event.bind(services);
|
||||
if (event) {
|
||||
return event as T;
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
|
||||
}
|
||||
CreatListenerFunction<T>(listenerMainName: string, uniqueCode: string = ''): T {
|
||||
const ListenerType = this.ListenerMap![listenerMainName];
|
||||
let Listener = this.ListenerManger.get(listenerMainName + uniqueCode);
|
||||
if (!Listener && ListenerType) {
|
||||
Listener = new ListenerType(this.createProxyDispatch(listenerMainName));
|
||||
const ServiceSubName = listenerMainName.match(/^NodeIKernel(.*?)Listener$/)![1];
|
||||
const Service = 'NodeIKernel' + ServiceSubName + 'Service/addKernel' + ServiceSubName + 'Listener';
|
||||
const addfunc = this.CreatEventFunction<(listener: T) => number>(Service);
|
||||
addfunc!(Listener as T);
|
||||
//console.log(addfunc!(Listener as T));
|
||||
this.ListenerManger.set(listenerMainName + uniqueCode, Listener);
|
||||
}
|
||||
return Listener as T;
|
||||
}
|
||||
//统一回调清理事件
|
||||
async DispatcherListener(ListenerMainName: string, ListenerSubName: string, ...args: any[]) {
|
||||
//console.log(ListenerMainName, this.EventTask.get(ListenerMainName), ListenerSubName, this.EventTask.get(ListenerMainName)?.get(ListenerSubName));
|
||||
this.EventTask.get(ListenerMainName)?.get(ListenerSubName)?.forEach((task, uuid) => {
|
||||
//console.log(task.func, uuid, task.createtime, task.timeout);
|
||||
if (task.createtime + task.timeout < Date.now()) {
|
||||
this.EventTask.get(ListenerMainName)?.get(ListenerSubName)?.delete(uuid);
|
||||
return;
|
||||
}
|
||||
task.func(...args);
|
||||
});
|
||||
}
|
||||
async CallNoListenerEvent<EventType extends (...args: any[]) => Promise<any>,>(EventName = '', timeout: number = 3000, ...args: Parameters<EventType>) {
|
||||
return new Promise<ReturnType<EventType>>(async (resolve, reject) => {
|
||||
const EventFunc = this.CreatEventFunction<EventType>(EventName);
|
||||
let complete = false;
|
||||
const Timeouter = setTimeout(() => {
|
||||
if (!complete) {
|
||||
reject(new Error('NTEvent EventName:' + EventName + ' timeout'));
|
||||
}
|
||||
}, timeout);
|
||||
const retData = await EventFunc!(...args);
|
||||
complete = true;
|
||||
resolve(retData);
|
||||
});
|
||||
}
|
||||
async CallNormalEvent<EventType extends (...args: any[]) => Promise<any>, ListenerType extends (...args: any[]) => void>(EventName = '', ListenerName = '', waitTimes = 1, timeout: number = 3000, ...args: Parameters<EventType>) {
|
||||
return new Promise<[EventRet: Awaited<ReturnType<EventType>>, ...Parameters<ListenerType>]>(async (resolve, reject) => {
|
||||
const id = randomUUID();
|
||||
let complete = 0;
|
||||
let retData: Parameters<ListenerType> | undefined = undefined;
|
||||
let retEvent: any = {};
|
||||
const databack = () => {
|
||||
if (complete < waitTimes) {
|
||||
reject(new Error('NTEvent EventName:' + EventName + ' ListenerName:' + ListenerName + ' timeout'));
|
||||
} else {
|
||||
resolve([retEvent as Awaited<ReturnType<EventType>>, ...retData!]);
|
||||
}
|
||||
};
|
||||
const Timeouter = setTimeout(databack, timeout);
|
||||
|
||||
const ListenerNameList = ListenerName.split('/');
|
||||
const ListenerMainName = ListenerNameList[0];
|
||||
const ListenerSubName = ListenerNameList[1];
|
||||
const eventCallbak = {
|
||||
timeout: timeout,
|
||||
createtime: Date.now(),
|
||||
func: (...args: any[]) => {
|
||||
complete++;
|
||||
//console.log('func', ...args);
|
||||
retData = args as Parameters<ListenerType>;
|
||||
if (complete >= waitTimes) {
|
||||
clearTimeout(Timeouter);
|
||||
databack();
|
||||
}
|
||||
}
|
||||
};
|
||||
if (!this.EventTask.get(ListenerMainName)) {
|
||||
this.EventTask.set(ListenerMainName, new Map());
|
||||
}
|
||||
if (!(this.EventTask.get(ListenerMainName)?.get(ListenerSubName))) {
|
||||
this.EventTask.get(ListenerMainName)?.set(ListenerSubName, new Map());
|
||||
}
|
||||
this.EventTask.get(ListenerMainName)?.get(ListenerSubName)?.set(id, eventCallbak);
|
||||
this.CreatListenerFunction(ListenerMainName);
|
||||
const EventFunc = this.CreatEventFunction<EventType>(EventName);
|
||||
//console.log("测试打点", args);
|
||||
retEvent = await EventFunc!(...(args as any[]));
|
||||
});
|
||||
}
|
||||
}
|
||||
export const NTEventDispatch = new NTEventWrapper();
|
||||
|
||||
// 示例代码 快速创建事件
|
||||
// let NTEvent = new NTEventWrapper();
|
||||
// let TestEvent = NTEvent.CreatEventFunction<(force: boolean) => Promise<Number>>('NodeIKernelProfileLikeService/GetTest');
|
||||
// if (TestEvent) {
|
||||
// TestEvent(true);
|
||||
// }
|
||||
|
||||
// 示例代码 快速创建监听Listener类
|
||||
// let NTEvent = new NTEventWrapper();
|
||||
// NTEvent.CreatListenerFunction<NodeIKernelMsgListener>('NodeIKernelMsgListener', 'core')
|
||||
|
||||
|
||||
// 调用接口
|
||||
//let NTEvent = new NTEventWrapper();
|
||||
//let ret = await NTEvent.CallNormalEvent<(force: boolean) => Promise<Number>, (data1: string, data2: number) => void>('NodeIKernelProfileLikeService/GetTest', 'NodeIKernelMsgListener/onAddSendMsg', 1, 3000, true);
|
||||
|
||||
// 注册监听 解除监听
|
||||
// NTEventDispatch.RigisterListener('NodeIKernelMsgListener/onAddSendMsg','core',cb);
|
||||
// NTEventDispatch.UnRigisterListener('NodeIKernelMsgListener/onAddSendMsg','core');
|
||||
|
||||
// let GetTest = NTEventDispatch.CreatEvent('NodeIKernelProfileLikeService/GetTest','NodeIKernelMsgListener/onAddSendMsg',Mode);
|
||||
// GetTest('test');
|
||||
|
||||
// always模式
|
||||
// NTEventDispatch.CreatEvent('NodeIKernelProfileLikeService/GetTest','NodeIKernelMsgListener/onAddSendMsg',Mode,(...args:any[])=>{ console.log(args) });
|
145
src/common/utils/LRUCache.ts
Normal file
145
src/common/utils/LRUCache.ts
Normal file
@@ -0,0 +1,145 @@
|
||||
import { logError, logDebug } from '@/common/utils/log';
|
||||
|
||||
type group_id = number;
|
||||
type user_id = number;
|
||||
|
||||
class cacheNode<T> {
|
||||
value: T;
|
||||
groupId: group_id;
|
||||
userId: user_id;
|
||||
prev: cacheNode<T> | null;
|
||||
next: cacheNode<T> | null;
|
||||
timestamp: number;
|
||||
|
||||
constructor(groupId: group_id, userId: user_id, value: T) {
|
||||
this.groupId = groupId;
|
||||
this.userId = userId;
|
||||
this.value = value;
|
||||
this.prev = null;
|
||||
this.next = null;
|
||||
this.timestamp = Date.now();
|
||||
}
|
||||
}
|
||||
|
||||
type cache<T> = { [key: group_id]: { [key: user_id]: cacheNode<T> } };
|
||||
class LRU<T> {
|
||||
private maxAge: number;
|
||||
private maxSize: number;
|
||||
private currentSize: number;
|
||||
private cache: cache<T>;
|
||||
private head: cacheNode<T> | null = null;
|
||||
private tail: cacheNode<T> | null = null;
|
||||
private onFuncs: ((node: cacheNode<T>) => void)[] = [];
|
||||
|
||||
constructor(maxAge: number = 2e4, maxSize: number = 5e3) {
|
||||
this.maxAge = maxAge;
|
||||
this.maxSize = maxSize;
|
||||
this.cache = Object.create(null);
|
||||
this.currentSize = 0;
|
||||
|
||||
if (maxSize == 0) return;
|
||||
setInterval(() => this.removeExpired(), this.maxAge);
|
||||
}
|
||||
|
||||
// 移除LRU节点
|
||||
private removeLRUNode(node: cacheNode<T>) {
|
||||
logDebug(
|
||||
'removeLRUNode',
|
||||
node.groupId,
|
||||
node.userId,
|
||||
node.value,
|
||||
this.currentSize
|
||||
);
|
||||
node.prev = node.next = null;
|
||||
delete this.cache[node.groupId][node.userId];
|
||||
this.removeNode(node);
|
||||
this.onFuncs.forEach((func) => func(node));
|
||||
this.currentSize--;
|
||||
}
|
||||
|
||||
public on(func: (node: cacheNode<T>) => void) {
|
||||
this.onFuncs.push(func);
|
||||
}
|
||||
|
||||
private removeExpired() {
|
||||
const now = Date.now();
|
||||
let current = this.tail;
|
||||
const nodesToRemove: cacheNode<T>[] = [];
|
||||
let removedCount = 0;
|
||||
|
||||
// 收集需要删除的节点
|
||||
while (current && now - current.timestamp > this.maxAge) {
|
||||
nodesToRemove.push(current);
|
||||
current = current.prev;
|
||||
removedCount++;
|
||||
if (removedCount >= 100) break;
|
||||
}
|
||||
|
||||
// 更新链表指向
|
||||
if (nodesToRemove.length > 0) {
|
||||
const newTail = nodesToRemove[nodesToRemove.length - 1].prev;
|
||||
if (newTail) {
|
||||
newTail.next = null;
|
||||
} else {
|
||||
this.head = null;
|
||||
}
|
||||
this.tail = newTail;
|
||||
}
|
||||
|
||||
nodesToRemove.forEach((node) => {
|
||||
node.prev = node.next = null;
|
||||
delete this.cache[node.groupId][node.userId];
|
||||
|
||||
this.currentSize--;
|
||||
this.onFuncs.forEach((func) => func(node));
|
||||
});
|
||||
}
|
||||
|
||||
private addNode(node: cacheNode<T>) {
|
||||
node.next = this.head;
|
||||
if (this.head) this.head.prev = node;
|
||||
if (!this.tail) this.tail = node;
|
||||
this.head = node;
|
||||
}
|
||||
|
||||
private removeNode(node: cacheNode<T>) {
|
||||
if (node.prev) node.prev.next = node.next;
|
||||
if (node.next) node.next.prev = node.prev;
|
||||
if (node === this.head) this.head = node.next;
|
||||
if (node === this.tail) this.tail = node.prev;
|
||||
}
|
||||
|
||||
private moveToHead(node: cacheNode<T>) {
|
||||
if (this.head === node) return;
|
||||
|
||||
this.removeNode(node);
|
||||
this.addNode(node);
|
||||
node.prev = null;
|
||||
}
|
||||
|
||||
public set(groupId: group_id, userId: user_id, value: T) {
|
||||
if (!this.cache[groupId]) {
|
||||
this.cache[groupId] = Object.create(null);
|
||||
}
|
||||
|
||||
const groupObject = this.cache[groupId];
|
||||
|
||||
if (groupObject[userId]) {
|
||||
const node = groupObject[userId];
|
||||
node.value = value;
|
||||
node.timestamp = Date.now();
|
||||
this.moveToHead(node);
|
||||
} else {
|
||||
const node = new cacheNode(groupId, userId, value);
|
||||
groupObject[userId] = node;
|
||||
this.currentSize++;
|
||||
this.addNode(node);
|
||||
if (this.currentSize > this.maxSize) {
|
||||
const tail = this.tail!;
|
||||
this.removeLRUNode(tail);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default LRU;
|
@@ -2,6 +2,7 @@ import path from 'node:path';
|
||||
import fs from 'node:fs';
|
||||
import os from 'node:os';
|
||||
import { systemPlatform } from '@/common/utils/system';
|
||||
import { logError } from '@/common/utils/log';
|
||||
|
||||
export const exePath = process.execPath;
|
||||
|
||||
@@ -49,7 +50,7 @@ if (fs.existsSync(configVersionInfoPath)) {
|
||||
const _ =JSON.parse(fs.readFileSync(configVersionInfoPath).toString());
|
||||
_qqVersionConfigInfo = Object.assign(_qqVersionConfigInfo, _);
|
||||
} catch (e) {
|
||||
console.error('Load QQ version config info failed, Use default version', e);
|
||||
logError('Load QQ version config info failed, Use default version', e);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -24,7 +24,7 @@ export async function encodeSilk(filePath: string) {
|
||||
const fileHeader = buffer.toString('hex', 0, bytesToRead);
|
||||
return fileHeader;
|
||||
} catch (err) {
|
||||
console.error('读取文件错误:', err);
|
||||
logError('读取文件错误:', err);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@@ -4,7 +4,6 @@ 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) {
|
||||
|
509
src/common/utils/db.ts
Normal file
509
src/common/utils/db.ts
Normal file
@@ -0,0 +1,509 @@
|
||||
import { ElementType, FileElement, PicElement, PttElement, RawMessage, VideoElement } from '../../core/src/entities';
|
||||
|
||||
import sqlite3 from 'sqlite3';
|
||||
import { log, logDebug, logError } from '@/common/utils/log';
|
||||
import { NTQQMsgApi } from '@/core';
|
||||
import LRU from '@/common/utils/LRUCache';
|
||||
|
||||
export interface IRember {
|
||||
last_sent_time: number;
|
||||
join_time: number;
|
||||
user_id: number;
|
||||
}
|
||||
|
||||
|
||||
type DBMsg = {
|
||||
id: number,
|
||||
shortId: number,
|
||||
longId: string,
|
||||
seq: number,
|
||||
peerUid: string,
|
||||
chatType: number,
|
||||
}
|
||||
|
||||
type DBFile = {
|
||||
name: string; // 文件名
|
||||
path: string;
|
||||
url: string;
|
||||
size: number;
|
||||
uuid: string;
|
||||
msgId: string;
|
||||
elementId: string;
|
||||
element: PicElement | VideoElement | FileElement | PttElement;
|
||||
elementType: ElementType.PIC | ElementType.VIDEO | ElementType.FILE | ElementType.PTT;
|
||||
}
|
||||
|
||||
|
||||
class DBUtilBase {
|
||||
protected db: sqlite3.Database | undefined;
|
||||
|
||||
async init(dbPath: string) {
|
||||
if (this.db) {
|
||||
return;
|
||||
}
|
||||
return new Promise<void>((resolve, reject) => {
|
||||
this.db = new sqlite3.Database(dbPath, sqlite3.OPEN_READWRITE | sqlite3.OPEN_CREATE, (err) => {
|
||||
if (err) {
|
||||
logError('Could not connect to database', err);
|
||||
reject(err);
|
||||
return;
|
||||
}
|
||||
this.createTable();
|
||||
resolve();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
protected createTable() {
|
||||
throw new Error('Method not implemented.');
|
||||
}
|
||||
|
||||
close() {
|
||||
this.db?.close();
|
||||
}
|
||||
}
|
||||
|
||||
class DBUtil extends DBUtilBase {
|
||||
private msgCache: Map<string | number, RawMessage> = new Map<string | number, RawMessage>();
|
||||
private globalMsgShortId = -2147483640;
|
||||
private groupIds: number[] = [];
|
||||
private LURCache = new LRU<number>();
|
||||
private LastSentCache = new (class {
|
||||
private cache: { gid: number; uid: number }[] = [];
|
||||
private maxSize: number;
|
||||
|
||||
constructor(maxSize: number = 5000) {
|
||||
this.maxSize = maxSize;
|
||||
}
|
||||
|
||||
get(gid: number, uid: number): boolean {
|
||||
const exists = this.cache.some(
|
||||
(entry) => entry.gid === gid && entry.uid === uid
|
||||
);
|
||||
if (!exists) {
|
||||
this.cache.push({ gid, uid });
|
||||
if (this.cache.length > this.maxSize) {
|
||||
this.cache.shift();
|
||||
}
|
||||
}
|
||||
|
||||
return exists;
|
||||
}
|
||||
})();
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
const interval = 1000 * 60 * 10; // 10分钟清理一次缓存
|
||||
setInterval(() => {
|
||||
logDebug('清理消息缓存');
|
||||
this.msgCache.forEach((msg, key) => {
|
||||
if ((Date.now() - parseInt(msg.msgTime) * 1000) > interval) {
|
||||
this.msgCache.delete(key);
|
||||
}
|
||||
});
|
||||
}, interval);
|
||||
}
|
||||
|
||||
async init(dbPath: string) {
|
||||
await super.init(dbPath);
|
||||
this.globalMsgShortId = await this.getCurrentMaxShortId();
|
||||
|
||||
|
||||
// 初始化群缓存列表
|
||||
this.db!.serialize(() => {
|
||||
const sql = 'SELECT * FROM sqlite_master WHERE type=\'table\'';
|
||||
this.db!.all(sql, [], (err, rows: { name: string }[]) => {
|
||||
if (err) return logError(err);
|
||||
rows.forEach((row) => this.groupIds.push(parseInt(row.name)));
|
||||
//logDebug(`已加载 ${groupIds.length} 个群`);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
this.LURCache.on(async (node) => {
|
||||
const { value: time, groupId, userId } = node;
|
||||
|
||||
logDebug('插入发言时间', userId, groupId);
|
||||
await this.createGroupInfoTimeTableIfNotExist(groupId);
|
||||
|
||||
const method = await this.getDataSetMethod(groupId, userId);
|
||||
logDebug('插入发言时间方法判断', userId, groupId, method);
|
||||
|
||||
const sql =
|
||||
method == 'update'
|
||||
? `UPDATE "${groupId}" SET last_sent_time = ? WHERE user_id = ?`
|
||||
: `INSERT INTO "${groupId}" (last_sent_time, user_id) VALUES (?, ?)`;
|
||||
|
||||
this.db!.all(sql, [time, userId], (err) => {
|
||||
if (err) {
|
||||
return logError('插入/更新发言时间失败', userId, groupId);
|
||||
}
|
||||
logDebug('插入/更新发言时间成功', userId, groupId);
|
||||
});
|
||||
|
||||
});
|
||||
}
|
||||
async getDataSetMethod(groupId: number, userId: number) {
|
||||
// 缓存记录
|
||||
if (this.LastSentCache.get(groupId, userId)) {
|
||||
logDebug('缓存命中', userId, groupId);
|
||||
return 'update';
|
||||
}
|
||||
|
||||
// 数据库判断
|
||||
return new Promise<'insert' | 'update'>((resolve, reject) => {
|
||||
this.db!.all(
|
||||
`SELECT * FROM "${groupId}" WHERE user_id = ?`,
|
||||
[userId],
|
||||
(err, rows) => {
|
||||
if (err) {
|
||||
logError('查询发言时间存在失败', userId, groupId, err);
|
||||
return logError('插入发言时间失败', userId, groupId, err);
|
||||
}
|
||||
|
||||
if (rows.length === 0) {
|
||||
logDebug('查询发言时间不存在', userId, groupId);
|
||||
return resolve('insert');
|
||||
}
|
||||
|
||||
logDebug('查询发言时间存在', userId, groupId);
|
||||
resolve('update');
|
||||
}
|
||||
);
|
||||
});
|
||||
}
|
||||
async createGroupInfoTimeTableIfNotExist(groupId: number) {
|
||||
const createTableSQL = (groupId: number) =>
|
||||
`CREATE TABLE IF NOT EXISTS "${groupId}" (
|
||||
user_id INTEGER,
|
||||
last_sent_time INTEGER,
|
||||
join_time INTEGER,
|
||||
PRIMARY KEY (user_id)
|
||||
);`;
|
||||
|
||||
if (this.groupIds.includes(groupId)) {
|
||||
return;
|
||||
}
|
||||
return new Promise((resolve, reject) => {
|
||||
const sql = createTableSQL(groupId);
|
||||
this.db!.all(sql, (err) => {
|
||||
if (err) {
|
||||
reject(err);
|
||||
return;
|
||||
}
|
||||
this.groupIds.push(groupId);
|
||||
resolve(true);
|
||||
});
|
||||
});
|
||||
}
|
||||
protected createTable() {
|
||||
// 消息记录
|
||||
const createTableSQL = `
|
||||
CREATE TABLE IF NOT EXISTS msgs (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
shortId INTEGER NOT NULL UNIQUE,
|
||||
longId TEXT NOT NULL UNIQUE,
|
||||
seq INTEGER NOT NULL,
|
||||
peerUid TEXT NOT NULL,
|
||||
chatType INTEGER NOT NULL
|
||||
)`;
|
||||
this.db!.run(createTableSQL, function (err) {
|
||||
if (err) {
|
||||
logError('Could not create table msgs', err.stack);
|
||||
}
|
||||
});
|
||||
|
||||
// 文件缓存
|
||||
const createFileTableSQL = `
|
||||
CREATE TABLE IF NOT EXISTS files (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
name TEXT NOT NULL,
|
||||
path TEXT NOT NULL,
|
||||
url TEXT,
|
||||
size INTEGER NOT NULL,
|
||||
uuid TEXT,
|
||||
elementType INTEGER,
|
||||
element TEXT NOT NULL,
|
||||
elementId TEXT NOT NULL,
|
||||
msgId TEXT NOT NULL
|
||||
)`;
|
||||
this.db!.run(createFileTableSQL, function (err) {
|
||||
if (err) {
|
||||
logError('Could not create table files', err);
|
||||
}
|
||||
});
|
||||
|
||||
// 接收到的临时会话消息uid
|
||||
const createTempUinTableSQL = `
|
||||
CREATE TABLE IF NOT EXISTS temp_uins (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
uid TEXT,
|
||||
uin TEXT
|
||||
)`;
|
||||
this.db!.run(createTempUinTableSQL, function (err) {
|
||||
if (err) {
|
||||
logError('Could not create table temp_uins', err);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private async getCurrentMaxShortId() {
|
||||
return new Promise<number>((resolve, reject) => {
|
||||
this.db!.get('SELECT MAX(shortId) as maxId FROM msgs', (err, row: { maxId: number }) => {
|
||||
if (err) {
|
||||
logDebug('Could not get max short id, Use default -2147483640', err);
|
||||
return resolve(-2147483640);
|
||||
}
|
||||
logDebug('数据库中消息最大短id', row?.maxId);
|
||||
resolve(row?.maxId ?? -2147483640);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
private async getMsg(query: string, params: any[]) {
|
||||
const stmt = this.db!.prepare(query);
|
||||
return new Promise<RawMessage | null>((resolve, reject) => {
|
||||
stmt.get(...params, (err: any, row: DBMsg) => {
|
||||
// log("getMsg", row, err);
|
||||
if (err) {
|
||||
logError('Could not get msg', err, query, params);
|
||||
return resolve(null);
|
||||
}
|
||||
if (!row) {
|
||||
// logDebug('不存在数据库中的消息,不进行处理', query, params);
|
||||
resolve(null);
|
||||
return;
|
||||
}
|
||||
const msgId = row.longId;
|
||||
NTQQMsgApi.getMsgsByMsgId({ peerUid: row.peerUid, chatType: row.chatType }, [msgId]).then(res => {
|
||||
const msg = res.msgList[0];
|
||||
if (!msg) {
|
||||
resolve(null);
|
||||
return;
|
||||
}
|
||||
msg.id = row.shortId;
|
||||
resolve(msg);
|
||||
}).catch(e => {
|
||||
resolve(null);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
async getMsgByShortId(shortId: number): Promise<RawMessage | null> {
|
||||
if (this.msgCache.has(shortId)) {
|
||||
return this.msgCache.get(shortId)!;
|
||||
}
|
||||
const getStmt = 'SELECT * FROM msgs WHERE shortId = ?';
|
||||
return this.getMsg(getStmt, [shortId]);
|
||||
}
|
||||
|
||||
async getMsgByLongId(longId: string): Promise<RawMessage | null> {
|
||||
if (this.msgCache.has(longId)) {
|
||||
return this.msgCache.get(longId)!;
|
||||
}
|
||||
return this.getMsg('SELECT * FROM msgs WHERE longId = ?', [longId]);
|
||||
}
|
||||
|
||||
async getMsgBySeq(peerUid: string, seq: string): Promise<RawMessage | null> {
|
||||
const stmt = 'SELECT * FROM msgs WHERE peerUid = ? AND seq = ?';
|
||||
return this.getMsg(stmt, [peerUid, seq]);
|
||||
}
|
||||
|
||||
async addMsg(msg: RawMessage, update = true): Promise<number> {
|
||||
const existMsg = await this.getMsgByLongId(msg.msgId);
|
||||
if (existMsg) {
|
||||
// logDebug('消息已存在,更新数据库', msg.msgId);
|
||||
if (update) this.updateMsg(msg).then();
|
||||
return existMsg.id!;
|
||||
}
|
||||
const stmt = this.db!.prepare('INSERT INTO msgs (shortId, longId, seq, peerUid, chatType) VALUES (?, ?, ?, ?, ?)');
|
||||
// const runAsync = promisify(stmt.run.bind(stmt));
|
||||
const shortId = ++this.globalMsgShortId;
|
||||
msg.id = shortId;
|
||||
//logDebug(`记录消息到数据库, 消息长id: ${msg.msgId}, 短id: ${msg.id}`);
|
||||
this.msgCache.set(shortId, msg);
|
||||
this.msgCache.set(msg.msgId, msg);
|
||||
stmt.run(this.globalMsgShortId, msg.msgId, msg.msgSeq.toString(), msg.peerUid, msg.chatType, (err: any) => {
|
||||
if (err) {
|
||||
if (err.errno === 19) {
|
||||
this.getMsgByLongId(msg.msgId).then((msg: RawMessage | null) => {
|
||||
if (msg) {
|
||||
this.msgCache.set(shortId, msg);
|
||||
this.msgCache.set(msg.msgId, msg);
|
||||
// logDebug('获取消息短id成功', msg.id);
|
||||
} else {
|
||||
logError('db could not get msg by long id', err);
|
||||
}
|
||||
}).catch(e => logError('db getMsgByLongId error', e));
|
||||
} else {
|
||||
logError('db could not add msg', err);
|
||||
}
|
||||
}
|
||||
});
|
||||
return shortId;
|
||||
}
|
||||
|
||||
async updateMsg(msg: RawMessage) {
|
||||
const existMsg = this.msgCache.get(msg.msgId);
|
||||
if (existMsg) {
|
||||
Object.assign(existMsg, msg);
|
||||
}
|
||||
//logDebug(`更新消息, shortId:${msg.id}, seq: ${msg.msgSeq}, msgId: ${msg.msgId}`);
|
||||
const stmt = this.db!.prepare('UPDATE msgs SET seq=? WHERE longId=?');
|
||||
stmt.run(msg.msgSeq, msg.msgId, (err: any) => {
|
||||
if (err) {
|
||||
logError('updateMsg db error', err);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
async addFileCache(file: DBFile) {
|
||||
const stmt = this.db!.prepare('INSERT INTO files (name, path, url, size, uuid, elementType ,element, elementId, msgId) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)');
|
||||
return new Promise((resolve, reject) => {
|
||||
stmt.run(file.name, file.path, file.url, file.size, file.uuid,
|
||||
file.elementType,
|
||||
JSON.stringify(file.element),
|
||||
file.elementId,
|
||||
file.msgId,
|
||||
function (err: any) {
|
||||
if (err) {
|
||||
logError('db could not add file', err);
|
||||
reject(err);
|
||||
}
|
||||
resolve(null);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
private async getFileCache(query: string, params: any[]) {
|
||||
const stmt = this.db!.prepare(query);
|
||||
return new Promise<DBFile | null>((resolve, reject) => {
|
||||
stmt.get(...params, (err: any, row: DBFile & { element: string }) => {
|
||||
if (err) {
|
||||
logError('db could not get file cache', err);
|
||||
reject(err);
|
||||
}
|
||||
if (row) {
|
||||
row.element = JSON.parse(row.element);
|
||||
}
|
||||
resolve(row);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
async getFileCacheByName(name: string): Promise<DBFile | null> {
|
||||
return this.getFileCache('SELECT * FROM files WHERE name = ?', [name]);
|
||||
}
|
||||
|
||||
async getFileCacheByUuid(uuid: string): Promise<DBFile | null> {
|
||||
return this.getFileCache('SELECT * FROM files WHERE uuid = ?', [uuid]);
|
||||
}
|
||||
|
||||
// todo: 是否所有的文件都有uuid?语音消息有没有uuid?
|
||||
async updateFileCache(file: DBFile) {
|
||||
const stmt = this.db!.prepare('UPDATE files SET path = ?, url = ? WHERE uuid = ?');
|
||||
return new Promise((resolve, reject) => {
|
||||
stmt.run(file.path, file.url, file.uuid, function (err: any) {
|
||||
if (err) {
|
||||
logError('db could not update file cache', err);
|
||||
reject(err);
|
||||
}
|
||||
resolve(null);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// 被动收到的临时会话消息uin->uid
|
||||
async getReceivedTempUinMap() {
|
||||
const stmt = 'SELECT * FROM temp_uins';
|
||||
return new Promise<Record<string, string>>((resolve, reject) => {
|
||||
this.db!.all(stmt, (err, rows: { uin: string, uid: string }[]) => {
|
||||
if (err) {
|
||||
logError('db could not get temp uin map', err);
|
||||
reject(err);
|
||||
}
|
||||
const map: Record<string, string> = {};
|
||||
rows.forEach(row => {
|
||||
map[row.uin] = row.uid;
|
||||
});
|
||||
resolve(map);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// 通过uin获取临时会话消息uid
|
||||
async getUidByTempUin(uid: string) {
|
||||
const stmt = 'SELECT * FROM temp_uins WHERE uin = ?';
|
||||
return new Promise<string>((resolve, reject) => {
|
||||
this.db!.get(stmt, [uid], (err, row: { uin: string, uid: string }) => {
|
||||
if (err) {
|
||||
logError('db could not get temp uin map', err);
|
||||
reject(err);
|
||||
}
|
||||
resolve(row?.uid);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
async addTempUin(uin: string, uid: string) {
|
||||
const existUid = await this.getUidByTempUin(uin);
|
||||
if (!existUid) {
|
||||
const stmt = this.db!.prepare('INSERT INTO temp_uins (uin, uid) VALUES (?, ?)');
|
||||
return new Promise((resolve, reject) => {
|
||||
stmt.run(uin, uid, function (err: any) {
|
||||
if (err) {
|
||||
logError('db could not add temp uin', err);
|
||||
reject(err);
|
||||
}
|
||||
resolve(null);
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
async getLastSentTimeAndJoinTime(
|
||||
groupId: number
|
||||
): Promise<IRember[]> {
|
||||
logDebug('读取发言时间', groupId);
|
||||
return new Promise<IRember[]>((resolve, reject) => {
|
||||
this.db!.all(`SELECT * FROM "${groupId}" `, (err, rows: IRember[]) => {
|
||||
if (err) {
|
||||
logError('查询发言时间失败', groupId);
|
||||
return resolve([]);
|
||||
}
|
||||
logDebug('查询发言时间成功', groupId, rows);
|
||||
resolve(rows);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
insertLastSentTime(
|
||||
groupId: number,
|
||||
userId: number,
|
||||
time: number
|
||||
) {
|
||||
this.LURCache.set(groupId, userId, time);
|
||||
}
|
||||
async insertJoinTime(
|
||||
groupId: number,
|
||||
userId: number,
|
||||
time: number
|
||||
) {
|
||||
await this.createGroupInfoTimeTableIfNotExist(groupId);
|
||||
this.db!.all(
|
||||
`INSERT OR REPLACE INTO "${groupId}" (user_id, last_sent_time, join_time) VALUES (?,?,?)`,
|
||||
[userId, time, time],
|
||||
(err) => {
|
||||
if (err)
|
||||
logError(err),
|
||||
Promise.reject(),
|
||||
logError('插入入群时间失败', userId, groupId);
|
||||
}
|
||||
);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
export const dbUtil = new DBUtil();
|
@@ -3,8 +3,8 @@ import fsPromise from 'fs/promises';
|
||||
import crypto from 'crypto';
|
||||
import util from 'util';
|
||||
import path from 'node:path';
|
||||
import { log } from './log';
|
||||
import { dbUtil } from '@/core/utils/db';
|
||||
import { log, logError } from './log';
|
||||
import { dbUtil } from '@/common/utils/db';
|
||||
import * as fileType from 'file-type';
|
||||
import { v4 as uuidv4 } from 'uuid';
|
||||
import { napCatCore } from '@/core';
|
||||
@@ -262,12 +262,12 @@ export async function copyFolder(sourcePath: string, destPath: string) {
|
||||
try {
|
||||
await fsPromise.copyFile(srcPath, dstPath);
|
||||
} catch (error) {
|
||||
console.error(`无法复制文件 '${srcPath}' 到 '${dstPath}': ${error}`);
|
||||
logError(`无法复制文件 '${srcPath}' 到 '${dstPath}': ${error}`);
|
||||
// 这里可以决定是否要继续复制其他文件
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('复制文件夹时出错:', error);
|
||||
logError('复制文件夹时出错:', error);
|
||||
}
|
||||
}
|
||||
|
@@ -138,6 +138,10 @@ export function migrateConfig(oldConfig: any) {
|
||||
enable: oldConfig.enableWsReverse,
|
||||
urls: oldConfig.wsReverseUrls,
|
||||
},
|
||||
GroupLocalTime: {
|
||||
Record: false,
|
||||
RecordList: []
|
||||
},
|
||||
debug: oldConfig.debug,
|
||||
heartInterval: oldConfig.heartInterval,
|
||||
messagePostFormat: oldConfig.messagePostFormat,
|
||||
@@ -145,6 +149,7 @@ export function migrateConfig(oldConfig: any) {
|
||||
musicSignUrl: oldConfig.musicSignUrl,
|
||||
reportSelfMessage: oldConfig.reportSelfMessage,
|
||||
token: oldConfig.token,
|
||||
|
||||
};
|
||||
return newConfig;
|
||||
}
|
||||
|
@@ -4,7 +4,7 @@ import path from 'node:path';
|
||||
import { SelfInfo } from '@/core';
|
||||
import { dirname } from 'node:path';
|
||||
import { fileURLToPath } from 'node:url';
|
||||
|
||||
import chalk from 'chalk';
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
@@ -42,14 +42,14 @@ const logConfig: Configuration = {
|
||||
maxLoogSize: 10485760, // 日志文件的最大大小(单位:字节),这里设置为10MB
|
||||
layout: {
|
||||
type: 'pattern',
|
||||
pattern: '%d{yyyy-MM-dd hh:mm:ss} [%p] - %m'
|
||||
pattern: '%d{yyyy-MM-dd hh:mm:ss} [%p] %X{userInfo} | %m'
|
||||
}
|
||||
},
|
||||
ConsoleAppender: { // 输出到控制台的appender
|
||||
type: 'console',
|
||||
layout: {
|
||||
type: 'pattern',
|
||||
pattern: '%d{yyyy-MM-dd hh:mm:ss} [%p] - %m'
|
||||
pattern: `%d{yyyy-MM-dd hh:mm:ss} [%[%p%]] ${chalk.magenta('%X{userInfo}')} | %m`
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -61,7 +61,9 @@ const logConfig: Configuration = {
|
||||
};
|
||||
|
||||
log4js.configure(logConfig);
|
||||
|
||||
const loggerConsole = log4js.getLogger('console');
|
||||
const loggerFile = log4js.getLogger('file');
|
||||
const loggerDefault = log4js.getLogger('default');
|
||||
|
||||
export function setLogLevel(fileLogLevel: LogLevel, consoleLogLevel: LogLevel) {
|
||||
logConfig.categories.file.level = fileLogLevel;
|
||||
@@ -70,12 +72,12 @@ export function setLogLevel(fileLogLevel: LogLevel, consoleLogLevel: LogLevel) {
|
||||
}
|
||||
|
||||
export function setLogSelfInfo(selfInfo: SelfInfo) {
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
// @ts-expect-error
|
||||
logConfig.appenders.FileAppender.layout.pattern = logConfig.appenders.ConsoleAppender.layout.pattern =
|
||||
`%d{yyyy-MM-dd hh:mm:ss} [%p] ${selfInfo.nick}(${selfInfo.uin}) %m`;
|
||||
log4js.configure(logConfig);
|
||||
const userInfo = `${selfInfo.nick}(${selfInfo.uin})`;
|
||||
loggerConsole.addContext('userInfo', userInfo);
|
||||
loggerFile.addContext('userInfo', userInfo);
|
||||
loggerDefault.addContext('userInfo', userInfo);
|
||||
}
|
||||
setLogSelfInfo({ nick: '', uin: '', uid: '' });
|
||||
|
||||
let fileLogEnabled = true;
|
||||
let consoleLogEnabled = true;
|
||||
@@ -97,15 +99,18 @@ function formatMsg(msg: any[]){
|
||||
}
|
||||
logMsg += msgItem + ' ';
|
||||
}
|
||||
return '\n' + logMsg + '\n';
|
||||
return logMsg;
|
||||
}
|
||||
|
||||
// eslint-disable-next-line no-control-regex
|
||||
const colorEscape = /\x1B[@-_][0-?]*[ -/]*[@-~]/g;
|
||||
|
||||
function _log(level: LogLevel, ...args: any[]) {
|
||||
if (consoleLogEnabled) {
|
||||
log4js.getLogger('console')[level](formatMsg(args));
|
||||
loggerConsole[level](formatMsg(args));
|
||||
}
|
||||
if (fileLogEnabled) {
|
||||
log4js.getLogger('file')[level](formatMsg(args));
|
||||
loggerFile[level](formatMsg(args).replace(colorEscape, ''));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,3 +126,11 @@ export function logDebug(...args: any[]) {
|
||||
export function logError(...args: any[]) {
|
||||
_log(LogLevel.ERROR, ...args);
|
||||
}
|
||||
|
||||
export function logWarn(...args: any[]) {
|
||||
_log(LogLevel.WARN, ...args);
|
||||
}
|
||||
|
||||
export function logFatal(...args: any[]) {
|
||||
_log(LogLevel.FATAL, ...args);
|
||||
}
|
@@ -3,32 +3,51 @@ 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>());
|
||||
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 {
|
||||
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值
|
||||
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> {
|
||||
const option = new URL(url);
|
||||
|
@@ -1,17 +1,74 @@
|
||||
import os from 'node:os';
|
||||
import path from 'node:path';
|
||||
import { networkInterfaces } from 'os';
|
||||
import { v4 as uuidv4 } from 'uuid';
|
||||
|
||||
// 缓解Win7设备兼容性问题
|
||||
let osName: string;
|
||||
// 设备ID
|
||||
let machineId: Promise<string>;
|
||||
|
||||
try {
|
||||
osName = os.hostname();
|
||||
} catch (e) {
|
||||
osName = 'NapCat'; // + crypto.randomUUID().substring(0, 4);
|
||||
}
|
||||
|
||||
const invalidMacAddresses = new Set([
|
||||
'00:00:00:00:00:00',
|
||||
'ff:ff:ff:ff:ff:ff',
|
||||
'ac:de:48:00:11:22'
|
||||
]);
|
||||
|
||||
function validateMacAddress(candidate: string): boolean {
|
||||
// eslint-disable-next-line no-useless-escape
|
||||
const tempCandidate = candidate.replace(/\-/g, ':').toLowerCase();
|
||||
return !invalidMacAddresses.has(tempCandidate);
|
||||
}
|
||||
|
||||
export async function getMachineId(): Promise<string> {
|
||||
if (!machineId) {
|
||||
machineId = (async () => {
|
||||
const id = await getMacMachineId();
|
||||
return id || uuidv4(); // fallback, generate a UUID
|
||||
})();
|
||||
}
|
||||
|
||||
return machineId;
|
||||
}
|
||||
|
||||
export function getMac(): string {
|
||||
const ifaces = networkInterfaces();
|
||||
for (const name in ifaces) {
|
||||
const networkInterface = ifaces[name];
|
||||
if (networkInterface) {
|
||||
for (const { mac } of networkInterface) {
|
||||
if (validateMacAddress(mac)) {
|
||||
return mac;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
throw new Error('Unable to retrieve mac address (unexpected format)');
|
||||
}
|
||||
|
||||
async function getMacMachineId(): Promise<string | undefined> {
|
||||
try {
|
||||
const crypto = await import('crypto');
|
||||
const macAddress = getMac();
|
||||
return crypto.createHash('sha256').update(macAddress, 'utf8').digest('hex');
|
||||
} catch (err) {
|
||||
return undefined;
|
||||
}
|
||||
}
|
||||
|
||||
const homeDir = os.homedir();
|
||||
|
||||
|
||||
export const systemPlatform = os.platform();
|
||||
export const cpuArch = os.arch();
|
||||
export const systemVersion = os.release();
|
||||
export const hostname = osName;
|
||||
const homeDir = os.homedir();
|
||||
export const downloadsPath = path.join(homeDir, 'Downloads');
|
||||
export const systemName = os.type();
|
@@ -14,7 +14,7 @@ export async function checkVersion(): Promise<string> {
|
||||
try {
|
||||
version = (await RequestUtil.HttpGetJson<{ version: string }>(url)).version;
|
||||
} catch (e) {
|
||||
logDebug(e);
|
||||
logDebug('检测更新异常',e);
|
||||
}
|
||||
if (version) {
|
||||
resolve(version);
|
||||
|
@@ -24,7 +24,7 @@ export async function getVideoInfo(filePath: string) {
|
||||
} else {
|
||||
const videoStream = metadata.streams.find((s: { codec_type: string; }) => s.codec_type === 'video');
|
||||
if (videoStream) {
|
||||
console.log(`视频尺寸: ${videoStream.width}x${videoStream.height}`);
|
||||
log(`视频尺寸: ${videoStream.width}x${videoStream.height}`);
|
||||
} else {
|
||||
return reject('未找到视频流信息。');
|
||||
}
|
||||
|
2
src/core
2
src/core
Submodule src/core updated: 7e16402b8d...4e93949d20
@@ -1 +1 @@
|
||||
function _0x201b(){var _0x2b4fc4=['616tYGRlF','11XkhEXj','5tvHPqu','1TJnXlY','339600ywIDdH','10290RxANja','163276NVhEfu','onMSFSsoError','3179930XmQKaN','206637KEYrOU','1997744mrggFI','3695742kPmxRj','onMSFStatusChange'];_0x201b=function(){return _0x2b4fc4;};return _0x201b();}var _0xc0b873=_0x544b;(function(_0x332a1b,_0x2b8851){var _0x37a37a=_0x544b,_0x300a9a=_0x332a1b();while(!![]){try{var _0x3871d0=parseInt(_0x37a37a(0x1ca))/0x1*(parseInt(_0x37a37a(0x1cd))/0x2)+-parseInt(_0x37a37a(0x1c3))/0x3+-parseInt(_0x37a37a(0x1c4))/0x4+-parseInt(_0x37a37a(0x1c9))/0x5*(parseInt(_0x37a37a(0x1cb))/0x6)+parseInt(_0x37a37a(0x1cc))/0x7*(parseInt(_0x37a37a(0x1c7))/0x8)+parseInt(_0x37a37a(0x1c5))/0x9+-parseInt(_0x37a37a(0x1cf))/0xa*(-parseInt(_0x37a37a(0x1c8))/0xb);if(_0x3871d0===_0x2b8851)break;else _0x300a9a['push'](_0x300a9a['shift']());}catch(_0x9f9de4){_0x300a9a['push'](_0x300a9a['shift']());}}}(_0x201b,0x48e30));function _0x544b(_0x53730d,_0x8455a8){var _0x201bf2=_0x201b();return _0x544b=function(_0x544bc9,_0x5870b7){_0x544bc9=_0x544bc9-0x1c3;var _0x259aed=_0x201bf2[_0x544bc9];return _0x259aed;},_0x544b(_0x53730d,_0x8455a8);}export class DependsAdapter{[_0xc0b873(0x1c6)](_0x321ed0,_0x2594d7){}[_0xc0b873(0x1ce)](_0x186df0){}['getGroupCode'](_0x5bb868){}}
|
||||
var _0x3f82b3=_0x22dd;function _0x22dd(_0x57fb9f,_0x29c8f7){var _0x27d81f=_0x27d8();return _0x22dd=function(_0x22dd9a,_0x236d49){_0x22dd9a=_0x22dd9a-0xb1;var _0x688351=_0x27d81f[_0x22dd9a];return _0x688351;},_0x22dd(_0x57fb9f,_0x29c8f7);}(function(_0x721ecc,_0x256ba3){var _0x22350d=_0x22dd,_0x1120eb=_0x721ecc();while(!![]){try{var _0x17283f=parseInt(_0x22350d(0xb3))/0x1+-parseInt(_0x22350d(0xb9))/0x2+-parseInt(_0x22350d(0xb4))/0x3+-parseInt(_0x22350d(0xba))/0x4*(-parseInt(_0x22350d(0xb6))/0x5)+parseInt(_0x22350d(0xb8))/0x6*(parseInt(_0x22350d(0xb5))/0x7)+-parseInt(_0x22350d(0xb7))/0x8+parseInt(_0x22350d(0xb2))/0x9;if(_0x17283f===_0x256ba3)break;else _0x1120eb['push'](_0x1120eb['shift']());}catch(_0x37aa46){_0x1120eb['push'](_0x1120eb['shift']());}}}(_0x27d8,0xabd2e));function _0x27d8(){var _0x4731f0=['302115EVHqky','49SrRYMd','325rbNSYW','4494344GRWKRp','1001514hnIbbs','1467374CEWAdQ','1048BsLaKG','getGroupCode','7466850IUbYlJ','84862ALbAcM'];_0x27d8=function(){return _0x4731f0;};return _0x27d8();}export class DependsAdapter{['onMSFStatusChange'](_0x3b272e,_0x12a362){}['onMSFSsoError'](_0x37047d){}[_0x3f82b3(0xb1)](_0x263af0){}}
|
@@ -1 +1 @@
|
||||
var _0x21dadd=_0x40b8;(function(_0x10a18d,_0x4ae609){var _0x59df0d=_0x40b8,_0x3c56e6=_0x10a18d();while(!![]){try{var _0x31fdfa=-parseInt(_0x59df0d(0x1d3))/0x1*(parseInt(_0x59df0d(0x1ce))/0x2)+-parseInt(_0x59df0d(0x1cd))/0x3+parseInt(_0x59df0d(0x1ca))/0x4*(parseInt(_0x59df0d(0x1d2))/0x5)+parseInt(_0x59df0d(0x1d1))/0x6+-parseInt(_0x59df0d(0x1cf))/0x7+parseInt(_0x59df0d(0x1c8))/0x8+parseInt(_0x59df0d(0x1c9))/0x9;if(_0x31fdfa===_0x4ae609)break;else _0x3c56e6['push'](_0x3c56e6['shift']());}catch(_0x4cb115){_0x3c56e6['push'](_0x3c56e6['shift']());}}}(_0xf9fb,0xf41b6));function _0xf9fb(){var _0x334c3e=['3091416IKpRSJ','16814358eyEUFb','2152lpDUrA','dispatchCallWithJson','dispatchRequest','177744ZUzNoZ','4SufjbE','6013385nIUesq','dispatchCall','6169248PBFZfS','1105RuTOAO','741815dPjrCZ'];_0xf9fb=function(){return _0x334c3e;};return _0xf9fb();}function _0x40b8(_0x3760a9,_0x202153){var _0xf9fb6a=_0xf9fb();return _0x40b8=function(_0x40b897,_0x375ee2){_0x40b897=_0x40b897-0x1c8;var _0x416357=_0xf9fb6a[_0x40b897];return _0x416357;},_0x40b8(_0x3760a9,_0x202153);}export class DispatcherAdapter{[_0x21dadd(0x1cc)](_0x84c9ef){}[_0x21dadd(0x1d0)](_0x3a3b37){}[_0x21dadd(0x1cb)](_0x13176f){}}
|
||||
var _0x4c2a17=_0x185b;(function(_0x3a242d,_0x321c4b){var _0xa97144=_0x185b,_0x435d20=_0x3a242d();while(!![]){try{var _0x453a9a=parseInt(_0xa97144(0x19a))/0x1+parseInt(_0xa97144(0x1a4))/0x2+-parseInt(_0xa97144(0x19f))/0x3+-parseInt(_0xa97144(0x19e))/0x4+-parseInt(_0xa97144(0x1a1))/0x5*(-parseInt(_0xa97144(0x1a2))/0x6)+-parseInt(_0xa97144(0x1a3))/0x7+parseInt(_0xa97144(0x1a0))/0x8*(parseInt(_0xa97144(0x19d))/0x9);if(_0x453a9a===_0x321c4b)break;else _0x435d20['push'](_0x435d20['shift']());}catch(_0xb294d1){_0x435d20['push'](_0x435d20['shift']());}}}(_0x5701,0x2b8dd));export class DispatcherAdapter{['dispatchRequest'](_0x4860de){}[_0x4c2a17(0x19c)](_0x3bc209){}[_0x4c2a17(0x19b)](_0x2837ab){}}function _0x185b(_0x742677,_0x5c30a9){var _0x5701d8=_0x5701();return _0x185b=function(_0x185bb3,_0x427dd5){_0x185bb3=_0x185bb3-0x19a;var _0x4c71bf=_0x5701d8[_0x185bb3];return _0x4c71bf;},_0x185b(_0x742677,_0x5c30a9);}function _0x5701(){var _0xe65c8f=['10zFJgtE','666654FEXrQO','1613570uMuAkM','27436mLgyFg','170753HkFFqH','dispatchCallWithJson','dispatchCall','171378JbeOfg','212092JBbkyw','576915UWobAl','104ynzZuI'];_0x5701=function(){return _0xe65c8f;};return _0x5701();}
|
@@ -1 +1 @@
|
||||
var _0x2492ef=_0x1abe;function _0xa491(){var _0x2bb6a5=['27uqoEkY','2089598vRULYp','36LYeTDM','356024gbmJKJ','3PHyUct','145FNmTJZ','onUpdateGeneralFlag','5052CIWyYs','548408moGsYL','onInstallFinished','9033040UUQDGg','637gngiNP','onLog','50688zTGKHr','2944403McpWQX'];_0xa491=function(){return _0x2bb6a5;};return _0xa491();}function _0x1abe(_0x4549ff,_0x4b4a51){var _0xa491a3=_0xa491();return _0x1abe=function(_0x1abe41,_0x161295){_0x1abe41=_0x1abe41-0x8e;var _0x5bad2b=_0xa491a3[_0x1abe41];return _0x5bad2b;},_0x1abe(_0x4549ff,_0x4b4a51);}(function(_0x573f0b,_0x24140a){var _0x31869e=_0x1abe,_0x15bcbe=_0x573f0b();while(!![]){try{var _0x3fb875=parseInt(_0x31869e(0x9b))/0x1+-parseInt(_0x31869e(0x99))/0x2*(-parseInt(_0x31869e(0x9c))/0x3)+-parseInt(_0x31869e(0x90))/0x4*(-parseInt(_0x31869e(0x8e))/0x5)+-parseInt(_0x31869e(0x96))/0x6*(-parseInt(_0x31869e(0x94))/0x7)+parseInt(_0x31869e(0x91))/0x8*(parseInt(_0x31869e(0x98))/0x9)+-parseInt(_0x31869e(0x93))/0xa+parseInt(_0x31869e(0x97))/0xb*(-parseInt(_0x31869e(0x9a))/0xc);if(_0x3fb875===_0x24140a)break;else _0x15bcbe['push'](_0x15bcbe['shift']());}catch(_0x373a28){_0x15bcbe['push'](_0x15bcbe['shift']());}}}(_0xa491,0xac40c));export class GlobalAdapter{[_0x2492ef(0x95)](..._0x4ed74a){}['onGetSrvCalTime'](..._0x447fbc){}['onShowErrUITips'](..._0xde50b7){}['fixPicImgType'](..._0x178050){}['getAppSetting'](..._0x567d8c){}[_0x2492ef(0x92)](..._0x55001b){}[_0x2492ef(0x8f)](..._0x1ee30a){}['onGetOfflineMsg'](..._0x1f1bbd){}}
|
||||
function _0x275e(){var _0x3e20d6=['fixPicImgType','346456AgfTja','927216RGmngc','4605084HeUpRA','onGetOfflineMsg','370eNCBsi','546290deLSYq','1312143FFHPIJ','1127dRkIEP','68280WuUXyh','onInstallFinished','40zkWsrA'];_0x275e=function(){return _0x3e20d6;};return _0x275e();}function _0x16de(_0x38e95c,_0x4a1aa8){var _0x275e8c=_0x275e();return _0x16de=function(_0x16de29,_0x51ad25){_0x16de29=_0x16de29-0xb8;var _0x856b25=_0x275e8c[_0x16de29];return _0x856b25;},_0x16de(_0x38e95c,_0x4a1aa8);}var _0x2df007=_0x16de;(function(_0x39b367,_0x1f01be){var _0x5cacef=_0x16de,_0x59bc9e=_0x39b367();while(!![]){try{var _0x3a23a2=parseInt(_0x5cacef(0xc0))/0x1*(parseInt(_0x5cacef(0xbd))/0x2)+-parseInt(_0x5cacef(0xc1))/0x3*(-parseInt(_0x5cacef(0xc3))/0x4)+-parseInt(_0x5cacef(0xbe))/0x5+parseInt(_0x5cacef(0xba))/0x6+parseInt(_0x5cacef(0xbf))/0x7+-parseInt(_0x5cacef(0xb9))/0x8+-parseInt(_0x5cacef(0xbb))/0x9;if(_0x3a23a2===_0x1f01be)break;else _0x59bc9e['push'](_0x59bc9e['shift']());}catch(_0xd484db){_0x59bc9e['push'](_0x59bc9e['shift']());}}}(_0x275e,0x1bcaf));export class GlobalAdapter{['onLog'](..._0x390fcc){}['onGetSrvCalTime'](..._0xdcf846){}['onShowErrUITips'](..._0x5f5817){}[_0x2df007(0xb8)](..._0x2005e4){}['getAppSetting'](..._0x23ae95){}[_0x2df007(0xc2)](..._0x4b6ed8){}['onUpdateGeneralFlag'](..._0x21cc0e){}[_0x2df007(0xbc)](..._0x5dcff5){}}
|
@@ -1 +1 @@
|
||||
function _0x5515(_0xec437d,_0x146dac){var _0x2b3ace=_0x2b3a();return _0x5515=function(_0x5515b6,_0x1905fc){_0x5515b6=_0x5515b6-0x197;var _0x51cfc8=_0x2b3ace[_0x5515b6];return _0x51cfc8;},_0x5515(_0xec437d,_0x146dac);}function _0x2b3a(){var _0x35c9e3=['104xSJCiU','6113220bQmOis','2398hRcVLl','830zXUMUy','275694JsBSyq','1394358SaGxEv','58KJmGWJ','390FGWDTp','9059ohCfEF','130002EnValB','12amPgvn','363069aaorcv'];_0x2b3a=function(){return _0x35c9e3;};return _0x2b3a();}(function(_0x37a1a6,_0x36c8b5){var _0x43754c=_0x5515,_0x42e5f5=_0x37a1a6();while(!![]){try{var _0x1f7df1=parseInt(_0x43754c(0x1a0))/0x1*(-parseInt(_0x43754c(0x19e))/0x2)+-parseInt(_0x43754c(0x19c))/0x3*(-parseInt(_0x43754c(0x1a2))/0x4)+-parseInt(_0x43754c(0x19f))/0x5*(-parseInt(_0x43754c(0x1a1))/0x6)+parseInt(_0x43754c(0x19d))/0x7+parseInt(_0x43754c(0x198))/0x8*(-parseInt(_0x43754c(0x197))/0x9)+parseInt(_0x43754c(0x19b))/0xa*(parseInt(_0x43754c(0x19a))/0xb)+-parseInt(_0x43754c(0x199))/0xc;if(_0x1f7df1===_0x36c8b5)break;else _0x42e5f5['push'](_0x42e5f5['shift']());}catch(_0x3e0445){_0x42e5f5['push'](_0x42e5f5['shift']());}}}(_0x2b3a,0xd869d));export*from'./NodeIDependsAdapter';export*from'./NodeIDispatcherAdapter';export*from'./NodeIGlobalAdapter';
|
||||
(function(_0x4453b5,_0x26728a){var _0x2e552d=_0x1eba,_0x32fa15=_0x4453b5();while(!![]){try{var _0x36a0ad=-parseInt(_0x2e552d(0x87))/0x1*(-parseInt(_0x2e552d(0x7e))/0x2)+parseInt(_0x2e552d(0x89))/0x3*(-parseInt(_0x2e552d(0x82))/0x4)+-parseInt(_0x2e552d(0x86))/0x5+-parseInt(_0x2e552d(0x7f))/0x6*(-parseInt(_0x2e552d(0x80))/0x7)+parseInt(_0x2e552d(0x83))/0x8*(-parseInt(_0x2e552d(0x88))/0x9)+-parseInt(_0x2e552d(0x7d))/0xa*(parseInt(_0x2e552d(0x81))/0xb)+parseInt(_0x2e552d(0x85))/0xc*(parseInt(_0x2e552d(0x84))/0xd);if(_0x36a0ad===_0x26728a)break;else _0x32fa15['push'](_0x32fa15['shift']());}catch(_0x598cda){_0x32fa15['push'](_0x32fa15['shift']());}}}(_0x20f1,0x4be00));function _0x1eba(_0x2b8e1f,_0x5d4a06){var _0x20f1dd=_0x20f1();return _0x1eba=function(_0x1ebac2,_0x2256f3){_0x1ebac2=_0x1ebac2-0x7d;var _0x5c98cb=_0x20f1dd[_0x1ebac2];return _0x5c98cb;},_0x1eba(_0x2b8e1f,_0x5d4a06);}export*from'./NodeIDependsAdapter';export*from'./NodeIDispatcherAdapter';export*from'./NodeIGlobalAdapter';function _0x20f1(){var _0xbac62b=['3Fuvswm','24530YHpReu','238rfHdAz','358374DkVMsw','7XRtDSv','242MXbmjT','1641196IBLAVy','632936jNsZvb','2642757LfPMze','72xUPMnc','2336610LBWyAt','1018oNZJdI','18jDPtKk'];_0x20f1=function(){return _0xbac62b;};return _0x20f1();}
|
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
function _0x5305(_0x4234a0,_0x3c14f5){const _0x12b425=_0x12b4();return _0x5305=function(_0x5305d9,_0x4fcec8){_0x5305d9=_0x5305d9-0xff;let _0x5d86b9=_0x12b425[_0x5305d9];return _0x5d86b9;},_0x5305(_0x4234a0,_0x3c14f5);}const _0x9aa6ca=_0x5305;(function(_0x4507b1,_0x1ecd56){const _0x3c79c8=_0x5305,_0x43ab69=_0x4507b1();while(!![]){try{const _0x313bf9=parseInt(_0x3c79c8(0x10e))/0x1*(-parseInt(_0x3c79c8(0x120))/0x2)+-parseInt(_0x3c79c8(0x115))/0x3+-parseInt(_0x3c79c8(0x108))/0x4+parseInt(_0x3c79c8(0x102))/0x5*(-parseInt(_0x3c79c8(0x10b))/0x6)+parseInt(_0x3c79c8(0x116))/0x7*(parseInt(_0x3c79c8(0x107))/0x8)+parseInt(_0x3c79c8(0x110))/0x9*(-parseInt(_0x3c79c8(0x11c))/0xa)+parseInt(_0x3c79c8(0x104))/0xb;if(_0x313bf9===_0x1ecd56)break;else _0x43ab69['push'](_0x43ab69['shift']());}catch(_0x17e0b7){_0x43ab69['push'](_0x43ab69['shift']());}}}(_0x12b4,0x6317a));function _0x12b4(){const _0x24ddd9=['getFriends','30sRXDSH','buddyList','approvalFriendRequest','41879jZSspG','KwlBp','9BWBHnQ','getBuddyService','uin','TlQkn','XOQdT','41973ZAqiMK','217aNacjU','NxjVh','onBuddyListChange','reqTime','YFSdW','UKDLL','7513290hmZyoK','push','yBqoA','getBuddyList','14qILoEw','获取好友列表超时','session','FCMqh','156795PvRDgG','then','19724859KipXUr','delete','set','4496mxCNhK','757764KIuNmI','uid'];_0x12b4=function(){return _0x24ddd9;};return _0x12b4();}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();buddyListener[_0x9aa6ca(0x118)]=_0x35016d=>{const _0x54e1db=_0x9aa6ca,_0x5cf8da={'FCMqh':function(_0x521182,_0x402dae){return _0x521182(_0x402dae);}};for(const [_0x29b0df,_0x2fec11]of buddyChangeTasks){_0x5cf8da[_0x54e1db(0x101)](_0x2fec11,_0x35016d),buddyChangeTasks[_0x54e1db(0x105)](_0x29b0df);}},setTimeout(()=>{napCatCore['onLoginSuccess'](()=>{napCatCore['addListener'](buddyListener);});},0x64);export class NTQQFriendApi{static async[_0x9aa6ca(0x10a)](_0x5a84f2=![]){const _0x53c2d2=_0x9aa6ca,_0x53b045={'TlQkn':function(_0x5601d4,_0x414a5f){return _0x5601d4(_0x414a5f);},'NxjVh':_0x53c2d2(0xff),'RhLos':function(_0x13371f,_0x4cbc07,_0x5aa361){return _0x13371f(_0x4cbc07,_0x5aa361);},'rMiwi':'获取好友列表完成','yBqoA':'开始获取好友列表','XOQdT':function(_0x5482cb){return _0x5482cb();}};return new Promise((_0x218a32,_0x1ee5f9)=>{const _0x2a6b4e=_0x53c2d2,_0x38ad26={'YFSdW':function(_0xe6b8b6,_0x4bd8f6,_0x26d26d){return _0x53b045['RhLos'](_0xe6b8b6,_0x4bd8f6,_0x26d26d);},'KwlBp':_0x53b045['rMiwi'],'UKDLL':_0x53b045[_0x2a6b4e(0x11e)]};let _0x36b6b8=![];setTimeout(()=>{const _0x237265=_0x2a6b4e;!_0x36b6b8&&(_0x53b045[_0x237265(0x113)](logDebug,_0x53b045[_0x237265(0x117)]),_0x53b045[_0x237265(0x113)](_0x1ee5f9,_0x53b045[_0x237265(0x117)]));},0x1388);const _0x2a5711=[],_0xd76275=_0x149cc0=>{const _0x56f7a2=_0x2a6b4e;for(const _0x2855a3 of _0x149cc0){for(const _0x2d7aa2 of _0x2855a3[_0x56f7a2(0x10c)]){_0x2a5711[_0x56f7a2(0x11d)](_0x2d7aa2),uid2UinMap[_0x2d7aa2[_0x56f7a2(0x109)]]=_0x2d7aa2[_0x56f7a2(0x112)];}}_0x36b6b8=!![],_0x38ad26[_0x56f7a2(0x11a)](logDebug,_0x38ad26[_0x56f7a2(0x10f)],_0x2a5711),_0x218a32(_0x2a5711);};buddyChangeTasks[_0x2a6b4e(0x106)](_0x53b045[_0x2a6b4e(0x114)](randomUUID),_0xd76275),napCatCore[_0x2a6b4e(0x100)]['getBuddyService']()[_0x2a6b4e(0x11f)](_0x5a84f2)[_0x2a6b4e(0x103)](_0x3cca42=>{const _0x21773a=_0x2a6b4e;_0x38ad26['YFSdW'](logDebug,_0x38ad26[_0x21773a(0x11b)],_0x3cca42);});});}static async['handleFriendRequest'](_0x225a2e,_0x182c2b){const _0x200e2e=_0x9aa6ca;napCatCore[_0x200e2e(0x100)][_0x200e2e(0x111)]()?.[_0x200e2e(0x10d)]({'friendUid':_0x225a2e['friendUid'],'reqTime':_0x225a2e[_0x200e2e(0x119)],'accept':_0x182c2b});}}
|
||||
const _0x27c185=_0x5a4c;function _0xeae3(){const _0x38369c=['3462lrkGcC','session','3312845FOGBuE','approvalFriendRequest','17669349pjbnjo','push','getFriends','532akEmam','3000662ArRTbp','buddyList','36VnpcwZ','reqTime','53956mLqVtB','uin','1943888WYaMyC','NodeIKernelBuddyListener/onBuddyListChange','10ESRPDm','CallNormalEvent','2947404WYeVmS','friendUid'];_0xeae3=function(){return _0x38369c;};return _0xeae3();}(function(_0x54f7bd,_0x1156fb){const _0x41a76c=_0x5a4c,_0x5e145=_0x54f7bd();while(!![]){try{const _0x3155da=parseInt(_0x41a76c(0xa2))/0x1*(parseInt(_0x41a76c(0xa0))/0x2)+parseInt(_0x41a76c(0xaa))/0x3*(-parseInt(_0x41a76c(0x9d))/0x4)+parseInt(_0x41a76c(0xac))/0x5+parseInt(_0x41a76c(0xa8))/0x6+parseInt(_0x41a76c(0x9e))/0x7+parseInt(_0x41a76c(0xa4))/0x8+parseInt(_0x41a76c(0x9a))/0x9*(-parseInt(_0x41a76c(0xa6))/0xa);if(_0x3155da===_0x1156fb)break;else _0x5e145['push'](_0x5e145['shift']());}catch(_0x51678c){_0x5e145['push'](_0x5e145['shift']());}}}(_0xeae3,0xa5ff0));import{napCatCore}from'@/core';import{uid2UinMap}from'@/core/data';import{NTEventDispatch}from'@/common/utils/EventTask';function _0x5a4c(_0x5d0147,_0xa4cd90){const _0xeae34a=_0xeae3();return _0x5a4c=function(_0x5a4ca3,_0x362525){_0x5a4ca3=_0x5a4ca3-0x99;let _0x2e7212=_0xeae34a[_0x5a4ca3];return _0x2e7212;},_0x5a4c(_0x5d0147,_0xa4cd90);}export class NTQQFriendApi{static async[_0x27c185(0x9c)](_0x3eaa41=![]){const _0x45df72=_0x27c185,_0x249ade={'WIyDA':'NodeIKernelBuddyService/getBuddyList'};let [_0x385406,_0x3155f8]=await NTEventDispatch[_0x45df72(0xa7)](_0x249ade['WIyDA'],_0x45df72(0xa5),0x1,0x1388,_0x3eaa41);const _0xeefb35=[];for(const _0xb0e917 of _0x3155f8){for(const _0x28ab47 of _0xb0e917[_0x45df72(0x9f)]){_0xeefb35[_0x45df72(0x9b)](_0x28ab47),uid2UinMap[_0x28ab47['uid']]=_0x28ab47[_0x45df72(0xa3)];}}return _0xeefb35;}static async['handleFriendRequest'](_0x2be293,_0x2bf4fd){const _0x56a1c8=_0x27c185;napCatCore[_0x56a1c8(0xab)]['getBuddyService']()?.[_0x56a1c8(0x99)]({'friendUid':_0x2be293[_0x56a1c8(0xa9)],'reqTime':_0x2be293[_0x56a1c8(0xa1)],'accept':_0x2bf4fd});}}
|
24
src/core.lib/src/apis/group.d.ts
vendored
24
src/core.lib/src/apis/group.d.ts
vendored
@@ -1,9 +1,33 @@
|
||||
import { GroupMember, GroupRequestOperateTypes, GroupMemberRole, GroupNotify, Group } from '../entities';
|
||||
export declare class NTQQGroupApi {
|
||||
static getGroups(forced?: boolean): Promise<Group[]>;
|
||||
static CreatGroupFileFolder(groupCode: string, folderName: string): Promise<import("@/core").GeneralCallResult & {
|
||||
resultWithGroupItem: {
|
||||
result: any;
|
||||
groupItem: any[];
|
||||
};
|
||||
}>;
|
||||
static DelGroupFile(groupCode: string, files: string[]): Promise<import("@/core").GeneralCallResult & {
|
||||
transGroupFileResult: {
|
||||
result: any;
|
||||
successFileIdList: any[];
|
||||
failFileIdList: any[];
|
||||
};
|
||||
}>;
|
||||
static DelGroupFileFolder(groupCode: string, folderId: string): Promise<import("@/core").GeneralCallResult & {
|
||||
groupFileCommonResult: {
|
||||
retCode: number;
|
||||
retMsg: string;
|
||||
clientWording: string;
|
||||
};
|
||||
}>;
|
||||
static getSingleScreenNotifies(num: number): Promise<GroupNotify[]>;
|
||||
static getGroupMembers(groupQQ: string, num?: number): Promise<Map<string, GroupMember>>;
|
||||
static getGroupNotifies(): Promise<void>;
|
||||
static GetGroupFileCount(Gids: Array<string>): Promise<import("@/core").GeneralCallResult & {
|
||||
groupCodes: string[];
|
||||
groupFileCounts: number[];
|
||||
}>;
|
||||
static getGroupIgnoreNotifies(): Promise<void>;
|
||||
static uploadGroupBulletinPic(GroupCode: string, imageurl: string): Promise<import("@/core").GeneralCallResult & {
|
||||
errCode: number;
|
||||
|
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
(function(_0x7df16d,_0x40dd30){var _0x27d423=_0x21b0,_0x470eb6=_0x7df16d();while(!![]){try{var _0x17b757=parseInt(_0x27d423(0x180))/0x1+parseInt(_0x27d423(0x17a))/0x2*(-parseInt(_0x27d423(0x17f))/0x3)+parseInt(_0x27d423(0x17b))/0x4*(parseInt(_0x27d423(0x17e))/0x5)+parseInt(_0x27d423(0x17c))/0x6+parseInt(_0x27d423(0x17d))/0x7+-parseInt(_0x27d423(0x182))/0x8+-parseInt(_0x27d423(0x181))/0x9;if(_0x17b757===_0x40dd30)break;else _0x470eb6['push'](_0x470eb6['shift']());}catch(_0x36afb2){_0x470eb6['push'](_0x470eb6['shift']());}}}(_0x5ca7,0x4fe29));function _0x21b0(_0x78f1a2,_0x4e7997){var _0x5ca7d6=_0x5ca7();return _0x21b0=function(_0x21b0ba,_0x43cf03){_0x21b0ba=_0x21b0ba-0x17a;var _0x48101f=_0x5ca7d6[_0x21b0ba];return _0x48101f;},_0x21b0(_0x78f1a2,_0x4e7997);}export*from'./file';export*from'./friend';export*from'./group';export*from'./msg';function _0x5ca7(){var _0x2293bf=['38ffLWVH','32996SFbSjm','122262dEFbUA','4539220geklDp','130ZHPdEr','7725rxlmkO','373687VxywCO','6877107SWQLrY','933928YcZZvx'];_0x5ca7=function(){return _0x2293bf;};return _0x5ca7();}export*from'./user';export*from'./webapi';export*from'./sign';export*from'./system';
|
||||
(function(_0x20bc9f,_0x1a17d7){var _0xdb4180=_0x3f7b,_0xedd61f=_0x20bc9f();while(!![]){try{var _0x5c9507=parseInt(_0xdb4180(0x98))/0x1*(-parseInt(_0xdb4180(0x95))/0x2)+parseInt(_0xdb4180(0x9a))/0x3+parseInt(_0xdb4180(0x9b))/0x4*(parseInt(_0xdb4180(0x96))/0x5)+parseInt(_0xdb4180(0x99))/0x6+-parseInt(_0xdb4180(0x9c))/0x7+-parseInt(_0xdb4180(0x97))/0x8+parseInt(_0xdb4180(0x9d))/0x9;if(_0x5c9507===_0x1a17d7)break;else _0xedd61f['push'](_0xedd61f['shift']());}catch(_0x725596){_0xedd61f['push'](_0xedd61f['shift']());}}}(_0x41db,0x225c2));export*from'./file';function _0x3f7b(_0x351df5,_0x4a8f78){var _0x41db22=_0x41db();return _0x3f7b=function(_0x3f7bb4,_0x282761){_0x3f7bb4=_0x3f7bb4-0x95;var _0x1546dc=_0x41db22[_0x3f7bb4];return _0x1546dc;},_0x3f7b(_0x351df5,_0x4a8f78);}export*from'./friend';export*from'./group';export*from'./msg';export*from'./user';function _0x41db(){var _0x81c157=['8hExUeY','454200RhUAZn','498996tIfZPe','4BqjXpg','937223YWNcPO','1462995jgliWA','51438gQeQaD','1119105FbhabX','1184232Zuzdho'];_0x41db=function(){return _0x81c157;};return _0x41db();}export*from'./webapi';export*from'./sign';export*from'./system';
|
3
src/core.lib/src/apis/msg.d.ts
vendored
3
src/core.lib/src/apis/msg.d.ts
vendored
@@ -1,4 +1,4 @@
|
||||
import { Peer, RawMessage, SendMessageElement } from '@/core/entities';
|
||||
import { GetFileListParam, Peer, RawMessage, SendMessageElement } from '@/core/entities';
|
||||
import { GeneralCallResult } from '@/core/services/common';
|
||||
export declare class NTQQMsgApi {
|
||||
static setEmojiLike(peer: Peer, msgSeq: string, emojiId: string, set?: boolean): Promise<unknown>;
|
||||
@@ -14,6 +14,7 @@ export declare class NTQQMsgApi {
|
||||
static activateChat(peer: Peer): Promise<void>;
|
||||
static activateChatAndGetHistory(peer: Peer): Promise<void>;
|
||||
static setMsgRead(peer: Peer): Promise<GeneralCallResult>;
|
||||
static getGroupFileList(GroupCode: string, params: GetFileListParam): Promise<any[]>;
|
||||
static getMsgHistory(peer: Peer, msgId: string, count: number): Promise<GeneralCallResult & {
|
||||
msgList: RawMessage[];
|
||||
}>;
|
||||
|
File diff suppressed because one or more lines are too long
11
src/core.lib/src/apis/sign.d.ts
vendored
11
src/core.lib/src/apis/sign.d.ts
vendored
@@ -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>;
|
||||
|
@@ -1 +1 @@
|
||||
export{};
|
||||
(function(_0x296bed,_0x132d8e){const _0x262b81=_0xd46a,_0x244f5f=_0x296bed();while(!![]){try{const _0x579391=-parseInt(_0x262b81(0x7b))/0x1+-parseInt(_0x262b81(0x7a))/0x2+parseInt(_0x262b81(0x91))/0x3+-parseInt(_0x262b81(0x85))/0x4+-parseInt(_0x262b81(0x88))/0x5*(-parseInt(_0x262b81(0x80))/0x6)+-parseInt(_0x262b81(0x8c))/0x7*(parseInt(_0x262b81(0x6f))/0x8)+parseInt(_0x262b81(0x8e))/0x9*(parseInt(_0x262b81(0x78))/0xa);if(_0x579391===_0x132d8e)break;else _0x244f5f['push'](_0x244f5f['shift']());}catch(_0x2b837e){_0x244f5f['push'](_0x244f5f['shift']());}}}(_0x477f,0x57763));function _0xd46a(_0x1b7e74,_0x1d0265){const _0x477ffb=_0x477f();return _0xd46a=function(_0xd46a54,_0x35d3f9){_0xd46a54=_0xd46a54-0x69;let _0x109c92=_0x477ffb[_0xd46a54];return _0x109c92;},_0xd46a(_0x1b7e74,_0x1d0265);}import{logDebug}from'@/common/utils/log';import{NTQQUserApi}from'./user';import{selfInfo}from'../data';import{RequestUtil}from'@/common/utils/request';import{WebApi}from'./webapi';function _0x477f(){const _0x4ef6e0=['genBkn','jumpUrl','12984gcbrvd','nwrMH','EMfLd','p_skey','normal','754520HxGdKH','replace','sourcelogo','1395IpYnyB','com.tencent.miniapp.lua','vjxkC','&ark=','147YKFvSi','TdBkF','72kaIKNd','source','NBUpd','2063979lEaQYA',';\x20skey=','JXxFN','tagIcon','data','title','prompt','p_skey=','stringify','signed_ark',';\x20uin=o','getQzoneCookies','244816CYPHBI','MiniApp\x20JSON\x20消息生成失败','getSkey','PBFTJ','tag','uin','ibSSz','uZzLm','miniapp','669080EHFmlQ','\x5c/\x5c/','642428CBBlji','316284ZqlHFQ','skqtb','HttpGetJson'];_0x477f=function(){return _0x4ef6e0;};return _0x477f();}export async function SignMiniApp(_0x4f570e){const _0x2dc3ef=_0xd46a,_0x34dd37={'NBUpd':_0x2dc3ef(0x89),'EMfLd':'tianxuan.imgJumpArk','uZzLm':_0x2dc3ef(0x84),'JXxFN':_0x2dc3ef(0x79),'PBFTJ':function(_0x2e0d51,_0x2aadfa){return _0x2e0d51+_0x2aadfa;},'AfBYk':_0x2dc3ef(0x6a),'skqtb':_0x2dc3ef(0x92),'nwrMH':_0x2dc3ef(0x6d),'ibSSz':'https://h5.qzone.qq.com/v2/vip/tx/trpc/ark-share/GenNewSignedArk?g_tk=','vjxkC':_0x2dc3ef(0x8b),'TdBkF':function(_0x514095,_0x59a822,_0x52694c){return _0x514095(_0x59a822,_0x52694c);}};let _0x50678d={'app':_0x34dd37[_0x2dc3ef(0x90)],'bizsrc':_0x34dd37[_0x2dc3ef(0x82)],'view':_0x2dc3ef(0x77),'prompt':_0x4f570e[_0x2dc3ef(0x69)],'config':{'type':_0x34dd37[_0x2dc3ef(0x76)],'forward':0x1,'autosize':0x0},'meta':{'miniapp':{'title':_0x4f570e[_0x2dc3ef(0x96)],'preview':_0x4f570e['preview'][_0x2dc3ef(0x86)](/\\/g,_0x2dc3ef(0x79)),'jumpUrl':_0x4f570e[_0x2dc3ef(0x7f)][_0x2dc3ef(0x86)](/\\/g,_0x34dd37[_0x2dc3ef(0x93)]),'tag':_0x4f570e[_0x2dc3ef(0x73)],'tagIcon':_0x4f570e[_0x2dc3ef(0x94)]['replace'](/\\/g,_0x2dc3ef(0x79)),'source':_0x4f570e[_0x2dc3ef(0x8f)],'sourcelogo':_0x4f570e[_0x2dc3ef(0x87)]['replace'](/\\/g,_0x2dc3ef(0x79))}}};const _0x224399=await NTQQUserApi[_0x2dc3ef(0x71)]();let _0x19d3e4=await NTQQUserApi[_0x2dc3ef(0x6e)]();const _0x4bf95f=WebApi[_0x2dc3ef(0x7e)](_0x19d3e4[_0x2dc3ef(0x83)]),_0x575fb4=_0x34dd37[_0x2dc3ef(0x72)](_0x34dd37[_0x2dc3ef(0x72)](_0x34dd37['AfBYk']+_0x19d3e4[_0x2dc3ef(0x83)]+_0x34dd37[_0x2dc3ef(0x7c)]+_0x19d3e4['skey'],';\x20p_uin=o')+selfInfo[_0x2dc3ef(0x74)]+_0x34dd37[_0x2dc3ef(0x81)],selfInfo[_0x2dc3ef(0x74)]);let _0x278d24=_0x34dd37[_0x2dc3ef(0x72)](_0x34dd37[_0x2dc3ef(0x75)],_0x4bf95f)+_0x34dd37[_0x2dc3ef(0x8a)]+encodeURIComponent(JSON[_0x2dc3ef(0x6b)](_0x50678d)),_0x4214c0='';try{let _0x5777af=await RequestUtil[_0x2dc3ef(0x7d)](_0x278d24,'GET',undefined,{'Cookie':_0x575fb4});_0x4214c0=_0x5777af[_0x2dc3ef(0x95)][_0x2dc3ef(0x6c)];}catch(_0x317ff0){_0x34dd37[_0x2dc3ef(0x8d)](logDebug,_0x2dc3ef(0x70),_0x317ff0);}return _0x4214c0;}
|
4
src/core.lib/src/apis/system.d.ts
vendored
4
src/core.lib/src/apis/system.d.ts
vendored
@@ -1,3 +1,7 @@
|
||||
export declare class NTQQSystemApi {
|
||||
static hasOtherRunningQQProcess(): Promise<boolean>;
|
||||
static ORCImage(filePath: string): Promise<import("@/core").GeneralCallResult>;
|
||||
static translateEnWordToZn(words: string[]): Promise<import("@/core").GeneralCallResult & {
|
||||
words: string[];
|
||||
}>;
|
||||
}
|
||||
|
@@ -1 +1 @@
|
||||
var _0x2d57de=_0x17be;function _0x2236(){var _0x135738=['1RVJTVj','163942IFsQFB','hasOtherRunningQQProcess','3861180sIgVjq','820nPgqVw','5088141JvHGWm','34078dmmowL','1182lMRIxE','util','19119QeJMbA','8NYZhWn','76CaLxeM','4454961fZNRjv'];_0x2236=function(){return _0x135738;};return _0x2236();}function _0x17be(_0x4c7f7b,_0x8af039){var _0x223628=_0x2236();return _0x17be=function(_0x17be05,_0x265987){_0x17be05=_0x17be05-0x1bc;var _0x50b1c0=_0x223628[_0x17be05];return _0x50b1c0;},_0x17be(_0x4c7f7b,_0x8af039);}(function(_0x28b22a,_0x51488d){var _0x1f622b=_0x17be,_0x1782d7=_0x28b22a();while(!![]){try{var _0x31ff17=-parseInt(_0x1f622b(0x1c2))/0x1*(parseInt(_0x1f622b(0x1c3))/0x2)+parseInt(_0x1f622b(0x1be))/0x3*(parseInt(_0x1f622b(0x1c0))/0x4)+-parseInt(_0x1f622b(0x1c6))/0x5*(-parseInt(_0x1f622b(0x1bc))/0x6)+-parseInt(_0x1f622b(0x1c1))/0x7+-parseInt(_0x1f622b(0x1bf))/0x8*(-parseInt(_0x1f622b(0x1c7))/0x9)+parseInt(_0x1f622b(0x1c5))/0xa+-parseInt(_0x1f622b(0x1c8))/0xb;if(_0x31ff17===_0x51488d)break;else _0x1782d7['push'](_0x1782d7['shift']());}catch(_0x380f0b){_0x1782d7['push'](_0x1782d7['shift']());}}}(_0x2236,0x5d98a));import{napCatCore}from'@/core';export class NTQQSystemApi{static async[_0x2d57de(0x1c4)](){var _0x8eb3e0=_0x2d57de;return napCatCore[_0x8eb3e0(0x1bd)]['hasOtherRunningQQProcess']();}}
|
||||
var _0x336049=_0x5720;(function(_0x15b8bb,_0x416247){var _0x4989e1=_0x5720,_0x493159=_0x15b8bb();while(!![]){try{var _0x550e07=-parseInt(_0x4989e1(0x18f))/0x1*(-parseInt(_0x4989e1(0x18c))/0x2)+-parseInt(_0x4989e1(0x17f))/0x3*(-parseInt(_0x4989e1(0x181))/0x4)+-parseInt(_0x4989e1(0x189))/0x5*(-parseInt(_0x4989e1(0x190))/0x6)+-parseInt(_0x4989e1(0x188))/0x7*(-parseInt(_0x4989e1(0x18b))/0x8)+parseInt(_0x4989e1(0x180))/0x9+parseInt(_0x4989e1(0x18d))/0xa*(-parseInt(_0x4989e1(0x187))/0xb)+parseInt(_0x4989e1(0x185))/0xc*(-parseInt(_0x4989e1(0x186))/0xd);if(_0x550e07===_0x416247)break;else _0x493159['push'](_0x493159['shift']());}catch(_0x14ae66){_0x493159['push'](_0x493159['shift']());}}}(_0x2e61,0xb55f0));function _0x2e61(){var _0x11fdb7=['52026hipQus','8300853iDIOKG','276sFLIwm','util','getNodeMiscService','translateEnWordToZn','276DFgWvB','1417481YyzuYD','22sjPNuO','77SbEswW','5KiTJNm','hasOtherRunningQQProcess','465232XngmcQ','2eorVqu','2070130VDorNc','getRichMediaService','731751JSSpkv','1046478IaYSbW','session'];_0x2e61=function(){return _0x11fdb7;};return _0x2e61();}function _0x5720(_0x16ee9a,_0x2147bc){var _0x2e61f2=_0x2e61();return _0x5720=function(_0x57209f,_0x40e357){_0x57209f=_0x57209f-0x17f;var _0x251948=_0x2e61f2[_0x57209f];return _0x251948;},_0x5720(_0x16ee9a,_0x2147bc);}import{napCatCore}from'@/core';export class NTQQSystemApi{static async[_0x336049(0x18a)](){var _0x35a504=_0x336049;return napCatCore[_0x35a504(0x182)][_0x35a504(0x18a)]();}static async['ORCImage'](_0x12a11d){var _0x53e1b6=_0x336049;return napCatCore[_0x53e1b6(0x191)][_0x53e1b6(0x183)]()['wantWinScreenOCR'](_0x12a11d);}static async[_0x336049(0x184)](_0x4358f7){var _0x4386ea=_0x336049;return napCatCore[_0x4386ea(0x191)][_0x4386ea(0x18e)]()[_0x4386ea(0x184)](_0x4358f7);}}
|
6
src/core.lib/src/apis/user.d.ts
vendored
6
src/core.lib/src/apis/user.d.ts
vendored
@@ -1,4 +1,4 @@
|
||||
import { User } from '@/core/entities';
|
||||
import { ModifyProfileParams, User } from '@/core/entities';
|
||||
import { GeneralCallResult } from '@/core';
|
||||
export declare class NTQQUserApi {
|
||||
static setSelfOnlineStatus(status: number, extStatus: number, batteryStatus: number): Promise<GeneralCallResult>;
|
||||
@@ -14,9 +14,13 @@ export declare class NTQQUserApi {
|
||||
static getSelfInfo(): Promise<void>;
|
||||
static getUserInfo(uid: string): Promise<void>;
|
||||
static getUserDetailInfo(uid: string): Promise<User>;
|
||||
static modifySelfProfile(param: ModifyProfileParams): Promise<GeneralCallResult>;
|
||||
static getPSkey(domainList: string[], cached?: boolean): Promise<{
|
||||
[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
3
src/core.lib/src/data.d.ts
vendored
3
src/core.lib/src/data.d.ts
vendored
@@ -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>;
|
||||
};
|
||||
|
@@ -1 +1 @@
|
||||
const _0x2735a1=_0x7d0e;(function(_0x48b44f,_0x37f6d7){const _0x5bce74=_0x7d0e,_0x51e476=_0x48b44f();while(!![]){try{const _0x1e2289=-parseInt(_0x5bce74(0x79))/0x1*(parseInt(_0x5bce74(0x65))/0x2)+-parseInt(_0x5bce74(0x66))/0x3*(parseInt(_0x5bce74(0x67))/0x4)+-parseInt(_0x5bce74(0x78))/0x5*(-parseInt(_0x5bce74(0x6c))/0x6)+-parseInt(_0x5bce74(0x82))/0x7*(parseInt(_0x5bce74(0x6f))/0x8)+parseInt(_0x5bce74(0x76))/0x9+-parseInt(_0x5bce74(0x68))/0xa*(parseInt(_0x5bce74(0x7a))/0xb)+parseInt(_0x5bce74(0x72))/0xc*(parseInt(_0x5bce74(0x7c))/0xd);if(_0x1e2289===_0x37f6d7)break;else _0x51e476['push'](_0x51e476['shift']());}catch(_0x58b8bb){_0x51e476['push'](_0x51e476['shift']());}}}(_0x5ea6,0x9b181));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':!![]};export const groups=new Map();export function deleteGroup(_0x2de053){const _0x1809e5=_0x7d0e;groups[_0x1809e5(0x7d)](_0x2de053),groupMembers[_0x1809e5(0x7d)](_0x2de053);}export const groupMembers=new Map();export const friends=new Map();export const friendRequests={};export const groupNotifies={};function _0x7d0e(_0x1bdf9b,_0x178f47){const _0x5ea60a=_0x5ea6();return _0x7d0e=function(_0x7d0e53,_0x46770b){_0x7d0e53=_0x7d0e53-0x65;let _0x1bd909=_0x5ea60a[_0x7d0e53];return _0x1bd909;},_0x7d0e(_0x1bdf9b,_0x178f47);}export const napCatError={'ffmpegError':'','httpServerError':'','wsServerError':'','otherError':_0x2735a1(0x6d)};export async function getFriend(_0x3d749c){const _0x591bcc=_0x2735a1,_0x532fc7={'XyglG':function(_0x2b13ca,_0xaaa7a6){return _0x2b13ca(_0xaaa7a6);}};_0x3d749c=_0x3d749c[_0x591bcc(0x71)]();if(_0x532fc7['XyglG'](isNumeric,_0x3d749c)){const _0x1e1444=Array[_0x591bcc(0x6a)](friends[_0x591bcc(0x6e)]());return _0x1e1444[_0x591bcc(0x80)](_0x428547=>_0x428547[_0x591bcc(0x7b)]===_0x3d749c);}else return friends[_0x591bcc(0x81)](_0x3d749c);}export async function getGroup(_0x3d54c4){const _0x3b5493=_0x2735a1;let _0x2d8287=groups[_0x3b5493(0x81)](_0x3d54c4['toString']());if(!_0x2d8287)try{const _0xf0d704=await NTQQGroupApi[_0x3b5493(0x73)]();_0xf0d704[_0x3b5493(0x75)]&&_0xf0d704[_0x3b5493(0x74)](_0x4fcdef=>{const _0x442155=_0x3b5493;groups[_0x442155(0x7e)](_0x4fcdef[_0x442155(0x77)],_0x4fcdef);});}catch(_0x4b7a1f){return undefined;}return _0x2d8287=groups[_0x3b5493(0x81)](_0x3d54c4[_0x3b5493(0x71)]()),_0x2d8287;}function _0x5ea6(){const _0x4198da=['NapCat未能正常启动,请检查日志查看错误','values','5216264ciBYHK','cmOZj','toString','5172CMtJzt','getGroups','forEach','length','1677042uHaYVo','groupCode','4540885xEjwmt','25QNYZHR','4752refAfW','uin','60073IfEORt','delete','set','huywW','find','get','7HonMKK','74330naoPBe','1414317jqJcAN','4jmGLED','9220KMOAdx','getGroupMembers','from','maTjZ','6Mtqaty'];_0x5ea6=function(){return _0x4198da;};return _0x5ea6();}export async function getGroupMember(_0x472671,_0x2d725d){const _0x1f4735=_0x2735a1,_0x5a1111={'cmOZj':function(_0x2175f9,_0x2d953f){return _0x2175f9(_0x2d953f);},'maTjZ':function(_0x15c4c6){return _0x15c4c6();}};_0x472671=_0x472671[_0x1f4735(0x71)](),_0x2d725d=_0x2d725d['toString']();let _0x5f5d20=groupMembers[_0x1f4735(0x81)](_0x472671);if(!_0x5f5d20)try{_0x5f5d20=await NTQQGroupApi[_0x1f4735(0x69)](_0x472671),groupMembers['set'](_0x472671,_0x5f5d20);}catch(_0x2fae15){return null;}const _0x5825f5=()=>{const _0x3dd941=_0x1f4735;let _0x5ac10d=undefined;return _0x5a1111[_0x3dd941(0x70)](isNumeric,_0x2d725d)?_0x5ac10d=Array[_0x3dd941(0x6a)](_0x5f5d20[_0x3dd941(0x6e)]())[_0x3dd941(0x80)](_0x23692a=>_0x23692a[_0x3dd941(0x7b)]===_0x2d725d):_0x5ac10d=_0x5f5d20[_0x3dd941(0x81)](_0x2d725d),_0x5ac10d;};let _0x1abef0=_0x5a1111[_0x1f4735(0x6b)](_0x5825f5);return!_0x1abef0&&(_0x5f5d20=await NTQQGroupApi[_0x1f4735(0x69)](_0x472671),_0x1abef0=_0x5a1111[_0x1f4735(0x6b)](_0x5825f5)),_0x1abef0;}export const uid2UinMap={};export function getUidByUin(_0x124b9e){const _0x112722=_0x2735a1,_0x1de3c0={'huywW':function(_0x10247a,_0x262b4f){return _0x10247a===_0x262b4f;}};for(const _0x13a430 in uid2UinMap){if(_0x1de3c0[_0x112722(0x7f)](uid2UinMap[_0x13a430],_0x124b9e))return _0x13a430;}}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};
|
||||
const _0x12caaa=_0x1bbf;(function(_0x51eeb7,_0x527fef){const _0x1dbc75=_0x1bbf,_0x227393=_0x51eeb7();while(!![]){try{const _0xae1a55=parseInt(_0x1dbc75(0x166))/0x1*(-parseInt(_0x1dbc75(0x160))/0x2)+-parseInt(_0x1dbc75(0x16f))/0x3+parseInt(_0x1dbc75(0x16e))/0x4+-parseInt(_0x1dbc75(0x164))/0x5+parseInt(_0x1dbc75(0x163))/0x6+parseInt(_0x1dbc75(0x167))/0x7*(parseInt(_0x1dbc75(0x15f))/0x8)+parseInt(_0x1dbc75(0x162))/0x9;if(_0xae1a55===_0x527fef)break;else _0x227393['push'](_0x227393['shift']());}catch(_0x2519d6){_0x227393['push'](_0x227393['shift']());}}}(_0x2cf8,0xc3b8c));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(_0x165af3){const _0x5bd4da=_0x1bbf;groups['delete'](_0x165af3),groupMembers[_0x5bd4da(0x168)](_0x165af3);}export const groupMembers=new Map();export const friends=new Map();function _0x2cf8(){const _0x5c8e7a=['toString','ikiht','values','from','set','RthjH','504oNehXV','19582eUEcsu','uin','39386295poXQTB','1748364aJBKSC','7785110Vgzjzz','getGroups','148dgFDfR','27972ALoCHt','delete','getGroupMembers','forEach','length','find','NapCat未能正常启动,请检查日志查看错误','431484wCMOTQ','3658506wZfNNX','get'];_0x2cf8=function(){return _0x5c8e7a;};return _0x2cf8();}export const friendRequests={};export const groupNotifies={};export const napCatError={'ffmpegError':'','httpServerError':'','wsServerError':'','otherError':_0x12caaa(0x16d)};export async function getFriend(_0x14f4a4){const _0xd274d0=_0x12caaa,_0x13c795={'zpLvi':function(_0x118510,_0x12fde5){return _0x118510(_0x12fde5);}};_0x14f4a4=_0x14f4a4[_0xd274d0(0x159)]();if(_0x13c795['zpLvi'](isNumeric,_0x14f4a4)){const _0x47d8ab=Array[_0xd274d0(0x15c)](friends[_0xd274d0(0x15b)]());return _0x47d8ab[_0xd274d0(0x16c)](_0x3275b1=>_0x3275b1[_0xd274d0(0x161)]===_0x14f4a4);}else return friends[_0xd274d0(0x170)](_0x14f4a4);}export async function getGroup(_0x25b22b){const _0x3dec5a=_0x12caaa;let _0x5ebaeb=groups[_0x3dec5a(0x170)](_0x25b22b[_0x3dec5a(0x159)]());if(!_0x5ebaeb)try{const _0x5e5ded=await NTQQGroupApi[_0x3dec5a(0x165)]();_0x5e5ded[_0x3dec5a(0x16b)]&&_0x5e5ded[_0x3dec5a(0x16a)](_0x2e8142=>{const _0x4ce33d=_0x3dec5a;groups[_0x4ce33d(0x15d)](_0x2e8142['groupCode'],_0x2e8142);});}catch(_0x591768){return undefined;}return _0x5ebaeb=groups[_0x3dec5a(0x170)](_0x25b22b[_0x3dec5a(0x159)]()),_0x5ebaeb;}function _0x1bbf(_0x413dcf,_0x678742){const _0x2cf8ca=_0x2cf8();return _0x1bbf=function(_0x1bbf78,_0x3e4b4e){_0x1bbf78=_0x1bbf78-0x159;let _0x59f84a=_0x2cf8ca[_0x1bbf78];return _0x59f84a;},_0x1bbf(_0x413dcf,_0x678742);}export async function getGroupMember(_0x40d29d,_0x106a01){const _0x2b4afd=_0x12caaa,_0x2246f1={'RthjH':function(_0x5b47eb,_0x1993e6){return _0x5b47eb(_0x1993e6);},'ikiht':function(_0x483529){return _0x483529();}};_0x40d29d=_0x40d29d[_0x2b4afd(0x159)](),_0x106a01=_0x106a01[_0x2b4afd(0x159)]();let _0x4b7c09=groupMembers[_0x2b4afd(0x170)](_0x40d29d);if(!_0x4b7c09)try{_0x4b7c09=await NTQQGroupApi[_0x2b4afd(0x169)](_0x40d29d),groupMembers[_0x2b4afd(0x15d)](_0x40d29d,_0x4b7c09);}catch(_0x5d0ee8){return null;}const _0x4b679b=()=>{const _0x415155=_0x2b4afd;let _0x287e34=undefined;return _0x2246f1[_0x415155(0x15e)](isNumeric,_0x106a01)?_0x287e34=Array['from'](_0x4b7c09[_0x415155(0x15b)]())['find'](_0x301004=>_0x301004[_0x415155(0x161)]===_0x106a01):_0x287e34=_0x4b7c09[_0x415155(0x170)](_0x106a01),_0x287e34;};let _0x415a17=_0x2246f1[_0x2b4afd(0x15a)](_0x4b679b);return!_0x415a17&&(_0x4b7c09=await NTQQGroupApi[_0x2b4afd(0x169)](_0x40d29d),_0x415a17=_0x2246f1[_0x2b4afd(0x15a)](_0x4b679b)),_0x415a17;}export const uid2UinMap={};export function getUidByUin(_0x5c92b1){const _0x39677d={'eXQSl':function(_0x5ec56d,_0x2e8372){return _0x5ec56d===_0x2e8372;}};for(const _0x57e929 in uid2UinMap){if(_0x39677d['eXQSl'](uid2UinMap[_0x57e929],_0x5c92b1))return _0x57e929;}}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};
|
@@ -1 +1 @@
|
||||
(function(_0x575e0e,_0x630d){var _0x49b0d5=_0x3c77,_0x2e9cb2=_0x575e0e();while(!![]){try{var _0x139568=-parseInt(_0x49b0d5(0x88))/0x1+-parseInt(_0x49b0d5(0x80))/0x2+-parseInt(_0x49b0d5(0x85))/0x3*(parseInt(_0x49b0d5(0x83))/0x4)+-parseInt(_0x49b0d5(0x7f))/0x5+-parseInt(_0x49b0d5(0x7e))/0x6+-parseInt(_0x49b0d5(0x77))/0x7+parseInt(_0x49b0d5(0x82))/0x8;if(_0x139568===_0x630d)break;else _0x2e9cb2['push'](_0x2e9cb2['shift']());}catch(_0x289741){_0x2e9cb2['push'](_0x2e9cb2['shift']());}}}(_0x3e74,0xcd85b));function _0x3e74(){var _0x2d4076=['IMAGE','42dFWcZY','VIDEO','OTHER','473302lTxRxi','7445830SEvJrC','nsbYk','iEuVm','AUDIO','WwqPh','FIlAA','FhCbc','7158126cKzkon','313150kCdAmt','1367238sDWkUM','DOCUMENT','36583720IuYLDp','72824UIQUFn'];_0x3e74=function(){return _0x2d4076;};return _0x3e74();};function _0x3c77(_0x2257a2,_0x3052b1){var _0x3e74bf=_0x3e74();return _0x3c77=function(_0x3c77b8,_0x27fef7){_0x3c77b8=_0x3c77b8-0x77;var _0x5f3d51=_0x3e74bf[_0x3c77b8];return _0x5f3d51;},_0x3c77(_0x2257a2,_0x3052b1);}export var CacheFileType;(function(_0x218e74){var _0xc308c1=_0x3c77,_0x3e95a4={'nsbYk':'IMAGE','iEuVm':_0xc308c1(0x86),'FhCbc':_0xc308c1(0x7a),'FIlAA':_0xc308c1(0x81),'WwqPh':'OTHER'};_0x218e74[_0x218e74[_0x3e95a4[_0xc308c1(0x78)]]=0x0]=_0xc308c1(0x84),_0x218e74[_0x218e74[_0x3e95a4['iEuVm']]=0x1]=_0x3e95a4[_0xc308c1(0x79)],_0x218e74[_0x218e74[_0x3e95a4['FhCbc']]=0x2]=_0x3e95a4[_0xc308c1(0x7d)],_0x218e74[_0x218e74[_0x3e95a4[_0xc308c1(0x7c)]]=0x3]='DOCUMENT',_0x218e74[_0x218e74[_0xc308c1(0x87)]=0x4]=_0x3e95a4[_0xc308c1(0x7b)];}(CacheFileType||(CacheFileType={})));
|
||||
function _0x21a8(){var _0x58f919=['7bwUkkO','cDUOp','127640NKdPkH','30BPcYRR','AUDIO','6050bwmtSY','nSdhG','4108951kIIrpT','split','OTHER','DOCUMENT','104789fWyVGI','29984bjnNej','IMAGE','1843736DhKqob','3177THnZWd','1|3|0|2|4','245685efDevN','VIDEO','42PqUiOR'];_0x21a8=function(){return _0x58f919;};return _0x21a8();}(function(_0x28594b,_0x4d85ba){var _0x1424cd=_0x4207,_0x30e019=_0x28594b();while(!![]){try{var _0x544f6e=parseInt(_0x1424cd(0x17f))/0x1+parseInt(_0x1424cd(0x18a))/0x2+parseInt(_0x1424cd(0x187))/0x3*(parseInt(_0x1424cd(0x180))/0x4)+-parseInt(_0x1424cd(0x185))/0x5*(-parseInt(_0x1424cd(0x18b))/0x6)+-parseInt(_0x1424cd(0x188))/0x7*(parseInt(_0x1424cd(0x182))/0x8)+parseInt(_0x1424cd(0x183))/0x9*(parseInt(_0x1424cd(0x18d))/0xa)+-parseInt(_0x1424cd(0x18f))/0xb;if(_0x544f6e===_0x4d85ba)break;else _0x30e019['push'](_0x30e019['shift']());}catch(_0x5077a2){_0x30e019['push'](_0x30e019['shift']());}}}(_0x21a8,0x1f71b));;function _0x4207(_0xad57e3,_0x57c5e0){var _0x21a88a=_0x21a8();return _0x4207=function(_0x42078e,_0x5aa429){_0x42078e=_0x42078e-0x17e;var _0x5e36c2=_0x21a88a[_0x42078e];return _0x5e36c2;},_0x4207(_0xad57e3,_0x57c5e0);}export var CacheFileType;(function(_0x2b9f6d){var _0x18955e=_0x4207,_0x5c9b7f={'NGSMY':_0x18955e(0x184),'gLvUt':_0x18955e(0x18c),'KXqXX':_0x18955e(0x17e),'nSdhG':_0x18955e(0x186),'cDUOp':_0x18955e(0x191)},_0x583cec=_0x5c9b7f['NGSMY'][_0x18955e(0x190)]('|'),_0x37269a=0x0;while(!![]){switch(_0x583cec[_0x37269a++]){case'0':_0x2b9f6d[_0x2b9f6d['AUDIO']=0x2]=_0x5c9b7f['gLvUt'];continue;case'1':_0x2b9f6d[_0x2b9f6d[_0x18955e(0x181)]=0x0]=_0x18955e(0x181);continue;case'2':_0x2b9f6d[_0x2b9f6d[_0x5c9b7f['KXqXX']]=0x3]=_0x5c9b7f['KXqXX'];continue;case'3':_0x2b9f6d[_0x2b9f6d[_0x5c9b7f[_0x18955e(0x18e)]]=0x1]=_0x18955e(0x186);continue;case'4':_0x2b9f6d[_0x2b9f6d[_0x5c9b7f[_0x18955e(0x189)]]=0x4]=_0x5c9b7f[_0x18955e(0x189)];continue;}break;}}(CacheFileType||(CacheFileType={})));
|
3
src/core.lib/src/entities/constructor.d.ts
vendored
3
src/core.lib/src/entities/constructor.d.ts
vendored
@@ -5,7 +5,7 @@ export declare class SendMsgElementConstructor {
|
||||
static at(atUid: string, atNtUid: string, atType: AtType, atName: string): SendTextElement;
|
||||
static reply(msgSeq: string, msgId: string, senderUin: string, senderUinStr: string): SendReplyElement;
|
||||
static pic(picPath: string, summary?: string, subType?: 0 | 1): Promise<SendPicElement>;
|
||||
static file(filePath: string, fileName?: string): Promise<SendFileElement>;
|
||||
static file(filePath: string, fileName?: string, folderId?: string): Promise<SendFileElement>;
|
||||
static video(filePath: string, fileName?: string, diyThumbPath?: string): Promise<SendVideoElement>;
|
||||
static ptt(pttPath: string): Promise<SendPttElement>;
|
||||
static face(faceId: number): SendFaceElement;
|
||||
@@ -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
@@ -1 +1 @@
|
||||
function _0xb298(_0x541189,_0x4108a7){var _0x55906e=_0x5590();return _0xb298=function(_0xb298a9,_0x55eddd){_0xb298a9=_0xb298a9-0x1cf;var _0x26d1ee=_0x55906e[_0xb298a9];return _0x26d1ee;},_0xb298(_0x541189,_0x4108a7);}(function(_0x493093,_0x1cea70){var _0x26c178=_0xb298,_0x4e73a5=_0x493093();while(!![]){try{var _0x4cdd5e=parseInt(_0x26c178(0x1d0))/0x1*(parseInt(_0x26c178(0x1d4))/0x2)+-parseInt(_0x26c178(0x1dc))/0x3+parseInt(_0x26c178(0x1d7))/0x4*(parseInt(_0x26c178(0x1d9))/0x5)+parseInt(_0x26c178(0x1de))/0x6+parseInt(_0x26c178(0x1db))/0x7+-parseInt(_0x26c178(0x1d1))/0x8+parseInt(_0x26c178(0x1d2))/0x9*(-parseInt(_0x26c178(0x1d3))/0xa);if(_0x4cdd5e===_0x1cea70)break;else _0x4e73a5['push'](_0x4e73a5['shift']());}catch(_0x1a2c17){_0x4e73a5['push'](_0x4e73a5['shift']());}}}(_0x5590,0x495aa));function _0x5590(){var _0x44c664=['399009htGgTz','xxheT','1602600NLGZnY','kxlWs','12503oHsNqh','409400bWbePM','3447eBDOFi','28430hHTEdW','42LGzfPA','owner','admin','12eXqkWU','xSfOf','860785SDERqW','normal','3691597xEklGI'];_0x5590=function(){return _0x44c664;};return _0x5590();}export var GroupMemberRole;(function(_0x5dd3f1){var _0xe69db7=_0xb298,_0x2a9ace={'xSfOf':_0xe69db7(0x1da),'xxheT':_0xe69db7(0x1d6),'kxlWs':'owner'};_0x5dd3f1[_0x5dd3f1[_0x2a9ace[_0xe69db7(0x1d8)]]=0x2]=_0x2a9ace[_0xe69db7(0x1d8)],_0x5dd3f1[_0x5dd3f1[_0x2a9ace['xxheT']]=0x3]=_0x2a9ace[_0xe69db7(0x1dd)],_0x5dd3f1[_0x5dd3f1[_0x2a9ace[_0xe69db7(0x1cf)]]=0x4]=_0xe69db7(0x1d5);}(GroupMemberRole||(GroupMemberRole={})));
|
||||
function _0xfe4f(){var _0x22563a=['4674344BzCoGA','normal','1726923XgzrOb','930tRRaAc','108684uWMSuA','2880294kCmpnS','895588SNcOVf','10PjCGul','18boBsDG','admin','1738494rWhaLG','1126141AICXmT','7oBwZxm'];_0xfe4f=function(){return _0x22563a;};return _0xfe4f();}function _0x468d(_0x38a3a0,_0x3ed8b9){var _0xfe4fbf=_0xfe4f();return _0x468d=function(_0x468d66,_0x615a1d){_0x468d66=_0x468d66-0x1c7;var _0x10ed28=_0xfe4fbf[_0x468d66];return _0x10ed28;},_0x468d(_0x38a3a0,_0x3ed8b9);}(function(_0x3c123b,_0x23e233){var _0x44d14d=_0x468d,_0x3bc2c7=_0x3c123b();while(!![]){try{var _0x70698=parseInt(_0x44d14d(0x1ce))/0x1+parseInt(_0x44d14d(0x1cd))/0x2+parseInt(_0x44d14d(0x1cb))/0x3*(parseInt(_0x44d14d(0x1c9))/0x4)+parseInt(_0x44d14d(0x1ca))/0x5*(-parseInt(_0x44d14d(0x1c8))/0x6)+-parseInt(_0x44d14d(0x1cf))/0x7*(parseInt(_0x44d14d(0x1d0))/0x8)+-parseInt(_0x44d14d(0x1c7))/0x9*(parseInt(_0x44d14d(0x1d3))/0xa)+parseInt(_0x44d14d(0x1d2))/0xb;if(_0x70698===_0x23e233)break;else _0x3bc2c7['push'](_0x3bc2c7['shift']());}catch(_0x3b1227){_0x3bc2c7['push'](_0x3bc2c7['shift']());}}}(_0xfe4f,0xca390));export var GroupMemberRole;(function(_0x13eed0){var _0x3be934=_0x468d,_0x2818c5={'UcHmz':_0x3be934(0x1d1),'KWBFj':_0x3be934(0x1cc),'RQBHk':'owner'};_0x13eed0[_0x13eed0[_0x2818c5['UcHmz']]=0x2]='normal',_0x13eed0[_0x13eed0[_0x2818c5['KWBFj']]=0x3]=_0x2818c5['KWBFj'],_0x13eed0[_0x13eed0[_0x2818c5['RQBHk']]=0x4]=_0x2818c5['RQBHk'];}(GroupMemberRole||(GroupMemberRole={})));
|
@@ -1 +1 @@
|
||||
(function(_0x610bda,_0x36b670){var _0x4dd94e=_0xe97e,_0x318982=_0x610bda();while(!![]){try{var _0x480648=-parseInt(_0x4dd94e(0x14e))/0x1*(parseInt(_0x4dd94e(0x14b))/0x2)+-parseInt(_0x4dd94e(0x153))/0x3+-parseInt(_0x4dd94e(0x154))/0x4*(parseInt(_0x4dd94e(0x14c))/0x5)+-parseInt(_0x4dd94e(0x14d))/0x6+-parseInt(_0x4dd94e(0x152))/0x7+parseInt(_0x4dd94e(0x150))/0x8+parseInt(_0x4dd94e(0x151))/0x9*(parseInt(_0x4dd94e(0x14f))/0xa);if(_0x480648===_0x36b670)break;else _0x318982['push'](_0x318982['shift']());}catch(_0x50c875){_0x318982['push'](_0x318982['shift']());}}}(_0x5eac,0x4bfdf));export*from'./user';export*from'./group';export*from'./msg';export*from'./notify';export*from'./cache';function _0x5eac(){var _0x206033=['90lRkHNL','5ufVbqV','427074gsKIfY','4486suYqPD','10JxSiTs','3781920BCGVGp','8623305HyBbnE','400001dDkpLg','1704864IcCmmk','884568uhwWmC'];_0x5eac=function(){return _0x206033;};return _0x5eac();}function _0xe97e(_0x39257f,_0x12caf6){var _0x5eac34=_0x5eac();return _0xe97e=function(_0xe97e95,_0x22e357){_0xe97e95=_0xe97e95-0x14b;var _0x151438=_0x5eac34[_0xe97e95];return _0x151438;},_0xe97e(_0x39257f,_0x12caf6);}export*from'./constructor';
|
||||
function _0x14bc(){var _0x4f49b1=['40684Mxiqpd','885170fQcQyB','274AUVjnY','1224nzbFan','317043yUpRIR','1156736YNRhjK','977607RkiKna','1281972Nmxudk','424UFlGox'];_0x14bc=function(){return _0x4f49b1;};return _0x14bc();}(function(_0x1e121e,_0x4f001d){var _0x1cfe2d=_0x4473,_0x5e4046=_0x1e121e();while(!![]){try{var _0x20ea89=parseInt(_0x1cfe2d(0x14a))/0x1*(-parseInt(_0x1cfe2d(0x149))/0x2)+-parseInt(_0x1cfe2d(0x14b))/0x3+parseInt(_0x1cfe2d(0x14c))/0x4+parseInt(_0x1cfe2d(0x148))/0x5+parseInt(_0x1cfe2d(0x14e))/0x6+-parseInt(_0x1cfe2d(0x147))/0x7*(parseInt(_0x1cfe2d(0x14f))/0x8)+parseInt(_0x1cfe2d(0x14d))/0x9;if(_0x20ea89===_0x4f001d)break;else _0x5e4046['push'](_0x5e4046['shift']());}catch(_0x4fa7ec){_0x5e4046['push'](_0x5e4046['shift']());}}}(_0x14bc,0x328fa));export*from'./user';export*from'./group';export*from'./msg';function _0x4473(_0x5d5188,_0x1b3cfb){var _0x14bc48=_0x14bc();return _0x4473=function(_0x4473d4,_0x1230a6){_0x4473d4=_0x4473d4-0x147;var _0x34458e=_0x14bc48[_0x4473d4];return _0x34458e;},_0x4473(_0x5d5188,_0x1b3cfb);}export*from'./notify';export*from'./cache';export*from'./constructor';
|
8
src/core.lib/src/entities/msg.d.ts
vendored
8
src/core.lib/src/entities/msg.d.ts
vendored
@@ -13,6 +13,13 @@ export interface KickedOffLineInfo {
|
||||
kickedType: number;
|
||||
securityKickedType: number;
|
||||
}
|
||||
export interface GetFileListParam {
|
||||
sortType: number;
|
||||
fileCount: number;
|
||||
startIndex: number;
|
||||
sortOrder: number;
|
||||
showOnlinedocFolder: number;
|
||||
}
|
||||
export declare enum ElementType {
|
||||
TEXT = 1,
|
||||
PIC = 2,
|
||||
@@ -108,6 +115,7 @@ export interface FileElement {
|
||||
fileSize: string;
|
||||
picHeight?: number;
|
||||
picWidth?: number;
|
||||
folderId?: string;
|
||||
picThumbPath?: Map<number, string>;
|
||||
file10MMd5?: string;
|
||||
fileSha?: string;
|
||||
|
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
(function(_0x3fe2c2,_0x177afd){var _0x4e3d42=_0x2cdc,_0x17bce5=_0x3fe2c2();while(!![]){try{var _0x45ab12=-parseInt(_0x4e3d42(0x1b4))/0x1*(parseInt(_0x4e3d42(0x19e))/0x2)+parseInt(_0x4e3d42(0x1ad))/0x3*(parseInt(_0x4e3d42(0x1b1))/0x4)+parseInt(_0x4e3d42(0x1a6))/0x5*(parseInt(_0x4e3d42(0x1b0))/0x6)+parseInt(_0x4e3d42(0x19f))/0x7*(-parseInt(_0x4e3d42(0x1ab))/0x8)+parseInt(_0x4e3d42(0x1a3))/0x9*(parseInt(_0x4e3d42(0x195))/0xa)+-parseInt(_0x4e3d42(0x1ac))/0xb*(-parseInt(_0x4e3d42(0x1ae))/0xc)+-parseInt(_0x4e3d42(0x1a0))/0xd;if(_0x45ab12===_0x177afd)break;else _0x17bce5['push'](_0x17bce5['shift']());}catch(_0x49e233){_0x17bce5['push'](_0x17bce5['shift']());}}}(_0x4339,0x4458c));export var GroupNotifyTypes;function _0x2cdc(_0x347df2,_0x171085){var _0x4339d2=_0x4339();return _0x2cdc=function(_0x2cdc02,_0x557817){_0x2cdc02=_0x2cdc02-0x190;var _0x273284=_0x4339d2[_0x2cdc02];return _0x273284;},_0x2cdc(_0x347df2,_0x171085);}(function(_0x529fd7){var _0x1f3b7d=_0x2cdc,_0x1fec4d={'cbVxW':_0x1f3b7d(0x1a7),'leEdA':_0x1f3b7d(0x1af),'YklSr':_0x1f3b7d(0x193),'ENPCe':'MEMBER_EXIT','PLKak':'ADMIN_UNSET_OTHER','jQfna':_0x1f3b7d(0x1a1),'JRYjd':_0x1f3b7d(0x196),'BcEgu':_0x1f3b7d(0x1b5),'XKkst':_0x1f3b7d(0x19b)},_0x4954fb=_0x1fec4d[_0x1f3b7d(0x19c)]['split']('|'),_0x6882d7=0x0;while(!![]){switch(_0x4954fb[_0x6882d7++]){case'0':_0x529fd7[_0x529fd7[_0x1fec4d[_0x1f3b7d(0x197)]]=0x4]=_0x1fec4d['leEdA'];continue;case'1':_0x529fd7[_0x529fd7[_0x1fec4d[_0x1f3b7d(0x19a)]]=0xc]=_0x1fec4d[_0x1f3b7d(0x19a)];continue;case'2':_0x529fd7[_0x529fd7['MEMBER_EXIT']=0xb]=_0x1fec4d[_0x1f3b7d(0x1a9)];continue;case'3':_0x529fd7[_0x529fd7[_0x1f3b7d(0x1a5)]=0xd]=_0x1fec4d[_0x1f3b7d(0x1b3)];continue;case'4':_0x529fd7[_0x529fd7[_0x1fec4d[_0x1f3b7d(0x1a4)]]=0x8]=_0x1fec4d['jQfna'];continue;case'5':_0x529fd7[_0x529fd7[_0x1fec4d['JRYjd']]=0x9]=_0x1fec4d[_0x1f3b7d(0x190)];continue;case'6':_0x529fd7[_0x529fd7[_0x1fec4d[_0x1f3b7d(0x19d)]]=0x7]=_0x1f3b7d(0x1b5);continue;case'7':_0x529fd7[_0x529fd7[_0x1fec4d[_0x1f3b7d(0x1a8)]]=0x1]=_0x1fec4d[_0x1f3b7d(0x1a8)];continue;}break;}}(GroupNotifyTypes||(GroupNotifyTypes={})));function _0x4339(){var _0x464d59=['cbVxW','BcEgu','4znipdY','7BBGTfV','446927nRwFPh','ADMIN_SET','fwlsN','119277WyHhpw','jQfna','ADMIN_UNSET_OTHER','4415qjAukh','7|0|6|4|5|2|1|3','XKkst','ENPCe','biNCI','3982696lHlnyp','11ZpguAY','1839StLElO','74424bijLaZ','INVITED_JOIN','3738kHaJfH','1820sNvoHf','PCgyl','PLKak','64543tkblBE','JOIN_REQUEST','JRYjd','DdIaO','approve','ADMIN_UNSET','BSnDM','80knpeyt','KICK_MEMBER','leEdA','WAIT_HANDLE','reject','YklSr','INVITE_ME'];_0x4339=function(){return _0x464d59;};return _0x4339();}export var GroupNotifyStatus;(function(_0x55c376){var _0x5e707d=_0x2cdc,_0x15cd8c={'DdIaO':'IGNORE','PCgyl':_0x5e707d(0x198),'BSnDM':'APPROVE','biNCI':'REJECT'};_0x55c376[_0x55c376['IGNORE']=0x0]=_0x15cd8c[_0x5e707d(0x191)],_0x55c376[_0x55c376[_0x15cd8c[_0x5e707d(0x1b2)]]=0x1]=_0x15cd8c['PCgyl'],_0x55c376[_0x55c376[_0x15cd8c[_0x5e707d(0x194)]]=0x2]=_0x15cd8c[_0x5e707d(0x194)],_0x55c376[_0x55c376[_0x15cd8c[_0x5e707d(0x1aa)]]=0x3]=_0x15cd8c['biNCI'];}(GroupNotifyStatus||(GroupNotifyStatus={})));export var GroupRequestOperateTypes;(function(_0xa87390){var _0x953ad1=_0x2cdc,_0xd3eaab={'VioIW':_0x953ad1(0x192),'fwlsN':_0x953ad1(0x199)};_0xa87390[_0xa87390[_0xd3eaab['VioIW']]=0x1]=_0xd3eaab['VioIW'],_0xa87390[_0xa87390[_0xd3eaab[_0x953ad1(0x1a2)]]=0x2]=_0xd3eaab['fwlsN'];}(GroupRequestOperateTypes||(GroupRequestOperateTypes={})));
|
||||
(function(_0x19adaa,_0x56a38f){var _0x22c269=_0xe6a3,_0x4d1ed1=_0x19adaa();while(!![]){try{var _0x4f42a1=-parseInt(_0x22c269(0x1b5))/0x1*(parseInt(_0x22c269(0x1b4))/0x2)+parseInt(_0x22c269(0x1b0))/0x3*(parseInt(_0x22c269(0x19f))/0x4)+parseInt(_0x22c269(0x19d))/0x5*(parseInt(_0x22c269(0x195))/0x6)+parseInt(_0x22c269(0x1a4))/0x7*(-parseInt(_0x22c269(0x1b3))/0x8)+parseInt(_0x22c269(0x1a8))/0x9+-parseInt(_0x22c269(0x1ad))/0xa+parseInt(_0x22c269(0x1ae))/0xb;if(_0x4f42a1===_0x56a38f)break;else _0x4d1ed1['push'](_0x4d1ed1['shift']());}catch(_0xb738c2){_0x4d1ed1['push'](_0x4d1ed1['shift']());}}}(_0x2b6d,0x9f8e0));export var GroupNotifyTypes;function _0xe6a3(_0x4af4aa,_0x19eda9){var _0x2b6d36=_0x2b6d();return _0xe6a3=function(_0xe6a34,_0x340ef2){_0xe6a34=_0xe6a34-0x193;var _0x263a9c=_0x2b6d36[_0xe6a34];return _0x263a9c;},_0xe6a3(_0x4af4aa,_0x19eda9);}(function(_0x4847c5){var _0x4d0343=_0xe6a3,_0x174d9b={'PRoCv':'JOIN_REQUEST','curNx':_0x4d0343(0x197),'PpLhV':_0x4d0343(0x1a1),'EZAOo':_0x4d0343(0x196),'DdWWY':_0x4d0343(0x19a),'koXXq':'ADMIN_UNSET'},_0x59ba1c=_0x4d0343(0x1ab)['split']('|'),_0xecf760=0x0;while(!![]){switch(_0x59ba1c[_0xecf760++]){case'0':_0x4847c5[_0x4847c5[_0x4d0343(0x193)]=0xd]=_0x4d0343(0x193);continue;case'1':_0x4847c5[_0x4847c5[_0x174d9b[_0x4d0343(0x19e)]]=0x7]=_0x174d9b[_0x4d0343(0x19e)];continue;case'2':_0x4847c5[_0x4847c5[_0x174d9b[_0x4d0343(0x1b1)]]=0x4]=_0x174d9b[_0x4d0343(0x1b1)];continue;case'3':_0x4847c5[_0x4847c5[_0x174d9b[_0x4d0343(0x19b)]]=0x8]=_0x174d9b[_0x4d0343(0x19b)];continue;case'4':_0x4847c5[_0x4847c5[_0x174d9b[_0x4d0343(0x1af)]]=0x9]='KICK_MEMBER';continue;case'5':_0x4847c5[_0x4847c5[_0x4d0343(0x19a)]=0x1]=_0x174d9b[_0x4d0343(0x19c)];continue;case'6':_0x4847c5[_0x4847c5[_0x4d0343(0x1a9)]=0xc]=_0x174d9b['koXXq'];continue;case'7':_0x4847c5[_0x4847c5[_0x4d0343(0x1a3)]=0xb]='MEMBER_EXIT';continue;}break;}}(GroupNotifyTypes||(GroupNotifyTypes={})));export var GroupNotifyStatus;function _0x2b6d(){var _0x53a903=['approve','REJECT','APPROVE','5482062Heixji','ADMIN_UNSET','LczLZ','5|2|1|3|4|7|6|0','XWKXi','4792400ySuoEl','6268229eyujnE','EZAOo','12vLgAOJ','curNx','HdsbK','280CtpltI','675362GKDhHf','2VSJtMd','ADMIN_UNSET_OTHER','YWYwW','816npOrDS','KICK_MEMBER','INVITED_JOIN','lyfuO','JxSKa','INVITE_ME','PpLhV','DdWWY','30640CFAUGu','PRoCv','108428cimJFa','reject','ADMIN_SET','IGNORE','MEMBER_EXIT','62531OeKwRq'];_0x2b6d=function(){return _0x53a903;};return _0x2b6d();}(function(_0x11adf2){var _0xcfc64b=_0xe6a3,_0x403d8b={'LczLZ':_0xcfc64b(0x1a2),'JxSKa':'WAIT_HANDLE','HdsbK':_0xcfc64b(0x1a7),'lyfuO':_0xcfc64b(0x1a6)};_0x11adf2[_0x11adf2[_0x403d8b[_0xcfc64b(0x1aa)]]=0x0]='IGNORE',_0x11adf2[_0x11adf2[_0x403d8b['JxSKa']]=0x1]=_0x403d8b[_0xcfc64b(0x199)],_0x11adf2[_0x11adf2[_0xcfc64b(0x1a7)]=0x2]=_0x403d8b[_0xcfc64b(0x1b2)],_0x11adf2[_0x11adf2[_0x403d8b[_0xcfc64b(0x198)]]=0x3]=_0x403d8b['lyfuO'];}(GroupNotifyStatus||(GroupNotifyStatus={})));export var GroupRequestOperateTypes;(function(_0xd75311){var _0x325bbd=_0xe6a3,_0x301890={'XWKXi':_0x325bbd(0x1a5),'YWYwW':_0x325bbd(0x1a0)};_0xd75311[_0xd75311[_0x301890[_0x325bbd(0x1ac)]]=0x1]=_0x325bbd(0x1a5),_0xd75311[_0xd75311[_0x301890[_0x325bbd(0x194)]]=0x2]=_0x301890[_0x325bbd(0x194)];}(GroupRequestOperateTypes||(GroupRequestOperateTypes={})));
|
11
src/core.lib/src/entities/user.d.ts
vendored
11
src/core.lib/src/entities/user.d.ts
vendored
@@ -9,6 +9,17 @@ export interface BuddyCategoryType {
|
||||
categroyMbCount: number;
|
||||
buddyList: User[];
|
||||
}
|
||||
export interface ModifyProfileParams {
|
||||
nick: string;
|
||||
longNick: string;
|
||||
sex: Sex;
|
||||
birthday: {
|
||||
birthday_year: string;
|
||||
birthday_month: string;
|
||||
birthday_day: string;
|
||||
};
|
||||
location: any;
|
||||
}
|
||||
export interface BuddyProfileLikeReq {
|
||||
friendUids: string[];
|
||||
basic: number;
|
||||
|
@@ -1 +1 @@
|
||||
function _0x316d(){var _0x449373=['1087872iVtaHB','GgcUP','LutGY','385TENAjo','1160qwNiDI','389984BckPbS','female','966420TtCbXz','1699686ieLwNX','6cVzElU','16236fvxNBx','2447711ttmzqt','ZrXQS','722GmHuUA'];_0x316d=function(){return _0x449373;};return _0x316d();}function _0x4f28(_0x72db32,_0x167fb4){var _0x316df4=_0x316d();return _0x4f28=function(_0x4f28b1,_0x11a628){_0x4f28b1=_0x4f28b1-0x1d5;var _0x16222a=_0x316df4[_0x4f28b1];return _0x16222a;},_0x4f28(_0x72db32,_0x167fb4);}(function(_0x5a10ac,_0x22fa85){var _0x1316fe=_0x4f28,_0x537b6=_0x5a10ac();while(!![]){try{var _0x59735c=-parseInt(_0x1316fe(0x1de))/0x1*(parseInt(_0x1316fe(0x1da))/0x2)+-parseInt(_0x1316fe(0x1d6))/0x3*(-parseInt(_0x1316fe(0x1db))/0x4)+parseInt(_0x1316fe(0x1e2))/0x5+-parseInt(_0x1316fe(0x1d5))/0x6+parseInt(_0x1316fe(0x1d8))/0x7+-parseInt(_0x1316fe(0x1e0))/0x8+parseInt(_0x1316fe(0x1d7))/0x9*(parseInt(_0x1316fe(0x1df))/0xa);if(_0x59735c===_0x22fa85)break;else _0x537b6['push'](_0x537b6['shift']());}catch(_0x5af758){_0x537b6['push'](_0x537b6['shift']());}}}(_0x316d,0xc9737));export var Sex;(function(_0x46a55d){var _0x4f687d=_0x4f28,_0x144aa9={'LutGY':'male','GgcUP':_0x4f687d(0x1e1),'ZrXQS':'unknown'};_0x46a55d[_0x46a55d[_0x144aa9[_0x4f687d(0x1dd)]]=0x1]=_0x144aa9['LutGY'],_0x46a55d[_0x46a55d[_0x144aa9[_0x4f687d(0x1dc)]]=0x2]=_0x144aa9[_0x4f687d(0x1dc)],_0x46a55d[_0x46a55d[_0x144aa9[_0x4f687d(0x1d9)]]=0xff]=_0x144aa9[_0x4f687d(0x1d9)];}(Sex||(Sex={})));
|
||||
(function(_0x425abd,_0x1e888d){var _0x176f22=_0x3a30,_0x4eb957=_0x425abd();while(!![]){try{var _0x55b3d4=-parseInt(_0x176f22(0x68))/0x1*(-parseInt(_0x176f22(0x69))/0x2)+-parseInt(_0x176f22(0x6a))/0x3+-parseInt(_0x176f22(0x67))/0x4*(-parseInt(_0x176f22(0x6e))/0x5)+parseInt(_0x176f22(0x6d))/0x6*(parseInt(_0x176f22(0x6f))/0x7)+parseInt(_0x176f22(0x65))/0x8*(-parseInt(_0x176f22(0x6c))/0x9)+parseInt(_0x176f22(0x6b))/0xa*(parseInt(_0x176f22(0x70))/0xb)+-parseInt(_0x176f22(0x71))/0xc;if(_0x55b3d4===_0x1e888d)break;else _0x4eb957['push'](_0x4eb957['shift']());}catch(_0x301dbf){_0x4eb957['push'](_0x4eb957['shift']());}}}(_0x10d9,0xc0c6b));export var Sex;function _0x10d9(){var _0x45bd45=['24TPufBz','female','61524PPefuR','30274SgfYql','2wYyaKc','2551476BRiunw','1069530XXNJIz','2371527aHKuUV','174Ewznuh','135ujiScL','364847LFBbAu','77YfwsAT','3301548qQopWo','male','zQdhj'];_0x10d9=function(){return _0x45bd45;};return _0x10d9();}function _0x3a30(_0x3ec91f,_0x599ffb){var _0x10d945=_0x10d9();return _0x3a30=function(_0x3a3089,_0x1ccb2f){_0x3a3089=_0x3a3089-0x64;var _0x28741a=_0x10d945[_0x3a3089];return _0x28741a;},_0x3a30(_0x3ec91f,_0x599ffb);}(function(_0x59140d){var _0x4927b5=_0x3a30,_0x5741d0={'zQdhj':'male','OFEli':'female','VYGsK':'unknown'};_0x59140d[_0x59140d[_0x4927b5(0x72)]=0x1]=_0x5741d0[_0x4927b5(0x64)],_0x59140d[_0x59140d[_0x5741d0['OFEli']]=0x2]=_0x4927b5(0x66),_0x59140d[_0x59140d[_0x5741d0['VYGsK']]=0xff]=_0x5741d0['VYGsK'];}(Sex||(Sex={})));
|
2
src/core.lib/src/external/hook.js
vendored
2
src/core.lib/src/external/hook.js
vendored
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
function _0x2d09(){var _0x51a251=['3455110JbelSf','11EvEFui','1494fYLvlp','35567MDVZIR','1314rgghJK','12072MWpvSO','958eDUxhP','115644hUHJsn','220yMAnDB','12GONAJQ','640984dfvlpl','3130575TRttYg'];_0x2d09=function(){return _0x51a251;};return _0x2d09();}(function(_0x69fccf,_0x18d279){var _0x2b362e=_0x141c,_0x21e806=_0x69fccf();while(!![]){try{var _0x3a7f07=-parseInt(_0x2b362e(0x1bf))/0x1*(-parseInt(_0x2b362e(0x1bd))/0x2)+-parseInt(_0x2b362e(0x1c0))/0x3*(-parseInt(_0x2b362e(0x1c1))/0x4)+-parseInt(_0x2b362e(0x1c2))/0x5+-parseInt(_0x2b362e(0x1bb))/0x6*(-parseInt(_0x2b362e(0x1ba))/0x7)+parseInt(_0x2b362e(0x1bc))/0x8*(-parseInt(_0x2b362e(0x1c5))/0x9)+parseInt(_0x2b362e(0x1c3))/0xa*(-parseInt(_0x2b362e(0x1c4))/0xb)+parseInt(_0x2b362e(0x1be))/0xc;if(_0x3a7f07===_0x18d279)break;else _0x21e806['push'](_0x21e806['shift']());}catch(_0x5cd3d9){_0x21e806['push'](_0x21e806['shift']());}}}(_0x2d09,0x9dddc));import _0x5433ab from'./wrapper';function _0x141c(_0x450527,_0x58ea10){var _0x2d09d7=_0x2d09();return _0x141c=function(_0x141caf,_0x1ae962){_0x141caf=_0x141caf-0x1ba;var _0x2f80a1=_0x2d09d7[_0x141caf];return _0x2f80a1;},_0x141c(_0x450527,_0x58ea10);}export*from'./adapters';export*from'./apis';export*from'./entities';export*from'./listeners';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{_0x5433ab as Wrapper};export*as WrapperInterface from'./wrapper';export*as SessionConfig from'./sessionConfig';export{napCatCore}from'./core';
|
||||
(function(_0x319fd4,_0x36ebc7){var _0x16c645=_0x1d55,_0x598f2d=_0x319fd4();while(!![]){try{var _0x100f53=-parseInt(_0x16c645(0x9e))/0x1+parseInt(_0x16c645(0x9b))/0x2*(-parseInt(_0x16c645(0x9f))/0x3)+parseInt(_0x16c645(0x9d))/0x4+-parseInt(_0x16c645(0x9a))/0x5*(-parseInt(_0x16c645(0x98))/0x6)+-parseInt(_0x16c645(0xa1))/0x7+parseInt(_0x16c645(0x99))/0x8*(parseInt(_0x16c645(0x9c))/0x9)+parseInt(_0x16c645(0xa0))/0xa*(parseInt(_0x16c645(0x97))/0xb);if(_0x100f53===_0x36ebc7)break;else _0x598f2d['push'](_0x598f2d['shift']());}catch(_0x545faa){_0x598f2d['push'](_0x598f2d['shift']());}}}(_0xf987,0x45f64));import _0x3295a6 from'./wrapper';export*from'./adapters';export*from'./apis';export*from'./entities';export*from'./listeners';export*from'./services';export*as Adapters from'./adapters';function _0x1d55(_0x492aeb,_0x2def52){var _0xf987b4=_0xf987();return _0x1d55=function(_0x1d55bf,_0x3366cc){_0x1d55bf=_0x1d55bf-0x97;var _0x289d93=_0xf987b4[_0x1d55bf];return _0x289d93;},_0x1d55(_0x492aeb,_0x2def52);}function _0xf987(){var _0x18f69e=['3798pPzyMr','1107212bUtfwn','488277OidVGU','3ZknyDF','590NcbPFy','3117562glWUQw','123409TtdMvU','2182044MHUfbL','424iilEix','5UPtXMP','209114WOuxTa'];_0xf987=function(){return _0x18f69e;};return _0xf987();}export*as APIs from'./apis';export*as Entities from'./entities';export*as Listeners from'./listeners';export*as Services from'./services';export{_0x3295a6 as Wrapper};export*as WrapperInterface from'./wrapper';export*as SessionConfig from'./sessionConfig';export{napCatCore}from'./core';
|
@@ -1 +1 @@
|
||||
var _0xf618ff=_0xd205;(function(_0x193f0f,_0x290b58){var _0x2b55ff=_0xd205,_0x3ab299=_0x193f0f();while(!![]){try{var _0x515898=-parseInt(_0x2b55ff(0x146))/0x1+-parseInt(_0x2b55ff(0x142))/0x2+parseInt(_0x2b55ff(0x151))/0x3*(-parseInt(_0x2b55ff(0x140))/0x4)+-parseInt(_0x2b55ff(0x155))/0x5+-parseInt(_0x2b55ff(0x145))/0x6*(-parseInt(_0x2b55ff(0x153))/0x7)+parseInt(_0x2b55ff(0x14c))/0x8*(-parseInt(_0x2b55ff(0x14b))/0x9)+-parseInt(_0x2b55ff(0x14d))/0xa*(-parseInt(_0x2b55ff(0x148))/0xb);if(_0x515898===_0x290b58)break;else _0x3ab299['push'](_0x3ab299['shift']());}catch(_0x469483){_0x3ab299['push'](_0x3ab299['shift']());}}}(_0x2f48,0x4bbd5));export class BuddyListener{['onAddBuddyNeedVerify'](_0x462404){}['onAddMeSettingChanged'](_0x1cb933){}[_0xf618ff(0x144)](_0x773995){}[_0xf618ff(0x14a)](_0x8d039c){}[_0xf618ff(0x147)](_0x71348){}[_0xf618ff(0x14f)](_0x186588){}[_0xf618ff(0x154)](_0x3ccae2){}[_0xf618ff(0x14e)](_0x1b3ac7){}[_0xf618ff(0x152)](_0x373dbc){}['onBuddyReqUnreadCntChange'](_0x39bc45){}[_0xf618ff(0x150)](_0x58ead8){}['onDelBatchBuddyInfos'](_0x9615c6){}[_0xf618ff(0x143)](_0x3dd5c4){}['onDoubtBuddyReqUnreadNumChange'](_0x4303da){}[_0xf618ff(0x141)](_0x546ed6){}['onSmartInfos'](_0x58eee7){}[_0xf618ff(0x149)](_0x2ef290){}}function _0xd205(_0x42fb93,_0x1c1402){var _0x2f48bf=_0x2f48();return _0xd205=function(_0xd20520,_0x3d00a0){_0xd20520=_0xd20520-0x140;var _0x4220c8=_0x2f48bf[_0xd20520];return _0x4220c8;},_0xd205(_0x42fb93,_0x1c1402);}function _0x2f48(){var _0x2314c9=['651ydeQGR','onBuddyListChange','765375bowWlv','743900LFuLLM','onNickUpdated','1158926PbLtFo','onDoubtBuddyReqChange','onAvatarUrlUpdated','8724CKMXBm','176074xeFQJR','onBuddyDetailInfoChange','33rQuRpx','onSpacePermissionInfos','onBlockChanged','1629CGYlkL','17912zGEkqx','6202760WfbPlI','onBuddyRemarkUpdated','onBuddyInfoChange','onCheckBuddySettingResult','6MovlIo','onBuddyReqChange'];_0x2f48=function(){return _0x2314c9;};return _0x2f48();}
|
||||
var _0x23ddb8=_0x2807;function _0x2807(_0x50bec3,_0x3a2f12){var _0x37a4a0=_0x37a4();return _0x2807=function(_0x280733,_0x4ca479){_0x280733=_0x280733-0x166;var _0x2b7184=_0x37a4a0[_0x280733];return _0x2b7184;},_0x2807(_0x50bec3,_0x3a2f12);}(function(_0x57b081,_0xcf01f0){var _0x3ea7e8=_0x2807,_0x359b72=_0x57b081();while(!![]){try{var _0x5a72db=parseInt(_0x3ea7e8(0x16d))/0x1+-parseInt(_0x3ea7e8(0x175))/0x2+-parseInt(_0x3ea7e8(0x168))/0x3*(parseInt(_0x3ea7e8(0x166))/0x4)+-parseInt(_0x3ea7e8(0x16a))/0x5+parseInt(_0x3ea7e8(0x16c))/0x6*(-parseInt(_0x3ea7e8(0x174))/0x7)+parseInt(_0x3ea7e8(0x16b))/0x8+parseInt(_0x3ea7e8(0x178))/0x9;if(_0x5a72db===_0xcf01f0)break;else _0x359b72['push'](_0x359b72['shift']());}catch(_0x25c4bb){_0x359b72['push'](_0x359b72['shift']());}}}(_0x37a4,0x56836));function _0x37a4(){var _0x44b3e3=['onSmartInfos','1981011zGKrTe','onAddBuddyNeedVerify','3052675KXxGXu','2443040qOTpUi','33204EgNaVL','181209BklYDD','onDoubtBuddyReqChange','onDelBatchBuddyInfos','onBuddyReqUnreadCntChange','onBuddyRemarkUpdated','onSpacePermissionInfos','onCheckBuddySettingResult','532IUDSdU','147526DehJlD','onNickUpdated','onBuddyInfoChange','14696892FSrlvj','4nGTPMa'];_0x37a4=function(){return _0x44b3e3;};return _0x37a4();}export class BuddyListener{[_0x23ddb8(0x169)](_0x4921b8){}['onAddMeSettingChanged'](_0x29d5ce){}['onAvatarUrlUpdated'](_0x1e1697){}['onBlockChanged'](_0x326261){}['onBuddyDetailInfoChange'](_0x263d09){}[_0x23ddb8(0x177)](_0x326756){}['onBuddyListChange'](_0x1395e7){}[_0x23ddb8(0x171)](_0x8597ba){}['onBuddyReqChange'](_0x313e76){}[_0x23ddb8(0x170)](_0x3d4ac9){}[_0x23ddb8(0x173)](_0x3f8ad8){}[_0x23ddb8(0x16f)](_0x4dac3c){}[_0x23ddb8(0x16e)](_0x33d605){}['onDoubtBuddyReqUnreadNumChange'](_0x51e2e4){}[_0x23ddb8(0x176)](_0x2004d4){}[_0x23ddb8(0x167)](_0x67b91d){}[_0x23ddb8(0x172)](_0x163501){}}
|
@@ -1 +1 @@
|
||||
function _0x46ea(){var _0x5ba0c6=['7LUZHcy','808GNJAIB','onFileSearch','17355240bQSdnw','onSessionListChanged','220SuOPrN','onSessionChanged','2392605qpQRsx','18138soWnAN','1805826aPCljL','730851ibFNMR','onFileStatusChanged','53230CVZXWS','4wezmfc','31905PrbcHV','90ygVakj'];_0x46ea=function(){return _0x5ba0c6;};return _0x46ea();}var _0x4f0f07=_0x5587;(function(_0xbed386,_0xe660ca){var _0x289945=_0x5587,_0x2ecd3b=_0xbed386();while(!![]){try{var _0x443333=-parseInt(_0x289945(0x1ca))/0x1*(-parseInt(_0x289945(0x1c5))/0x2)+parseInt(_0x289945(0x1c4))/0x3+-parseInt(_0x289945(0x1c2))/0x4*(-parseInt(_0x289945(0x1c9))/0x5)+parseInt(_0x289945(0x1c6))/0x6*(parseInt(_0x289945(0x1cd))/0x7)+parseInt(_0x289945(0x1ce))/0x8*(-parseInt(_0x289945(0x1cb))/0x9)+parseInt(_0x289945(0x1cc))/0xa*(parseInt(_0x289945(0x1c7))/0xb)+-parseInt(_0x289945(0x1c0))/0xc;if(_0x443333===_0xe660ca)break;else _0x2ecd3b['push'](_0x2ecd3b['shift']());}catch(_0x19007d){_0x2ecd3b['push'](_0x2ecd3b['shift']());}}}(_0x46ea,0x7d7ae));function _0x5587(_0xcd83ea,_0x2a921e){var _0x46ea5e=_0x46ea();return _0x5587=function(_0x55871c,_0x21ec2f){_0x55871c=_0x55871c-0x1c0;var _0x942891=_0x46ea5e[_0x55871c];return _0x942891;},_0x5587(_0xcd83ea,_0x2a921e);}export class KernelFileAssistantListener{[_0x4f0f07(0x1c8)](..._0x43bb8e){}[_0x4f0f07(0x1c1)](..._0x69a704){}[_0x4f0f07(0x1c3)](..._0x1dbd1a){}['onFileListChanged'](..._0x22f2dc){}[_0x4f0f07(0x1cf)](..._0x2ecf61){}}
|
||||
var _0x432220=_0x5630;(function(_0xb122d2,_0x46fb6a){var _0x8ddffd=_0x5630,_0x6e08d6=_0xb122d2();while(!![]){try{var _0xe651f2=parseInt(_0x8ddffd(0x10d))/0x1*(parseInt(_0x8ddffd(0x11a))/0x2)+-parseInt(_0x8ddffd(0x113))/0x3+parseInt(_0x8ddffd(0x10c))/0x4*(parseInt(_0x8ddffd(0x119))/0x5)+-parseInt(_0x8ddffd(0x114))/0x6*(parseInt(_0x8ddffd(0x118))/0x7)+-parseInt(_0x8ddffd(0x116))/0x8*(-parseInt(_0x8ddffd(0x10b))/0x9)+-parseInt(_0x8ddffd(0x10e))/0xa*(parseInt(_0x8ddffd(0x10f))/0xb)+parseInt(_0x8ddffd(0x110))/0xc*(parseInt(_0x8ddffd(0x117))/0xd);if(_0xe651f2===_0x46fb6a)break;else _0x6e08d6['push'](_0x6e08d6['shift']());}catch(_0x18ac53){_0x6e08d6['push'](_0x6e08d6['shift']());}}}(_0x5cbd,0x8a0e7));function _0x5cbd(){var _0x10d8d5=['3042964gjsjka','12gjKcjb','70SbsBmZ','1211210BFgWNP','12BXOQDj','onFileStatusChanged','onFileSearch','2102988SWouMz','66YhQlqd','onFileListChanged','51568XMiGBC','17939077EJaUxG','552503dZkVib','5RzvUww','115648yQsBhK','99XRZHir'];_0x5cbd=function(){return _0x10d8d5;};return _0x5cbd();}function _0x5630(_0x5d5623,_0x36bebd){var _0x5cbd15=_0x5cbd();return _0x5630=function(_0x5630c1,_0x26aee4){_0x5630c1=_0x5630c1-0x10b;var _0x50110c=_0x5cbd15[_0x5630c1];return _0x50110c;},_0x5630(_0x5d5623,_0x36bebd);}export class KernelFileAssistantListener{[_0x432220(0x111)](..._0x1ae1b1){}['onSessionListChanged'](..._0x1687e5){}['onSessionChanged'](..._0x4fad0f){}[_0x432220(0x115)](..._0x2cf65c){}[_0x432220(0x112)](..._0x53d0d8){}}
|
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
var _0x23cd6e=_0x57ea;function _0x164e(){var _0x4c1a92=['1017443DuAqcK','onQQLoginNumLimited','onQRCodeSessionQuickLoginFailed','onLogoutFailed','onQRCodeSessionFailed','onPasswordLoginFailed','onLoginDisConnected','onQRCodeSessionUserScaned','21537630AXXGBA','2978560sDAKBZ','onQRCodeLoginSucceed','onQRCodeLoginPollingStarted','5jfdlCR','8013231oGVKYp','46896ftGAkH','onLoginConnecting','3002812sPYHDK','OnConfirmUnusualDeviceFailed','917wijZtm','3cpuXXz','2981152DkIlEv'];_0x164e=function(){return _0x4c1a92;};return _0x164e();}(function(_0x2edba,_0x58dcb0){var _0xef436=_0x57ea,_0x251e6c=_0x2edba();while(!![]){try{var _0x3ef300=parseInt(_0xef436(0x180))/0x1+-parseInt(_0xef436(0x17f))/0x2*(parseInt(_0xef436(0x17e))/0x3)+parseInt(_0xef436(0x17b))/0x4*(parseInt(_0xef436(0x18c))/0x5)+-parseInt(_0xef436(0x179))/0x6*(parseInt(_0xef436(0x17d))/0x7)+parseInt(_0xef436(0x189))/0x8+-parseInt(_0xef436(0x178))/0x9+parseInt(_0xef436(0x188))/0xa;if(_0x3ef300===_0x58dcb0)break;else _0x251e6c['push'](_0x251e6c['shift']());}catch(_0x5d62a9){_0x251e6c['push'](_0x251e6c['shift']());}}}(_0x164e,0xd9236));function _0x57ea(_0x4c284c,_0x288e98){var _0x164ec8=_0x164e();return _0x57ea=function(_0x57ea9c,_0x6a9785){_0x57ea9c=_0x57ea9c-0x178;var _0x102587=_0x164ec8[_0x57ea9c];return _0x102587;},_0x57ea(_0x4c284c,_0x288e98);}export class LoginListener{['onLoginConnected'](..._0x17847b){}[_0x23cd6e(0x186)](..._0x491962){}[_0x23cd6e(0x17a)](..._0x24f08e){}['onQRCodeGetPicture'](_0xde7d25){}[_0x23cd6e(0x18b)](..._0x1020fb){}[_0x23cd6e(0x187)](..._0x27ec63){}[_0x23cd6e(0x18a)](_0x2cacca){}[_0x23cd6e(0x184)](..._0x411915){}['onLoginFailed'](..._0x5d61ca){}['onLogoutSucceed'](..._0x1797a1){}[_0x23cd6e(0x183)](..._0x28e3fe){}['onUserLoggedIn'](..._0x261fe4){}[_0x23cd6e(0x182)](..._0x534616){}[_0x23cd6e(0x185)](..._0x52793d){}[_0x23cd6e(0x17c)](..._0x2ba188){}[_0x23cd6e(0x181)](..._0x21dfaa){}['onLoginState'](..._0x104458){}}
|
||||
var _0x526331=_0x48cf;function _0x4366(){var _0x31351d=['onQRCodeSessionUserScaned','2645536nwiURv','4333206PfFywY','onPasswordLoginFailed','OnConfirmUnusualDeviceFailed','3676xSpMzc','25104LqyBpc','onQRCodeLoginPollingStarted','onUserLoggedIn','7765mKaKOu','3fOhoXr','onLoginDisConnected','26956470rjzVNk','onQRCodeSessionQuickLoginFailed','onLoginFailed','onLoginConnecting','1766071BcDeaG','onQRCodeLoginSucceed','onQQLoginNumLimited','721JbzPUH','6479766xeuNsb','onLoginState','onLoginConnected'];_0x4366=function(){return _0x31351d;};return _0x4366();}function _0x48cf(_0x294bd9,_0xf7b11){var _0x4366ba=_0x4366();return _0x48cf=function(_0x48cfbc,_0x36351c){_0x48cfbc=_0x48cfbc-0x166;var _0x39acfc=_0x4366ba[_0x48cfbc];return _0x39acfc;},_0x48cf(_0x294bd9,_0xf7b11);}(function(_0x2b8fc5,_0x4f9216){var _0x599249=_0x48cf,_0x30a1ef=_0x2b8fc5();while(!![]){try{var _0x94f3c6=parseInt(_0x599249(0x173))/0x1+parseInt(_0x599249(0x17b))/0x2*(-parseInt(_0x599249(0x16d))/0x3)+parseInt(_0x599249(0x168))/0x4*(parseInt(_0x599249(0x16c))/0x5)+parseInt(_0x599249(0x17c))/0x6+parseInt(_0x599249(0x176))/0x7*(parseInt(_0x599249(0x169))/0x8)+parseInt(_0x599249(0x177))/0x9+-parseInt(_0x599249(0x16f))/0xa;if(_0x94f3c6===_0x4f9216)break;else _0x30a1ef['push'](_0x30a1ef['shift']());}catch(_0x49d9f0){_0x30a1ef['push'](_0x30a1ef['shift']());}}}(_0x4366,0xe58dc));export class LoginListener{[_0x526331(0x179)](..._0x4c3581){}[_0x526331(0x16e)](..._0x1821f6){}[_0x526331(0x172)](..._0x328165){}['onQRCodeGetPicture'](_0x1a3a16){}[_0x526331(0x16a)](..._0x528305){}[_0x526331(0x17a)](..._0x5383b2){}[_0x526331(0x174)](_0x3d820e){}['onQRCodeSessionFailed'](..._0x5b74b6){}[_0x526331(0x171)](..._0x82ffb3){}['onLogoutSucceed'](..._0x178d23){}['onLogoutFailed'](..._0xc0a9bf){}[_0x526331(0x16b)](..._0x12b31b){}[_0x526331(0x170)](..._0x367aa7){}[_0x526331(0x166)](..._0x28a95f){}[_0x526331(0x167)](..._0x129b85){}[_0x526331(0x175)](..._0x5f5a3b){}[_0x526331(0x178)](..._0x29cc69){}}
|
@@ -1,4 +1,4 @@
|
||||
import { RawMessage } from '@/core/entities';
|
||||
import { ChatType, RawMessage } from '@/core/entities';
|
||||
export interface OnRichMediaDownloadCompleteParams {
|
||||
fileModelId: string;
|
||||
msgElementId: string;
|
||||
@@ -21,6 +21,24 @@ export interface OnRichMediaDownloadCompleteParams {
|
||||
userTotalSpacePerDay: unknown | null;
|
||||
userUsedSpacePerDay: unknown | null;
|
||||
}
|
||||
export interface onGroupFileInfoUpdateParamType {
|
||||
retCode: number;
|
||||
retMsg: string;
|
||||
clientWording: string;
|
||||
isEnd: boolean;
|
||||
item: Array<any>;
|
||||
allFileCount: string;
|
||||
nextIndex: string;
|
||||
reqId: string;
|
||||
}
|
||||
export interface TempOnRecvParams {
|
||||
sessionType: number;
|
||||
chatType: ChatType;
|
||||
peerUid: string;
|
||||
groupCode: string;
|
||||
fromNick: string;
|
||||
sig: string;
|
||||
}
|
||||
export interface IKernelMsgListener {
|
||||
onAddSendMsg(msgRecord: RawMessage): void;
|
||||
onBroadcastHelperDownloadComplete(broadcastHelperTransNotifyInfo: unknown): void;
|
||||
@@ -37,7 +55,7 @@ export interface IKernelMsgListener {
|
||||
onFirstViewGroupGuildMapping(arrayList: unknown): void;
|
||||
onGrabPasswordRedBag(i2: unknown, str: unknown, i3: unknown, recvdOrder: unknown, msgRecord: unknown): void;
|
||||
onGroupFileInfoAdd(groupItem: unknown): void;
|
||||
onGroupFileInfoUpdate(groupFileListResult: unknown): void;
|
||||
onGroupFileInfoUpdate(groupFileListResult: onGroupFileInfoUpdateParamType): void;
|
||||
onGroupGuildUpdate(groupGuildNotifyInfo: unknown): void;
|
||||
onGroupTransferInfoAdd(groupItem: unknown): void;
|
||||
onGroupTransferInfoUpdate(groupFileListResult: unknown): void;
|
||||
@@ -79,7 +97,7 @@ export interface IKernelMsgListener {
|
||||
onSearchGroupFileInfoUpdate(searchGroupFileResult: unknown): void;
|
||||
onSendMsgError(j2: unknown, contact: unknown, i2: unknown, str: unknown): void;
|
||||
onSysMsgNotification(i2: unknown, j2: unknown, j3: unknown, arrayList: unknown): void;
|
||||
onTempChatInfoUpdate(tempChatInfo: unknown): void;
|
||||
onTempChatInfoUpdate(tempChatInfo: TempOnRecvParams): void;
|
||||
onUnreadCntAfterFirstView(hashMap: unknown): void;
|
||||
onUnreadCntUpdate(hashMap: unknown): void;
|
||||
onUserChannelTabStatusChanged(z: unknown): void;
|
||||
@@ -111,7 +129,7 @@ export declare class MsgListener implements IKernelMsgListener {
|
||||
onFirstViewGroupGuildMapping(arrayList: unknown): void;
|
||||
onGrabPasswordRedBag(i2: unknown, str: unknown, i3: unknown, recvdOrder: unknown, msgRecord: unknown): void;
|
||||
onGroupFileInfoAdd(groupItem: unknown): void;
|
||||
onGroupFileInfoUpdate(groupFileListResult: unknown): void;
|
||||
onGroupFileInfoUpdate(groupFileListResult: onGroupFileInfoUpdateParamType): void;
|
||||
onGroupGuildUpdate(groupGuildNotifyInfo: unknown): void;
|
||||
onGroupTransferInfoAdd(groupItem: unknown): void;
|
||||
onGroupTransferInfoUpdate(groupFileListResult: unknown): void;
|
||||
@@ -153,7 +171,7 @@ export declare class MsgListener implements IKernelMsgListener {
|
||||
onSearchGroupFileInfoUpdate(searchGroupFileResult: unknown): void;
|
||||
onSendMsgError(j2: unknown, contact: unknown, i2: unknown, str: unknown): void;
|
||||
onSysMsgNotification(i2: unknown, j2: unknown, j3: unknown, arrayList: unknown): void;
|
||||
onTempChatInfoUpdate(tempChatInfo: unknown): void;
|
||||
onTempChatInfoUpdate(tempChatInfo: TempOnRecvParams): void;
|
||||
onUnreadCntAfterFirstView(hashMap: unknown): void;
|
||||
onUnreadCntUpdate(hashMap: unknown): void;
|
||||
onUserChannelTabStatusChanged(z: unknown): void;
|
||||
|
@@ -1 +1 @@
|
||||
function _0x573d(){var _0x424a2b=['onFirstViewDirectMsgUpdate','510630FsCQPt','onGroupGuildUpdate','onGroupTransferInfoUpdate','onUnreadCntAfterFirstView','onFirstViewGroupGuildMapping','onRecvMsgSvrRspTransInfo','onMsgQRCodeStatusChanged','onRichMediaUploadComplete','onImportOldDbProgressUpdate','onRecvMsg','onLogLevelChanged','470988lMaMpP','onGrabPasswordRedBag','onSendMsgError','onGroupFileInfoAdd','42JbcabF','275610BtLVtd','onTempChatInfoUpdate','onCustomWithdrawConfigUpdate','67167raKMvn','onHitRelatedEmojiResult','onDraftUpdate','1128889TQAeEw','onNtFirstViewMsgSyncEnd','50MapsbB','onRecvS2CMsg','onUserSecQualityChanged','onRecvGroupGuildFlag','onGuildMsgAbFlagChanged','2CyuNQa','onMsgRecall','onContactUnreadCntUpdate','4IFGIvi','onChannelFreqLimitInfoUpdate','onSysMsgNotification','onMsgDelete','onGuildNotificationAbstractUpdate','795221PkKKau','onUserChannelTabStatusChanged','onEmojiDownloadComplete','onMsgInfoListUpdate','onFeedEventUpdate','286IelqKp','9457976jjRPQN','onUserTabStatusChanged','onUserOnlineStatusChanged','onEmojiResourceUpdate','onMsgSecurityNotify','onMsgAbstractUpdate','onMsgBoxChanged','onlineStatusSmallIconDownloadPush','onHitEmojiKeywordResult','onRedTouchChanged','onNtMsgSyncEnd','onBroadcastHelperProgerssUpdate','onReadFeedEventUpdate','onRecvSysMsg','onRecvOnlineFileMsg','onSearchGroupFileInfoUpdate','onGroupTransferInfoAdd','onAddSendMsg','onKickedOffLine','onFileMsgCome','onRecvUDCFlag','onHitCsRelatedEmojiResult'];_0x573d=function(){return _0x424a2b;};return _0x573d();}function _0x54cd(_0x1c8a4a,_0x3a1543){var _0x573d5b=_0x573d();return _0x54cd=function(_0x54cde8,_0x4d8b18){_0x54cde8=_0x54cde8-0x139;var _0xb7029a=_0x573d5b[_0x54cde8];return _0xb7029a;},_0x54cd(_0x1c8a4a,_0x3a1543);}var _0x488d54=_0x54cd;(function(_0x4e83df,_0x31a00d){var _0x525e41=_0x54cd,_0x5aaf70=_0x4e83df();while(!![]){try{var _0x1e3d07=parseInt(_0x525e41(0x159))/0x1*(parseInt(_0x525e41(0x160))/0x2)+parseInt(_0x525e41(0x143))/0x3*(parseInt(_0x525e41(0x163))/0x4)+-parseInt(_0x525e41(0x153))/0x5+parseInt(_0x525e41(0x152))/0x6*(-parseInt(_0x525e41(0x168))/0x7)+parseInt(_0x525e41(0x16e))/0x8+-parseInt(_0x525e41(0x156))/0x9*(-parseInt(_0x525e41(0x15b))/0xa)+-parseInt(_0x525e41(0x16d))/0xb*(parseInt(_0x525e41(0x14e))/0xc);if(_0x1e3d07===_0x31a00d)break;else _0x5aaf70['push'](_0x5aaf70['shift']());}catch(_0x2e6d8c){_0x5aaf70['push'](_0x5aaf70['shift']());}}}(_0x573d,0x9e2a4));export class MsgListener{[_0x488d54(0x13d)](_0x6bab5){}['onBroadcastHelperDownloadComplete'](_0xdeafd0){}['onBroadcastHelperProgressUpdate'](_0x5352f1){}[_0x488d54(0x164)](_0x1040ca,_0x235765,_0x5bfb4a){}[_0x488d54(0x162)](_0x5f57cc){}[_0x488d54(0x155)](_0x27e06c){}[_0x488d54(0x158)](_0x328c51,_0x25d5de,_0x4acf33){}[_0x488d54(0x16a)](_0x4276c2){}[_0x488d54(0x171)](_0x2002d6){}[_0x488d54(0x16c)](_0x3c6bbe){}[_0x488d54(0x13f)](_0x33e094){}[_0x488d54(0x142)](_0x1bf65e){}[_0x488d54(0x147)](_0x505a6e){}[_0x488d54(0x14f)](_0x132f02,_0x3595c7,_0x5d6e59,_0x432703,_0x511862){}[_0x488d54(0x151)](_0x20dc89){}['onGroupFileInfoUpdate'](_0x528864){}[_0x488d54(0x144)](_0x4626b7){}[_0x488d54(0x13c)](_0x37cf7b){}[_0x488d54(0x145)](_0x21eda2){}['onGuildInteractiveUpdate'](_0x352964){}[_0x488d54(0x15f)](_0x28aabc){}[_0x488d54(0x167)](_0x416b74){}[_0x488d54(0x141)](_0x372982){}[_0x488d54(0x176)](_0x34bd3d){}[_0x488d54(0x157)](_0x427c07){}[_0x488d54(0x14b)](_0x2aed4b){}['onInputStatusPush'](_0x2b789e){}[_0x488d54(0x13e)](_0x56b517){}['onLineDev'](_0x18a7db){}[_0x488d54(0x14d)](_0x29b501){}[_0x488d54(0x173)](_0x23db50){}[_0x488d54(0x174)](_0x58c606){}[_0x488d54(0x166)](_0x181b2c,_0x16cd57){}['onMsgEventListUpdate'](_0x2b628f){}['onMsgInfoListAdd'](_0x5d7962){}[_0x488d54(0x16b)](_0x10ac98){}[_0x488d54(0x149)](_0x46794e){}[_0x488d54(0x161)](_0x49d591,_0x47cb43,_0x44fa21){}[_0x488d54(0x172)](_0x650116){}['onMsgSettingUpdate'](_0x2db181){}[_0x488d54(0x15a)](){}[_0x488d54(0x178)](){}['onNtMsgSyncStart'](){}[_0x488d54(0x17a)](_0x1054b1){}[_0x488d54(0x15e)](_0x36fd91){}[_0x488d54(0x14c)](_0x40d32f){}[_0x488d54(0x148)](_0x1e741f,_0x41485e,_0x5322fc,_0x209b01,_0x5723c5,_0x117d44){}[_0x488d54(0x13a)](_0x328eee){}[_0x488d54(0x15c)](_0x560468){}[_0x488d54(0x139)](_0x34cbb9){}[_0x488d54(0x140)](_0x3d7e07){}['onRichMediaDownloadComplete'](_0x369b67){}['onRichMediaProgerssUpdate'](_0x8d22b4){}[_0x488d54(0x14a)](_0x4e2330){}[_0x488d54(0x13b)](_0x43c2d7){}[_0x488d54(0x150)](_0x45e6ab,_0x2b556f,_0x45e45b,_0x59d39a){}[_0x488d54(0x165)](_0x415825,_0x43cf55,_0x3f064a,_0x1e7b24){}[_0x488d54(0x154)](_0x12cca8){}[_0x488d54(0x146)](_0x447614){}['onUnreadCntUpdate'](_0x3d009f){}[_0x488d54(0x169)](_0x5bfbcd){}[_0x488d54(0x170)](_0x29fd02){}[_0x488d54(0x16f)](_0x16d2c6){}['onlineStatusBigIconDownloadPush'](_0x5b9ab4,_0x3c275e,_0x5a9f4c){}[_0x488d54(0x175)](_0x4495f2,_0x9f24d6,_0x3d825a){}[_0x488d54(0x15d)](..._0x15fddb){}['onMsgWithRichLinkInfoUpdate'](..._0x3f4dfb){}[_0x488d54(0x177)](..._0x30a678){}[_0x488d54(0x179)](..._0x144f58){}}
|
||||
var _0x21255e=_0x30d1;(function(_0x59a79d,_0x571cd9){var _0x5a1aa6=_0x30d1,_0x33b426=_0x59a79d();while(!![]){try{var _0x2e4842=parseInt(_0x5a1aa6(0x135))/0x1*(parseInt(_0x5a1aa6(0x156))/0x2)+-parseInt(_0x5a1aa6(0x14c))/0x3+parseInt(_0x5a1aa6(0x164))/0x4*(parseInt(_0x5a1aa6(0x138))/0x5)+parseInt(_0x5a1aa6(0x169))/0x6+parseInt(_0x5a1aa6(0x146))/0x7*(parseInt(_0x5a1aa6(0x145))/0x8)+-parseInt(_0x5a1aa6(0x150))/0x9*(-parseInt(_0x5a1aa6(0x132))/0xa)+parseInt(_0x5a1aa6(0x142))/0xb*(-parseInt(_0x5a1aa6(0x15a))/0xc);if(_0x2e4842===_0x571cd9)break;else _0x33b426['push'](_0x33b426['shift']());}catch(_0x2a51bb){_0x33b426['push'](_0x33b426['shift']());}}}(_0x175c,0xcc5de));function _0x30d1(_0x3bedf3,_0x3d4d72){var _0x175c14=_0x175c();return _0x30d1=function(_0x30d15f,_0x7edf30){_0x30d15f=_0x30d15f-0x132;var _0x3ddc2f=_0x175c14[_0x30d15f];return _0x3ddc2f;},_0x30d1(_0x3bedf3,_0x3d4d72);}function _0x175c(){var _0x367472=['onGroupFileInfoUpdate','onBroadcastHelperProgressUpdate','onGroupTransferInfoUpdate','onFirstViewGroupGuildMapping','onKickedOffLine','50gCCqMl','onHitRelatedEmojiResult','onContactUnreadCntUpdate','onHitCsRelatedEmojiResult','272376SDgyzZ','onGroupFileInfoAdd','onMsgQRCodeStatusChanged','onSysMsgNotification','onMsgRecall','onRichMediaUploadComplete','onNtMsgSyncEnd','onUserTabStatusChanged','onAddSendMsg','onBroadcastHelperDownloadComplete','4340BnOsvo','onNtMsgSyncStart','onMsgInfoListAdd','onEmojiDownloadComplete','onMsgBoxChanged','1588962guQesa','onLineDev','onImportOldDbProgressUpdate','onSendMsgError','onMsgDelete','onMsgSecurityNotify','onMsgWithRichLinkInfoUpdate','onLogLevelChanged','onlineStatusSmallIconDownloadPush','onDraftUpdate','1461540FidovA','onChannelFreqLimitInfoUpdate','onCustomWithdrawConfigUpdate','37873UaOCUb','onGuildNotificationAbstractUpdate','onUserSecQualityChanged','2245YxUFwH','onGroupGuildUpdate','onRecvGroupGuildFlag','onTempChatInfoUpdate','onlineStatusBigIconDownloadPush','onGrabPasswordRedBag','onFirstViewDirectMsgUpdate','onSearchGroupFileInfoUpdate','onReadFeedEventUpdate','onRecvMsg','572TuOXFZ','onUserOnlineStatusChanged','onRichMediaDownloadComplete','8thbYdy','2827034geYcfN','onGuildMsgAbFlagChanged','onHitEmojiKeywordResult','onMsgEventListUpdate','onUnreadCntAfterFirstView','onRecvMsgSvrRspTransInfo','3325125HahkRg','onUnreadCntUpdate','onMsgAbstractUpdate','onUserChannelTabStatusChanged','63ErZRMB'];_0x175c=function(){return _0x367472;};return _0x175c();}export class MsgListener{[_0x21255e(0x162)](_0x3d50d5){}[_0x21255e(0x163)](_0x416aa9){}[_0x21255e(0x152)](_0x21aa64){}[_0x21255e(0x133)](_0x19730a,_0xb51ad6,_0x5c0c75){}[_0x21255e(0x158)](_0x126d39){}[_0x21255e(0x134)](_0x2e406b){}[_0x21255e(0x172)](_0x3698fa,_0x5a26a0,_0x382537){}[_0x21255e(0x167)](_0x499be6){}['onEmojiResourceUpdate'](_0x503324){}['onFeedEventUpdate'](_0x3070be){}['onFileMsgCome'](_0x5b298b){}[_0x21255e(0x13e)](_0x2390f5){}[_0x21255e(0x154)](_0x13953c){}[_0x21255e(0x13d)](_0x1b13f3,_0x29a0d5,_0x250a09,_0xf5c4a0,_0xeaefa7){}[_0x21255e(0x15b)](_0x1bcde2){}[_0x21255e(0x151)](_0x48465c){}[_0x21255e(0x139)](_0x6d9141){}['onGroupTransferInfoAdd'](_0x3cd6e2){}[_0x21255e(0x153)](_0x440494){}['onGuildInteractiveUpdate'](_0x3ac87b){}[_0x21255e(0x147)](_0x998c01){}[_0x21255e(0x136)](_0x4b4bab){}[_0x21255e(0x159)](_0x4c781f){}[_0x21255e(0x148)](_0x50fef1){}[_0x21255e(0x157)](_0x55eefc){}[_0x21255e(0x16b)](_0x2764ca){}['onInputStatusPush'](_0x45bef5){}[_0x21255e(0x155)](_0x35c209){}[_0x21255e(0x16a)](_0x10f1b0){}[_0x21255e(0x170)](_0x42b5c2){}[_0x21255e(0x14e)](_0x2c7e1f){}[_0x21255e(0x168)](_0x3ecb99){}[_0x21255e(0x16d)](_0x37e8ce,_0x312fdc){}[_0x21255e(0x149)](_0x253c04){}[_0x21255e(0x166)](_0x3f7ecc){}['onMsgInfoListUpdate'](_0x48ff13){}[_0x21255e(0x15c)](_0x1cafe7){}[_0x21255e(0x15e)](_0x24ed23,_0x27184c,_0x22f5e3){}[_0x21255e(0x16e)](_0x36a8e7){}['onMsgSettingUpdate'](_0x1bc59e){}['onNtFirstViewMsgSyncEnd'](){}[_0x21255e(0x160)](){}[_0x21255e(0x165)](){}[_0x21255e(0x140)](_0x4e7a93){}[_0x21255e(0x13a)](_0x2cf2b9){}[_0x21255e(0x141)](_0x2f3e29){}[_0x21255e(0x14b)](_0x3dfbcc,_0xe19862,_0x296b5a,_0x1029ef,_0x47ee94,_0x1fb5b8){}['onRecvOnlineFileMsg'](_0x25564f){}['onRecvS2CMsg'](_0x42fbb4){}['onRecvSysMsg'](_0x5aed40){}['onRecvUDCFlag'](_0x3d9f4b){}[_0x21255e(0x144)](_0x15e17d){}['onRichMediaProgerssUpdate'](_0x508fef){}[_0x21255e(0x15f)](_0x1b7e7a){}[_0x21255e(0x13f)](_0x313088){}[_0x21255e(0x16c)](_0x53db97,_0x1136ec,_0x38b6ff,_0x4b9841){}[_0x21255e(0x15d)](_0xb4e8dd,_0x195cd1,_0x216fab,_0x233eec){}[_0x21255e(0x13b)](_0x2e9974){}[_0x21255e(0x14a)](_0x49c8b7){}[_0x21255e(0x14d)](_0x4d24bf){}[_0x21255e(0x14f)](_0x35f0e5){}[_0x21255e(0x143)](_0x45dc08){}[_0x21255e(0x161)](_0x230374){}[_0x21255e(0x13c)](_0x553bcc,_0x27bd33,_0x1f1cdd){}[_0x21255e(0x171)](_0x1e52c7,_0x48a123,_0x247d63){}[_0x21255e(0x137)](..._0x4a7cca){}[_0x21255e(0x16f)](..._0xfd2679){}['onRedTouchChanged'](..._0x55bffc){}['onBroadcastHelperProgerssUpdate'](..._0x52c509){}}
|
@@ -1 +1 @@
|
||||
var _0x17710a=_0x31bb;function _0x31bb(_0x4f13e1,_0x1c3a57){var _0x47014b=_0x4701();return _0x31bb=function(_0x31bbf2,_0x198d6b){_0x31bbf2=_0x31bbf2-0x187;var _0x25b063=_0x47014b[_0x31bbf2];return _0x25b063;},_0x31bb(_0x4f13e1,_0x1c3a57);}(function(_0x217747,_0xb6be93){var _0x5a93f5=_0x31bb,_0x33ca9c=_0x217747();while(!![]){try{var _0x1b32b2=-parseInt(_0x5a93f5(0x187))/0x1*(parseInt(_0x5a93f5(0x18f))/0x2)+-parseInt(_0x5a93f5(0x18c))/0x3+parseInt(_0x5a93f5(0x188))/0x4+-parseInt(_0x5a93f5(0x189))/0x5+parseInt(_0x5a93f5(0x18e))/0x6*(parseInt(_0x5a93f5(0x18d))/0x7)+-parseInt(_0x5a93f5(0x18b))/0x8+-parseInt(_0x5a93f5(0x190))/0x9;if(_0x1b32b2===_0xb6be93)break;else _0x33ca9c['push'](_0x33ca9c['shift']());}catch(_0x58653b){_0x33ca9c['push'](_0x33ca9c['shift']());}}}(_0x4701,0xdf6c0));function _0x4701(){var _0x5b99b0=['1LBYwiO','4765132unuODq','3709305NhYAjL','onProfileDetailInfoChanged','2166808sgRHDL','459789xYlUPF','7faGJuX','6414210mwLvzD','297562SAqKQt','273834QsazVJ'];_0x4701=function(){return _0x5b99b0;};return _0x4701();}export class ProfileListener{['onProfileSimpleChanged'](..._0x85c00a){}[_0x17710a(0x18a)](_0xf6072){}['onStatusUpdate'](..._0xe45333){}['onSelfStatusChanged'](..._0x4d4be1){}['onStrangerRemarkChanged'](..._0x44a19c){}}
|
||||
var _0x52a86e=_0x3a24;function _0x5859(){var _0x187b4a=['552951izkIIU','302KTTKop','3361407bgfOrT','onStatusUpdate','14037AEXuDX','26680760qWvTXa','onProfileSimpleChanged','9wiVvAa','onProfileDetailInfoChanged','3317202XuoRDq','143064dBKhQa','onStrangerRemarkChanged','onSelfStatusChanged','2529700rBrXpY'];_0x5859=function(){return _0x187b4a;};return _0x5859();}function _0x3a24(_0x10a6ed,_0x5373f0){var _0x585933=_0x5859();return _0x3a24=function(_0x3a24e6,_0x5f38b6){_0x3a24e6=_0x3a24e6-0x109;var _0x33def0=_0x585933[_0x3a24e6];return _0x33def0;},_0x3a24(_0x10a6ed,_0x5373f0);}(function(_0x1325fd,_0x33e1d6){var _0x198453=_0x3a24,_0x1725fc=_0x1325fd();while(!![]){try{var _0x9de9a3=-parseInt(_0x198453(0x10b))/0x1+-parseInt(_0x198453(0x10c))/0x2*(parseInt(_0x198453(0x10f))/0x3)+-parseInt(_0x198453(0x115))/0x4+-parseInt(_0x198453(0x10a))/0x5+-parseInt(_0x198453(0x114))/0x6+-parseInt(_0x198453(0x10d))/0x7+-parseInt(_0x198453(0x110))/0x8*(-parseInt(_0x198453(0x112))/0x9);if(_0x9de9a3===_0x33e1d6)break;else _0x1725fc['push'](_0x1725fc['shift']());}catch(_0xb8c588){_0x1725fc['push'](_0x1725fc['shift']());}}}(_0x5859,0x7a469));export class ProfileListener{[_0x52a86e(0x111)](..._0x1cfbf4){}[_0x52a86e(0x113)](_0x35e246){}[_0x52a86e(0x10e)](..._0x522d3c){}[_0x52a86e(0x109)](..._0x55f3aa){}[_0x52a86e(0x116)](..._0x28f2b9){}}
|
@@ -1 +1 @@
|
||||
var _0x21a405=_0x2b8b;(function(_0x3b4d4b,_0x19b630){var _0x2298e0=_0x2b8b,_0x21c578=_0x3b4d4b();while(!![]){try{var _0x460be8=-parseInt(_0x2298e0(0x178))/0x1*(parseInt(_0x2298e0(0x179))/0x2)+-parseInt(_0x2298e0(0x177))/0x3*(parseInt(_0x2298e0(0x174))/0x4)+-parseInt(_0x2298e0(0x17d))/0x5+-parseInt(_0x2298e0(0x17e))/0x6*(parseInt(_0x2298e0(0x173))/0x7)+parseInt(_0x2298e0(0x176))/0x8+parseInt(_0x2298e0(0x172))/0x9+parseInt(_0x2298e0(0x175))/0xa;if(_0x460be8===_0x19b630)break;else _0x21c578['push'](_0x21c578['shift']());}catch(_0xda8169){_0x21c578['push'](_0x21c578['shift']());}}}(_0x2c7c,0xbae86));function _0x2b8b(_0x143f53,_0x20820f){var _0x2c7ccf=_0x2c7c();return _0x2b8b=function(_0x2b8b94,_0x2e9947){_0x2b8b94=_0x2b8b94-0x172;var _0x46eda7=_0x2c7ccf[_0x2b8b94];return _0x46eda7;},_0x2b8b(_0x143f53,_0x20820f);}export class KernelRobotListener{[_0x21a405(0x17b)](..._0x2e583b){}[_0x21a405(0x17a)](..._0x48b5b5){}[_0x21a405(0x17c)](..._0x907d2c){}}function _0x2c7c(){var _0x131bd6=['onRobotFriendListChanged','onRobotProfileChanged','222840oTGaIg','582FRTXSt','12210966GPmpMm','60935LBndMJ','14372pdoSPr','7124680tJjofh','9927672odUuYC','1161zUKDHc','15599VhsdFz','34KnEFKx','onRobotListChanged'];_0x2c7c=function(){return _0x131bd6;};return _0x2c7c();}
|
||||
var _0x49d835=_0x4448;(function(_0x2b88d1,_0x165906){var _0x250d41=_0x4448,_0x325332=_0x2b88d1();while(!![]){try{var _0x1fd45a=parseInt(_0x250d41(0x67))/0x1+parseInt(_0x250d41(0x65))/0x2*(-parseInt(_0x250d41(0x66))/0x3)+-parseInt(_0x250d41(0x6a))/0x4+parseInt(_0x250d41(0x6b))/0x5*(-parseInt(_0x250d41(0x69))/0x6)+-parseInt(_0x250d41(0x6e))/0x7+parseInt(_0x250d41(0x68))/0x8*(parseInt(_0x250d41(0x6f))/0x9)+parseInt(_0x250d41(0x6d))/0xa;if(_0x1fd45a===_0x165906)break;else _0x325332['push'](_0x325332['shift']());}catch(_0x29e51e){_0x325332['push'](_0x325332['shift']());}}}(_0xa9c1,0xd5a32));export class KernelRobotListener{['onRobotFriendListChanged'](..._0x59bf7e){}[_0x49d835(0x70)](..._0x2f218c){}[_0x49d835(0x6c)](..._0x454e6d){}}function _0x4448(_0x5cdbae,_0x291bea){var _0xa9c1f9=_0xa9c1();return _0x4448=function(_0x444844,_0x47f211){_0x444844=_0x444844-0x65;var _0x421a11=_0xa9c1f9[_0x444844];return _0x421a11;},_0x4448(_0x5cdbae,_0x291bea);}function _0xa9c1(){var _0x199ed0=['12MkRDKe','200143diImGs','5313584ajUqSY','2202PwMihz','5751848kYsTuG','3715OdHEAk','onRobotProfileChanged','32992000yFegMp','5454428GBdqCG','9qPZjbR','onRobotListChanged','399318XTbeMT'];_0xa9c1=function(){return _0x199ed0;};return _0xa9c1();}
|
@@ -1 +1 @@
|
||||
function _0x1581(){var _0x502204=['16907WBNzTI','2681820aRdhcF','261379wYSrfL','5288RMEiWK','onOpentelemetryInit','6SitAXy','118870SGegLT','68412HwEmtk','7672DNFpNm','4044wttMJH','531eJgyTj','onNTSessionCreate','641568YkvRtt','5hZPtft','onGetSelfTinyId','onSessionInitComplete'];_0x1581=function(){return _0x502204;};return _0x1581();}var _0x303f0f=_0xfa3d;(function(_0x3b4071,_0x2783ba){var _0x4e7263=_0xfa3d,_0x4d966a=_0x3b4071();while(!![]){try{var _0x252bb1=parseInt(_0x4e7263(0x1f6))/0x1*(parseInt(_0x4e7263(0x1f9))/0x2)+-parseInt(_0x4e7263(0x1f0))/0x3+parseInt(_0x4e7263(0x1f5))/0x4+-parseInt(_0x4e7263(0x1f1))/0x5*(-parseInt(_0x4e7263(0x1fb))/0x6)+-parseInt(_0x4e7263(0x1fc))/0x7*(parseInt(_0x4e7263(0x1f7))/0x8)+parseInt(_0x4e7263(0x1ee))/0x9*(parseInt(_0x4e7263(0x1fa))/0xa)+-parseInt(_0x4e7263(0x1f4))/0xb*(parseInt(_0x4e7263(0x1fd))/0xc);if(_0x252bb1===_0x2783ba)break;else _0x4d966a['push'](_0x4d966a['shift']());}catch(_0x5700b8){_0x4d966a['push'](_0x4d966a['shift']());}}}(_0x1581,0xad986));function _0xfa3d(_0x891735,_0x5545d0){var _0x1581b7=_0x1581();return _0xfa3d=function(_0xfa3d2c,_0x376f79){_0xfa3d2c=_0xfa3d2c-0x1ee;var _0x17db1d=_0x1581b7[_0xfa3d2c];return _0x17db1d;},_0xfa3d(_0x891735,_0x5545d0);}export class SessionListener{[_0x303f0f(0x1ef)](_0x10710e){}['onGProSessionCreate'](_0x1b9e23){}[_0x303f0f(0x1f3)](_0x36a4cb){}[_0x303f0f(0x1f8)](_0x2a372c){}['onUserOnlineResult'](_0x29e8b3){}[_0x303f0f(0x1f2)](_0x1ab63d){}}
|
||||
function _0x137f(){var _0x5b5ac1=['onGProSessionCreate','16432196uBNnST','onGetSelfTinyId','526083jbVirj','onSessionInitComplete','29300apFeTq','onOpentelemetryInit','35DfXEFj','153lxykfk','3hdoxNU','1512360pbfAch','onNTSessionCreate','1062602KnMDAr','627930OlCDtd','6mFAnvE','998376Dopkgw'];_0x137f=function(){return _0x5b5ac1;};return _0x137f();}function _0x1dec(_0xbc24ba,_0x580a2e){var _0x137fcb=_0x137f();return _0x1dec=function(_0x1decc4,_0x3e3a43){_0x1decc4=_0x1decc4-0xb8;var _0x4250a7=_0x137fcb[_0x1decc4];return _0x4250a7;},_0x1dec(_0xbc24ba,_0x580a2e);}var _0x57fa79=_0x1dec;(function(_0x274a00,_0x4108e1){var _0x375dae=_0x1dec,_0x28c3f2=_0x274a00();while(!![]){try{var _0x15ef38=parseInt(_0x375dae(0xc2))/0x1+parseInt(_0x375dae(0xbb))/0x2*(-parseInt(_0x375dae(0xb8))/0x3)+-parseInt(_0x375dae(0xb9))/0x4+-parseInt(_0x375dae(0xbc))/0x5*(parseInt(_0x375dae(0xbd))/0x6)+-parseInt(_0x375dae(0xc6))/0x7*(parseInt(_0x375dae(0xbe))/0x8)+-parseInt(_0x375dae(0xc7))/0x9*(-parseInt(_0x375dae(0xc4))/0xa)+parseInt(_0x375dae(0xc0))/0xb;if(_0x15ef38===_0x4108e1)break;else _0x28c3f2['push'](_0x28c3f2['shift']());}catch(_0x283e4f){_0x28c3f2['push'](_0x28c3f2['shift']());}}}(_0x137f,0x6448f));export class SessionListener{[_0x57fa79(0xba)](_0x396558){}[_0x57fa79(0xbf)](_0x5d314d){}[_0x57fa79(0xc3)](_0x41451a){}[_0x57fa79(0xc5)](_0x1dc25c){}['onUserOnlineResult'](_0x5bbbfa){}[_0x57fa79(0xc1)](_0x269641){}}
|
@@ -1 +1 @@
|
||||
function _0x24f2(_0x702870,_0x57acff){var _0x52a4e8=_0x52a4();return _0x24f2=function(_0x24f235,_0x196a4e){_0x24f235=_0x24f235-0x19d;var _0x5279bc=_0x52a4e8[_0x24f235];return _0x5279bc;},_0x24f2(_0x702870,_0x57acff);}var _0x35286=_0x24f2;function _0x52a4(){var _0x1bd4e5=['830024nOZFzJ','onCleanCacheStorageChanged','643917faBsCI','823536TEPCBf','onFinishScan','5818455WFdaTH','2YZbvTD','73738fWYuBu','6RbYYtp','onCleanCacheProgressChanged','213552nXkUWJ','onChatCleanDone','1252645NyAPkn'];_0x52a4=function(){return _0x1bd4e5;};return _0x52a4();}(function(_0x9d5bfb,_0x176a63){var _0x318114=_0x24f2,_0x212d4=_0x9d5bfb();while(!![]){try{var _0x5c06ac=parseInt(_0x318114(0x1a1))/0x1+parseInt(_0x318114(0x19d))/0x2*(parseInt(_0x318114(0x1a6))/0x3)+parseInt(_0x318114(0x1a4))/0x4+-parseInt(_0x318114(0x1a3))/0x5*(-parseInt(_0x318114(0x19f))/0x6)+-parseInt(_0x318114(0x19e))/0x7+-parseInt(_0x318114(0x1a7))/0x8+-parseInt(_0x318114(0x1a9))/0x9;if(_0x5c06ac===_0x176a63)break;else _0x212d4['push'](_0x212d4['shift']());}catch(_0x2bb44f){_0x212d4['push'](_0x212d4['shift']());}}}(_0x52a4,0x1ed2f));export class StorageCleanListener{[_0x35286(0x1a0)](_0x541394){}['onScanCacheProgressChanged'](_0x39839f){}[_0x35286(0x1a5)](_0x5de85b){}[_0x35286(0x1a8)](_0xe08fb8){}[_0x35286(0x1a2)](_0x5a2a1a){}}
|
||||
var _0x43d177=_0x4364;(function(_0x466b15,_0x1c300e){var _0xd5d638=_0x4364,_0x1770dc=_0x466b15();while(!![]){try{var _0x1ac55a=-parseInt(_0xd5d638(0xec))/0x1*(-parseInt(_0xd5d638(0xf0))/0x2)+parseInt(_0xd5d638(0xeb))/0x3*(-parseInt(_0xd5d638(0xef))/0x4)+-parseInt(_0xd5d638(0xea))/0x5*(parseInt(_0xd5d638(0xf1))/0x6)+-parseInt(_0xd5d638(0xe9))/0x7*(parseInt(_0xd5d638(0xf2))/0x8)+-parseInt(_0xd5d638(0xe7))/0x9*(-parseInt(_0xd5d638(0xee))/0xa)+parseInt(_0xd5d638(0xe6))/0xb*(-parseInt(_0xd5d638(0xed))/0xc)+parseInt(_0xd5d638(0xe5))/0xd*(parseInt(_0xd5d638(0xe3))/0xe);if(_0x1ac55a===_0x1c300e)break;else _0x1770dc['push'](_0x1770dc['shift']());}catch(_0x497d5f){_0x1770dc['push'](_0x1770dc['shift']());}}}(_0x1d79,0x32bb2));function _0x4364(_0x2c7c68,_0x274ecf){var _0x1d79c5=_0x1d79();return _0x4364=function(_0x4364a0,_0x4c3c10){_0x4364a0=_0x4364a0-0xe2;var _0x118370=_0x1d79c5[_0x4364a0];return _0x118370;},_0x4364(_0x2c7c68,_0x274ecf);}function _0x1d79(){var _0x33aa80=['onScanCacheProgressChanged','25064uIIAZG','11qxTSxE','2718DrPcZE','onFinishScan','10073tZByaD','18500PuqmDn','1143642UyLdXX','141974DKyYUe','4519344hnFYVE','3010qbVoLc','4pRPJYb','2psJRYB','6ktsnbT','2144IjbEkA','onCleanCacheStorageChanged','8148UwQXzV'];_0x1d79=function(){return _0x33aa80;};return _0x1d79();}export class StorageCleanListener{['onCleanCacheProgressChanged'](_0x59479e){}[_0x43d177(0xe4)](_0x15a624){}[_0x43d177(0xe2)](_0x3aeee6){}[_0x43d177(0xe8)](_0x411fed){}['onChatCleanDone'](_0x581957){}}
|
@@ -1 +1 @@
|
||||
function _0x3690(){var _0x3f0de5=['85567DrGMJW','7RcSWaV','6NLncDf','6581648eDENok','2187396pJwUlD','2217774gYLFgy','8958786YJymxZ','7069149vKOxyP','15951270oSxdLO','15VLoweP'];_0x3690=function(){return _0x3f0de5;};return _0x3690();}(function(_0x2fbe7c,_0x5afd5d){var _0x4c6dd9=_0x41f9,_0x391810=_0x2fbe7c();while(!![]){try{var _0x4a6cff=parseInt(_0x4c6dd9(0x84))/0x1*(parseInt(_0x4c6dd9(0x86))/0x2)+parseInt(_0x4c6dd9(0x89))/0x3+-parseInt(_0x4c6dd9(0x88))/0x4*(parseInt(_0x4c6dd9(0x8d))/0x5)+-parseInt(_0x4c6dd9(0x8a))/0x6*(-parseInt(_0x4c6dd9(0x85))/0x7)+parseInt(_0x4c6dd9(0x87))/0x8+parseInt(_0x4c6dd9(0x8b))/0x9+-parseInt(_0x4c6dd9(0x8c))/0xa;if(_0x4a6cff===_0x5afd5d)break;else _0x391810['push'](_0x391810['shift']());}catch(_0x318643){_0x391810['push'](_0x391810['shift']());}}}(_0x3690,0xd258f));export*from'./NodeIKernelSessionListener';export*from'./NodeIKernelLoginListener';export*from'./NodeIKernelMsgListener';export*from'./NodeIKernelGroupListener';function _0x41f9(_0x3d44bf,_0x5b06b0){var _0x369020=_0x3690();return _0x41f9=function(_0x41f926,_0x22aecd){_0x41f926=_0x41f926-0x84;var _0x4750db=_0x369020[_0x41f926];return _0x4750db;},_0x41f9(_0x3d44bf,_0x5b06b0);}export*from'./NodeIKernelBuddyListener';export*from'./NodeIKernelProfileListener';export*from'./NodeIKernelRobotListener';export*from'./NodeIKernelTicketListener';export*from'./NodeIKernelStorageCleanListener';export*from'./NodeIKernelFileAssistantListener';
|
||||
(function(_0x2ba300,_0x427578){var _0x33688d=_0x3a84,_0x39efff=_0x2ba300();while(!![]){try{var _0x18c74a=parseInt(_0x33688d(0x71))/0x1+-parseInt(_0x33688d(0x79))/0x2*(-parseInt(_0x33688d(0x72))/0x3)+-parseInt(_0x33688d(0x74))/0x4*(parseInt(_0x33688d(0x73))/0x5)+-parseInt(_0x33688d(0x76))/0x6+-parseInt(_0x33688d(0x78))/0x7+parseInt(_0x33688d(0x70))/0x8+-parseInt(_0x33688d(0x77))/0x9*(-parseInt(_0x33688d(0x75))/0xa);if(_0x18c74a===_0x427578)break;else _0x39efff['push'](_0x39efff['shift']());}catch(_0x3e274c){_0x39efff['push'](_0x39efff['shift']());}}}(_0x4ebe,0x8bcf7));export*from'./NodeIKernelSessionListener';export*from'./NodeIKernelLoginListener';export*from'./NodeIKernelMsgListener';export*from'./NodeIKernelGroupListener';function _0x4ebe(){var _0x1612c7=['75084PlLwej','60EEVTXt','318385zACTdk','68PCNpHn','30GgnUwU','5270880ywNynv','5780547HUnfDC','5441947UbocTZ','77108HzoJuO','4304480NJLlTY'];_0x4ebe=function(){return _0x1612c7;};return _0x4ebe();}export*from'./NodeIKernelBuddyListener';export*from'./NodeIKernelProfileListener';function _0x3a84(_0x5f05f7,_0x7bd4e1){var _0x4ebeaa=_0x4ebe();return _0x3a84=function(_0x3a84f9,_0x287253){_0x3a84f9=_0x3a84f9-0x70;var _0x4ea912=_0x4ebeaa[_0x3a84f9];return _0x4ea912;},_0x3a84(_0x5f05f7,_0x7bd4e1);}export*from'./NodeIKernelRobotListener';export*from'./NodeIKernelTicketListener';export*from'./NodeIKernelStorageCleanListener';export*from'./NodeIKernelFileAssistantListener';
|
4
src/core.lib/src/services/NodeIKernelNodeMiscService.d.ts
vendored
Normal file
4
src/core.lib/src/services/NodeIKernelNodeMiscService.d.ts
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import { GeneralCallResult } from "./common";
|
||||
export interface NodeIKernelNodeMiscService {
|
||||
wantWinScreenOCR(imagepath: string): Promise<GeneralCallResult>;
|
||||
}
|
1
src/core.lib/src/services/NodeIKernelNodeMiscService.js
Normal file
1
src/core.lib/src/services/NodeIKernelNodeMiscService.js
Normal file
@@ -0,0 +1 @@
|
||||
export{};
|
@@ -1,3 +1,4 @@
|
||||
import { ModifyProfileParams } from '../entities';
|
||||
import { NodeIKernelProfileListener } from '../listeners';
|
||||
import { GeneralCallResult } from '@/core/services/common';
|
||||
export interface NodeIKernelProfileService {
|
||||
@@ -10,7 +11,7 @@ export interface NodeIKernelProfileService {
|
||||
enumCityOptions(...args: unknown[]): unknown;
|
||||
enumAreaOptions(...args: unknown[]): unknown;
|
||||
modifySelfProfile(...args: unknown[]): unknown;
|
||||
modifyDesktopMiniProfile(...args: unknown[]): unknown;
|
||||
modifyDesktopMiniProfile(param: ModifyProfileParams): Promise<GeneralCallResult>;
|
||||
setNickName(...args: unknown[]): unknown;
|
||||
setLongNick(...args: unknown[]): unknown;
|
||||
setBirthday(...args: unknown[]): unknown;
|
||||
|
@@ -1,14 +1,29 @@
|
||||
import { GetFileListParam } from "../entities";
|
||||
import { GeneralCallResult } from "./common";
|
||||
export interface NodeIKernelRichMediaService {
|
||||
getVideoPlayUrl(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown, arg5: unknown): unknown;
|
||||
getVideoPlayUrlV2(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown, arg5: unknown): unknown;
|
||||
getRichMediaFileDir(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
|
||||
getVideoPlayUrlInVisit(arg: unknown): unknown;
|
||||
isFileExpired(arg: unknown): unknown;
|
||||
deleteGroupFolder(GroupCode: string, FolderId: string): Promise<GeneralCallResult & {
|
||||
groupFileCommonResult: {
|
||||
retCode: number;
|
||||
retMsg: string;
|
||||
clientWording: string;
|
||||
};
|
||||
}>;
|
||||
downloadRichMediaInVisit(arg: unknown): unknown;
|
||||
downloadFileForModelId(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
|
||||
downloadFileForFileUuid(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
|
||||
downloadFileByUrlListtransgroupfile(arg1: unknown, arg2: unknown): unknown;
|
||||
downloadFileForFileInfotransgroupfile(arg1: unknown, arg2: unknown): unknown;
|
||||
createGroupFolder(GroupCode: string, FolderName: string): Promise<GeneralCallResult & {
|
||||
resultWithGroupItem: {
|
||||
result: any;
|
||||
groupItem: Array<any>;
|
||||
};
|
||||
}>;
|
||||
downloadFile(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown): unknown;
|
||||
createGroupFoldertransgroupfile(arg1: unknown, arg2: unknown): unknown;
|
||||
downloadGroupFolder(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
|
||||
@@ -19,6 +34,16 @@ export interface NodeIKernelRichMediaService {
|
||||
cancelUrlDownload(arg: unknown): unknown;
|
||||
updateOnlineVideoElemStatus(arg: unknown): unknown;
|
||||
getGroupSpace(arg: unknown): unknown;
|
||||
getGroupFileList(groupCode: string, params: GetFileListParam): Promise<GeneralCallResult & {
|
||||
groupSpaceResult: {
|
||||
retCode: number;
|
||||
retMsg: string;
|
||||
clientWording: string;
|
||||
totalSpace: number;
|
||||
usedSpace: number;
|
||||
allUpload: boolean;
|
||||
};
|
||||
}>;
|
||||
getGroupFileInfotransgroupfile(arg1: unknown, arg2: unknown): unknown;
|
||||
getGroupFileListtransgroupfile(arg1: unknown, arg2: unknown): unknown;
|
||||
getGroupTransferListtransgroupfile(arg1: unknown, arg2: unknown): unknown;
|
||||
@@ -26,10 +51,21 @@ export interface NodeIKernelRichMediaService {
|
||||
moveGroupFile(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown, arg5: unknown): unknown;
|
||||
transGroupFile(arg1: unknown, arg2: unknown): unknown;
|
||||
searchGroupFileByWord(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown, arg5: unknown): unknown;
|
||||
deleteGroupFile(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
|
||||
deleteGroupFile(GroupCode: string, params: Array<number>, Files: Array<string>): Promise<GeneralCallResult & {
|
||||
transGroupFileResult: {
|
||||
result: any;
|
||||
successFileIdList: Array<any>;
|
||||
failFileIdList: Array<any>;
|
||||
};
|
||||
}>;
|
||||
translateEnWordToZn(words: string[]): Promise<GeneralCallResult & {
|
||||
words: string[];
|
||||
}>;
|
||||
getScreenOCR(arg: unknown): unknown;
|
||||
translateEnWordToZn(arg: unknown): unknown;
|
||||
batchGetGroupFileCount(arg: unknown): unknown;
|
||||
batchGetGroupFileCount(Gids: Array<string>): Promise<GeneralCallResult & {
|
||||
groupCodes: Array<string>;
|
||||
groupFileCounts: Array<number>;
|
||||
}>;
|
||||
queryPicDownloadSize(arg: unknown): unknown;
|
||||
searchGroupFiletransgroupfile(arg1: unknown, arg2: unknown): unknown;
|
||||
searchMoreGroupFile(arg: unknown): unknown;
|
||||
|
@@ -1 +1 @@
|
||||
function _0xf517(){var _0x1f86dc=['4147048iWpwTG','21IJkgpu','85CglRAi','38664JUqYcF','422750EpkmWR','15482400MpNEok','43474JvAUXd','4082519ybIzHm','322324UhpJvf','121pbXlnh','26sDXBFG','9qIENKM'];_0xf517=function(){return _0x1f86dc;};return _0xf517();}(function(_0x1b28f1,_0x15cef3){var _0x18c2a3=_0x6712,_0x3e2bae=_0x1b28f1();while(!![]){try{var _0x54183c=parseInt(_0x18c2a3(0xe1))/0x1*(parseInt(_0x18c2a3(0xd9))/0x2)+-parseInt(_0x18c2a3(0xdc))/0x3*(-parseInt(_0x18c2a3(0xe3))/0x4)+-parseInt(_0x18c2a3(0xdd))/0x5*(-parseInt(_0x18c2a3(0xde))/0x6)+-parseInt(_0x18c2a3(0xe2))/0x7+-parseInt(_0x18c2a3(0xdb))/0x8*(-parseInt(_0x18c2a3(0xda))/0x9)+-parseInt(_0x18c2a3(0xdf))/0xa*(-parseInt(_0x18c2a3(0xd8))/0xb)+-parseInt(_0x18c2a3(0xe0))/0xc;if(_0x54183c===_0x15cef3)break;else _0x3e2bae['push'](_0x3e2bae['shift']());}catch(_0x1b8a55){_0x3e2bae['push'](_0x3e2bae['shift']());}}}(_0xf517,0x5525e));function _0x6712(_0x151903,_0x414ea8){var _0xf51726=_0xf517();return _0x6712=function(_0x67127b,_0x566e84){_0x67127b=_0x67127b-0xd8;var _0x3c52eb=_0xf51726[_0x67127b];return _0x3c52eb;},_0x6712(_0x151903,_0x414ea8);}export var GeneralCallResultStatus;(function(_0x175de5){_0x175de5[_0x175de5['OK']=0x0]='OK';}(GeneralCallResultStatus||(GeneralCallResultStatus={})));
|
||||
(function(_0x4157e3,_0x41167f){var _0x4e8c07=_0x1027,_0x528f86=_0x4157e3();while(!![]){try{var _0x3f13f5=-parseInt(_0x4e8c07(0x19f))/0x1*(-parseInt(_0x4e8c07(0x199))/0x2)+-parseInt(_0x4e8c07(0x1a0))/0x3*(-parseInt(_0x4e8c07(0x1a1))/0x4)+parseInt(_0x4e8c07(0x19e))/0x5*(parseInt(_0x4e8c07(0x198))/0x6)+parseInt(_0x4e8c07(0x1a2))/0x7*(parseInt(_0x4e8c07(0x19a))/0x8)+-parseInt(_0x4e8c07(0x19b))/0x9+-parseInt(_0x4e8c07(0x19d))/0xa+-parseInt(_0x4e8c07(0x19c))/0xb;if(_0x3f13f5===_0x41167f)break;else _0x528f86['push'](_0x528f86['shift']());}catch(_0x28ac16){_0x528f86['push'](_0x528f86['shift']());}}}(_0x11c6,0x2a72d));function _0x1027(_0x4e18df,_0x1b3676){var _0x11c6eb=_0x11c6();return _0x1027=function(_0x1027fc,_0x592a4f){_0x1027fc=_0x1027fc-0x198;var _0x26cffd=_0x11c6eb[_0x1027fc];return _0x26cffd;},_0x1027(_0x4e18df,_0x1b3676);}function _0x11c6(){var _0x574fd7=['5ShHhHJ','1RXrdrm','3IBWkKr','699076jJGUBV','33705Kmwwpv','1875702PswfNs','75562jOwoIo','144xmgjGe','1672677ffgShd','757493BXKeWB','1832520etQyiv'];_0x11c6=function(){return _0x574fd7;};return _0x11c6();}export var GeneralCallResultStatus;(function(_0x16034c){_0x16034c[_0x16034c['OK']=0x0]='OK';}(GeneralCallResultStatus||(GeneralCallResultStatus={})));
|
@@ -1 +1 @@
|
||||
function _0x1dcb(){var _0x1d8381=['3704288wPFFtr','3960754ZyIQrm','1455549efQpAy','5xbdgkS','1793876VKjCCQ','3600564NGoHxc','12431835zvWwWW','17OfuROs','70322jsaSZI'];_0x1dcb=function(){return _0x1d8381;};return _0x1dcb();}(function(_0x51fff0,_0x468f11){var _0x7b781e=_0x306f,_0xef846e=_0x51fff0();while(!![]){try{var _0x440cbd=parseInt(_0x7b781e(0x11a))/0x1*(-parseInt(_0x7b781e(0x11b))/0x2)+parseInt(_0x7b781e(0x11e))/0x3+parseInt(_0x7b781e(0x120))/0x4*(-parseInt(_0x7b781e(0x11f))/0x5)+-parseInt(_0x7b781e(0x121))/0x6+parseInt(_0x7b781e(0x11d))/0x7+-parseInt(_0x7b781e(0x11c))/0x8+parseInt(_0x7b781e(0x119))/0x9;if(_0x440cbd===_0x468f11)break;else _0xef846e['push'](_0xef846e['shift']());}catch(_0x449faf){_0xef846e['push'](_0xef846e['shift']());}}}(_0x1dcb,0x4eda8));export*from'./common';export*from'./NodeIKernelAvatarService';export*from'./NodeIKernelBuddyService';export*from'./NodeIKernelFileAssistantService';function _0x306f(_0x3908c5,_0x3ba7fd){var _0x1dcb8b=_0x1dcb();return _0x306f=function(_0x306ffe,_0x59318a){_0x306ffe=_0x306ffe-0x119;var _0x5dffd7=_0x1dcb8b[_0x306ffe];return _0x5dffd7;},_0x306f(_0x3908c5,_0x3ba7fd);}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(_0x20c945,_0x5a14f3){var _0x42f636=_0x20e2,_0x2f6dba=_0x20c945();while(!![]){try{var _0x3a15b6=-parseInt(_0x42f636(0x8f))/0x1+-parseInt(_0x42f636(0x88))/0x2+-parseInt(_0x42f636(0x8e))/0x3*(parseInt(_0x42f636(0x87))/0x4)+-parseInt(_0x42f636(0x8a))/0x5*(-parseInt(_0x42f636(0x8c))/0x6)+parseInt(_0x42f636(0x90))/0x7+parseInt(_0x42f636(0x89))/0x8+parseInt(_0x42f636(0x8d))/0x9*(-parseInt(_0x42f636(0x8b))/0xa);if(_0x3a15b6===_0x5a14f3)break;else _0x2f6dba['push'](_0x2f6dba['shift']());}catch(_0x5ee0dc){_0x2f6dba['push'](_0x2f6dba['shift']());}}}(_0x2552,0x1d296));function _0x20e2(_0x4410bd,_0x1424b5){var _0x2552ae=_0x2552();return _0x20e2=function(_0x20e215,_0x5e1873){_0x20e215=_0x20e215-0x87;var _0x2d0223=_0x2552ae[_0x20e215];return _0x2d0223;},_0x20e2(_0x4410bd,_0x1424b5);}export*from'./common';export*from'./NodeIKernelAvatarService';export*from'./NodeIKernelBuddyService';export*from'./NodeIKernelFileAssistantService';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';function _0x2552(){var _0x40cefa=['25490WnhMln','1404008fKTHOD','44110mDGtLU','194960pFTmbh','102votVzM','63zbbSGL','6MgfCiY','898sNqyXg','108766cckkHc','142904dRScKF'];_0x2552=function(){return _0x40cefa;};return _0x2552();}export*from'./NodeIKernelTipOffService';
|
2
src/core.lib/src/sessionConfig.d.ts
vendored
2
src/core.lib/src/sessionConfig.d.ts
vendored
@@ -43,4 +43,4 @@ export interface WrapperSessionInitConfig {
|
||||
'deviceConfig': '{"appearance":{"isSplitViewMode":true},"msg":{}}';
|
||||
}
|
||||
export declare const sessionConfig: WrapperSessionInitConfig | any;
|
||||
export declare function genSessionConfig(selfUin: string, selfUid: string, account_path: string): WrapperSessionInitConfig;
|
||||
export declare function genSessionConfig(selfUin: string, selfUid: string, account_path: string): Promise<WrapperSessionInitConfig>;
|
||||
|
@@ -1 +1 @@
|
||||
(function(_0x116e78,_0x1cbd80){const _0x31ca22=_0x3cdc,_0x3f273d=_0x116e78();while(!![]){try{const _0x174370=-parseInt(_0x31ca22(0x7b))/0x1*(-parseInt(_0x31ca22(0x75))/0x2)+-parseInt(_0x31ca22(0x83))/0x3+parseInt(_0x31ca22(0x82))/0x4*(parseInt(_0x31ca22(0x70))/0x5)+-parseInt(_0x31ca22(0x81))/0x6*(parseInt(_0x31ca22(0x6c))/0x7)+-parseInt(_0x31ca22(0x6e))/0x8*(parseInt(_0x31ca22(0x7f))/0x9)+-parseInt(_0x31ca22(0x77))/0xa*(parseInt(_0x31ca22(0x6a))/0xb)+parseInt(_0x31ca22(0x76))/0xc*(parseInt(_0x31ca22(0x7c))/0xd);if(_0x174370===_0x1cbd80)break;else _0x3f273d['push'](_0x3f273d['shift']());}catch(_0x7376ac){_0x3f273d['push'](_0x3f273d['shift']());}}}(_0x442e,0x95b2f));import{appid,qqPkgInfo,qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';function _0x3cdc(_0x115e00,_0x21cc7e){const _0x442ea0=_0x442e();return _0x3cdc=function(_0x3cdc4c,_0x3aeeeb){_0x3cdc4c=_0x3cdc4c-0x6a;let _0x3f90e4=_0x442ea0[_0x3cdc4c];return _0x3f90e4;},_0x3cdc(_0x115e00,_0x21cc7e);}import{hostname,systemName,systemVersion}from'@/common/utils/system';import _0x39869c from'node:path';import _0x2e7a98 from'node:fs';import{randomUUID}from'crypto';export const sessionConfig={};export function genSessionConfig(_0x4b73cf,_0x164873,_0xaacc8){const _0x2249df=_0x3cdc,_0x4b8b69={'QYkof':_0x2249df(0x7a),'ytccf':_0x2249df(0x80),'uJWOp':'guid.txt','tmvRo':function(_0x1f7572){return _0x1f7572();},'uSScc':_0x2249df(0x7d)},_0x3d2736=_0x39869c[_0x2249df(0x6f)](_0xaacc8,_0x4b8b69['QYkof'],_0x4b8b69[_0x2249df(0x78)]);_0x2e7a98[_0x2249df(0x72)](_0x3d2736,{'recursive':!![]});const _0x40fab0=_0x39869c[_0x2249df(0x6f)](_0xaacc8,_0x4b8b69['QYkof'],_0x4b8b69[_0x2249df(0x6b)]);let _0x35b592=_0x4b8b69['tmvRo'](randomUUID);try{_0x35b592=_0x2e7a98['readFileSync'](_0x39869c[_0x2249df(0x6f)](_0x40fab0),_0x4b8b69[_0x2249df(0x6d)]);}catch(_0x2f74bf){_0x2e7a98[_0x2249df(0x79)](_0x39869c[_0x2249df(0x6f)](_0x40fab0),_0x35b592,_0x2249df(0x7d));}const _0x2b1e56={'selfUin':_0x4b73cf,'selfUid':_0x164873,'desktopPathConfig':{'account_path':_0xaacc8},'clientVer':qqVersionConfigInfo[_0x2249df(0x71)],'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':_0x3d2736,'deviceInfo':{'guid':_0x35b592,'buildVer':qqPkgInfo[_0x2249df(0x7e)],'localId':0x804,'devName':hostname,'devType':systemName,'vendorName':'','osVer':systemVersion,'vendorOsName':systemName,'setMute':![],'vendorType':0x0},'deviceConfig':_0x2249df(0x74)};return Object[_0x2249df(0x73)](sessionConfig,_0x2b1e56),_0x2b1e56;}function _0x442e(){const _0x11fcc2=['1032RqMqmQ','20UIoutd','ytccf','writeFileSync','NapCat','1lbNQdl','272103KjYwDL','utf-8','version','3078909qjUGdV','temp','68130empPtP','49688XsnUIP','1219173vKLMEC','5995627ZPDDzH','uJWOp','42hxXcOy','uSScc','16zjCrQz','join','140pxDQLs','curVersion','mkdirSync','assign','{\x22appearance\x22:{\x22isSplitViewMode\x22:true},\x22msg\x22:{}}','1428244rxpbrE'];_0x442e=function(){return _0x11fcc2;};return _0x442e();}
|
||||
function _0x3c95(){const _0x254916=['4190sDaOul','2VbLKqL','816299wdGKQT','1619696oBAILL','36azYope','temp','58915GMbipC','60719cOYVbO','{\x22appearance\x22:{\x22isSplitViewMode\x22:true},\x22msg\x22:{}}','7bkSMET','3249vjoiBE','assign','mkdirSync','curVersion','396027rRSkrv','1127910KgftgE'];_0x3c95=function(){return _0x254916;};return _0x3c95();}(function(_0x497a00,_0x3e3806){const _0x2c25af=_0x2eb9,_0x3560c5=_0x497a00();while(!![]){try{const _0xd7d0df=parseInt(_0x2c25af(0x7e))/0x1+-parseInt(_0x2c25af(0x88))/0x2*(-parseInt(_0x2c25af(0x85))/0x3)+-parseInt(_0x2c25af(0x7b))/0x4*(-parseInt(_0x2c25af(0x7d))/0x5)+-parseInt(_0x2c25af(0x86))/0x6+parseInt(_0x2c25af(0x80))/0x7*(-parseInt(_0x2c25af(0x8a))/0x8)+-parseInt(_0x2c25af(0x81))/0x9*(-parseInt(_0x2c25af(0x87))/0xa)+parseInt(_0x2c25af(0x89))/0xb;if(_0xd7d0df===_0x3e3806)break;else _0x3560c5['push'](_0x3560c5['shift']());}catch(_0x2653dd){_0x3560c5['push'](_0x3560c5['shift']());}}}(_0x3c95,0x20aa4));function _0x2eb9(_0x1c8901,_0x35a88f){const _0x3c9570=_0x3c95();return _0x2eb9=function(_0x2eb9c2,_0x32ecff){_0x2eb9c2=_0x2eb9c2-0x7b;let _0x32ed60=_0x3c9570[_0x2eb9c2];return _0x32ed60;},_0x2eb9(_0x1c8901,_0x35a88f);}import{appid,qqPkgInfo,qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';import{hostname,systemName,systemVersion}from'@/common/utils/system';import _0x51a0c1 from'node:path';import _0x282f5e from'node:fs';import{getMachineId}from'@/common/utils/system';export const sessionConfig={};export async function genSessionConfig(_0x33acc4,_0x486ff0,_0x4372a9){const _0xda5dce=_0x2eb9,_0x21c9af=_0x51a0c1['join'](_0x4372a9,'NapCat',_0xda5dce(0x7c));_0x282f5e[_0xda5dce(0x83)](_0x21c9af,{'recursive':!![]});let _0x3f2155=await getMachineId();const _0x49fc79={'selfUin':_0x33acc4,'selfUid':_0x486ff0,'desktopPathConfig':{'account_path':_0x4372a9},'clientVer':qqVersionConfigInfo[_0xda5dce(0x84)],'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':_0x21c9af,'deviceInfo':{'guid':_0x3f2155,'buildVer':qqPkgInfo['version'],'localId':0x804,'devName':hostname,'devType':systemName,'vendorName':'','osVer':systemVersion,'vendorOsName':systemName,'setMute':![],'vendorType':0x0},'deviceConfig':_0xda5dce(0x7f)};return Object[_0xda5dce(0x82)](sessionConfig,_0x49fc79),_0x49fc79;}
|
@@ -1 +1 @@
|
||||
const _0x58a7cf=_0x208a;(function(_0x5ab679,_0x7f5bb6){const _0x50356a=_0x208a,_0x2c4fca=_0x5ab679();while(!![]){try{const _0x10f9fa=parseInt(_0x50356a(0xe9))/0x1*(-parseInt(_0x50356a(0xec))/0x2)+-parseInt(_0x50356a(0xf1))/0x3*(parseInt(_0x50356a(0xe7))/0x4)+parseInt(_0x50356a(0xf3))/0x5+parseInt(_0x50356a(0xf7))/0x6*(parseInt(_0x50356a(0xe6))/0x7)+-parseInt(_0x50356a(0xf5))/0x8*(parseInt(_0x50356a(0xea))/0x9)+-parseInt(_0x50356a(0xfa))/0xa+-parseInt(_0x50356a(0xee))/0xb*(-parseInt(_0x50356a(0xed))/0xc);if(_0x10f9fa===_0x7f5bb6)break;else _0x2c4fca['push'](_0x2c4fca['shift']());}catch(_0x264a27){_0x2c4fca['push'](_0x2c4fca['shift']());}}}(_0x537b,0x74783));import _0x2aea36 from'node:path';import{LogLevel}from'@/common/utils/log';function _0x208a(_0x1d7ae0,_0x5086d0){const _0x537bed=_0x537b();return _0x208a=function(_0x208aac,_0x4c7424){_0x208aac=_0x208aac-0xe6;let _0x7ff384=_0x537bed[_0x208aac];return _0x7ff384;},_0x208a(_0x1d7ae0,_0x5086d0);}function _0x537b(){const _0x345389=['consoleLog','10704qzsRwZ','getConfigDir','431022dNZgtc','join','DEBUG','2544820LerJsQ','uin','91cqxoGy','36yTcCzd','fileLog','2PwQwZd','3600WMKzlv','consoleLogLevel','34354qvMbea','12InQEse','4927945HJGrAZ','fileLogLevel','napcat_','294030sxbhpc','INFO','4006545xUsqgf'];_0x537b=function(){return _0x345389;};return _0x537b();}import{ConfigBase}from'@/common/utils/ConfigBase';import{selfInfo}from'@/core/data';class Config extends ConfigBase{[_0x58a7cf(0xe8)]=!![];[_0x58a7cf(0xf4)]=!![];[_0x58a7cf(0xef)]=LogLevel[_0x58a7cf(0xf9)];[_0x58a7cf(0xeb)]=LogLevel[_0x58a7cf(0xf2)];constructor(){super();}['getConfigPath'](){const _0x592eaf=_0x58a7cf;return _0x2aea36[_0x592eaf(0xf8)](this[_0x592eaf(0xf6)](),_0x592eaf(0xf0)+selfInfo[_0x592eaf(0xfb)]+'.json');}}export const napCatConfig=new Config();
|
||||
const _0x3be28e=_0x13ab;function _0xb6cf(){const _0x259f3c=['getConfigDir','4DcljsI','consoleLogLevel','INFO','getConfigPath','27765jOibfL','6919717NvQaAA','.json','fileLogLevel','12IxpqnJ','uin','37542080jJWjtP','8DhsnKU','join','DEBUG','775476ZNoQyo','897393Aopmwj','827712gJJpzE','consoleLog','6497488OPMuXl'];_0xb6cf=function(){return _0x259f3c;};return _0xb6cf();}(function(_0x27dd42,_0x56095d){const _0x59ada5=_0x13ab,_0x485dcc=_0x27dd42();while(!![]){try{const _0x15e393=-parseInt(_0x59ada5(0xe6))/0x1+-parseInt(_0x59ada5(0xea))/0x2*(-parseInt(_0x59ada5(0xe5))/0x3)+-parseInt(_0x59ada5(0xe8))/0x4+-parseInt(_0x59ada5(0xee))/0x5*(parseInt(_0x59ada5(0xde))/0x6)+-parseInt(_0x59ada5(0xef))/0x7+parseInt(_0x59ada5(0xe1))/0x8*(parseInt(_0x59ada5(0xe4))/0x9)+parseInt(_0x59ada5(0xe0))/0xa;if(_0x15e393===_0x56095d)break;else _0x485dcc['push'](_0x485dcc['shift']());}catch(_0x3f59ca){_0x485dcc['push'](_0x485dcc['shift']());}}}(_0xb6cf,0xf0f21));import _0x3b4ede from'node:path';import{LogLevel}from'@/common/utils/log';import{ConfigBase}from'@/common/utils/ConfigBase';import{selfInfo}from'@/core/data';function _0x13ab(_0x3b23d8,_0x16a9a3){const _0xb6cfce=_0xb6cf();return _0x13ab=function(_0x13abf1,_0x53ac8e){_0x13abf1=_0x13abf1-0xdc;let _0x23b6e2=_0xb6cfce[_0x13abf1];return _0x23b6e2;},_0x13ab(_0x3b23d8,_0x16a9a3);}class Config extends ConfigBase{['fileLog']=!![];[_0x3be28e(0xe7)]=!![];[_0x3be28e(0xdd)]=LogLevel[_0x3be28e(0xe3)];[_0x3be28e(0xeb)]=LogLevel[_0x3be28e(0xec)];constructor(){super();}[_0x3be28e(0xed)](){const _0x4bb628=_0x3be28e;return _0x3b4ede[_0x4bb628(0xe2)](this[_0x4bb628(0xe9)](),'napcat_'+selfInfo[_0x4bb628(0xdf)]+_0x4bb628(0xdc));}}export const napCatConfig=new Config();
|
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
const _0x94d395=_0x2ce3;function _0x2fc2(){const _0x452f5d=['isExpired','HttpGetJson','605144FMoJEZ','lgAuw','getRkey','GET','refreshRkey','9XUAgsh','http://napcat-sign.wumiao.wang:2082/rkey','473972axhgyU','23534xUsOzX','18UqXQsn','5XhUxZo','获取rkey失败','2068500mgTQdt','742091beVrss','112078jSJdIu','serverUrl','2027616VNejBu','rkeyData'];_0x2fc2=function(){return _0x452f5d;};return _0x2fc2();}(function(_0x1d541e,_0x30d1e6){const _0x317e8e=_0x2ce3,_0x51bb80=_0x1d541e();while(!![]){try{const _0x22ee96=-parseInt(_0x317e8e(0x119))/0x1+-parseInt(_0x317e8e(0x11f))/0x2*(parseInt(_0x317e8e(0x116))/0x3)+-parseInt(_0x317e8e(0x118))/0x4*(parseInt(_0x317e8e(0x11b))/0x5)+parseInt(_0x317e8e(0x121))/0x6+-parseInt(_0x317e8e(0x11e))/0x7+parseInt(_0x317e8e(0x125))/0x8*(parseInt(_0x317e8e(0x11a))/0x9)+parseInt(_0x317e8e(0x11d))/0xa;if(_0x22ee96===_0x30d1e6)break;else _0x51bb80['push'](_0x51bb80['shift']());}catch(_0x316da3){_0x51bb80['push'](_0x51bb80['shift']());}}}(_0x2fc2,0x4456b));function _0x2ce3(_0x80bf2f,_0x1aa09a){const _0x2fc269=_0x2fc2();return _0x2ce3=function(_0x2ce3c4,_0x24694e){_0x2ce3c4=_0x2ce3c4-0x112;let _0x193b24=_0x2fc269[_0x2ce3c4];return _0x193b24;},_0x2ce3(_0x80bf2f,_0x1aa09a);}import{logError}from'@/common/utils/log';import{RequestUtil}from'@/common/utils/request';class RkeyManager{[_0x94d395(0x120)]='';['rkeyData']={'group_rkey':'','private_rkey':'','expired_time':0x0};constructor(_0x440f76){const _0x262df6=_0x94d395;this[_0x262df6(0x120)]=_0x440f76;}async[_0x94d395(0x113)](){const _0x3f112a=_0x94d395,_0xf0558a={'pHDoW':function(_0x2125c1,_0x487bc1,_0x35a79a){return _0x2125c1(_0x487bc1,_0x35a79a);}};if(this['isExpired']())try{await this['refreshRkey']();}catch(_0x4e3d72){_0xf0558a['pHDoW'](logError,_0x3f112a(0x11c),_0x4e3d72);}return this[_0x3f112a(0x122)];}[_0x94d395(0x123)](){const _0x48aaa=_0x94d395,_0x306e15={'QMGmP':function(_0x2427e1,_0x502465){return _0x2427e1/_0x502465;},'lgAuw':function(_0xa18351,_0x4b0952){return _0xa18351>_0x4b0952;}},_0x2728eb=_0x306e15['QMGmP'](new Date()['getTime'](),0x3e8);return _0x306e15[_0x48aaa(0x112)](_0x2728eb,this[_0x48aaa(0x122)]['expired_time']);}async[_0x94d395(0x115)](){const _0x1d8a6b=_0x94d395;this[_0x1d8a6b(0x122)]=await RequestUtil[_0x1d8a6b(0x124)](this[_0x1d8a6b(0x120)],_0x1d8a6b(0x114));}}export const rkeyManager=new RkeyManager(_0x94d395(0x117));
|
||||
const _0x3535b6=_0x3a45;(function(_0x140eff,_0x49ea79){const _0x568627=_0x3a45,_0xffff43=_0x140eff();while(!![]){try{const _0x8a63e6=parseInt(_0x568627(0x15e))/0x1+-parseInt(_0x568627(0x15f))/0x2+parseInt(_0x568627(0x15b))/0x3*(parseInt(_0x568627(0x151))/0x4)+-parseInt(_0x568627(0x15c))/0x5+parseInt(_0x568627(0x159))/0x6+-parseInt(_0x568627(0x154))/0x7+parseInt(_0x568627(0x158))/0x8*(parseInt(_0x568627(0x161))/0x9);if(_0x8a63e6===_0x49ea79)break;else _0xffff43['push'](_0xffff43['shift']());}catch(_0x2685cd){_0xffff43['push'](_0xffff43['shift']());}}}(_0x5b9a,0x7481f));import{logError}from'@/common/utils/log';import{RequestUtil}from'@/common/utils/request';class RkeyManager{[_0x3535b6(0x14f)]='';['rkeyData']={'group_rkey':'','private_rkey':'','expired_time':0x0};constructor(_0x469226){this['serverUrl']=_0x469226;}async[_0x3535b6(0x153)](){const _0x34de2d=_0x3535b6;if(this[_0x34de2d(0x162)]())try{await this['refreshRkey']();}catch(_0x48d023){logError(_0x34de2d(0x163),_0x48d023);}return this[_0x34de2d(0x15d)];}[_0x3535b6(0x162)](){const _0x3e201a=_0x3535b6,_0xc5b4f={'euJCb':function(_0x5b091e,_0x16bda2){return _0x5b091e/_0x16bda2;}},_0xa42795=_0xc5b4f[_0x3e201a(0x15a)](new Date()[_0x3e201a(0x155)](),0x3e8);return _0xa42795>this[_0x3e201a(0x15d)][_0x3e201a(0x150)];}async['refreshRkey'](){const _0x10d2d2=_0x3535b6,_0xd82f09={'KaVow':_0x10d2d2(0x152)};this['rkeyData']=await RequestUtil[_0x10d2d2(0x156)](this['serverUrl'],_0xd82f09[_0x10d2d2(0x157)]);}}function _0x3a45(_0x4c9b1b,_0x4fb96d){const _0x5b9a35=_0x5b9a();return _0x3a45=function(_0x3a45e0,_0x26c2a6){_0x3a45e0=_0x3a45e0-0x14f;let _0x1c32fb=_0x5b9a35[_0x3a45e0];return _0x1c32fb;},_0x3a45(_0x4c9b1b,_0x4fb96d);}function _0x5b9a(){const _0x451c5b=['HttpGetJson','KaVow','3186416PdyufW','3075252uqcGPe','euJCb','3TAeRdD','2140910USQmtA','rkeyData','297702kANwVr','1426174RnTLdh','http://napcat-sign.wumiao.wang:2082/rkey','9brDSEe','isExpired','获取rkey失败','serverUrl','expired_time','2304344bTGiMM','GET','getRkey','1163036xWWuUN','getTime'];_0x5b9a=function(){return _0x451c5b;};return _0x5b9a();}export const rkeyManager=new RkeyManager(_0x3535b6(0x160));
|
7
src/core.lib/src/wrapper.d.ts
vendored
7
src/core.lib/src/wrapper.d.ts
vendored
@@ -1,9 +1,10 @@
|
||||
import { WrapperSessionInitConfig } from './sessionConfig';
|
||||
import { NodeIDependsAdapter, NodeIDispatcherAdapter, NodeIGlobalAdapter } from './adapters';
|
||||
import { NodeIKernelSessionListener, NodeIKernelMsgListener, NodeIKernelLoginListener, NodeIKernelBuddyListener, NodeIKernelGroupListener, NodeIKernelProfileListener } from './listeners';
|
||||
import { NodeIKernelLoginService, NodeIKernelMsgService, NodeIKernelBuddyService, NodeIKernelGroupService, NodeIKernelProfileService, NodeIKernelProfileLikeService, NodeIKernelTicketService, NodeIKernelTipOffService } from './services';
|
||||
import { NodeIKernelLoginService, NodeIKernelMsgService, NodeIKernelBuddyService, NodeIKernelGroupService, NodeIKernelProfileService, NodeIKernelProfileLikeService, NodeIKernelTicketService, NodeIKernelTipOffService, NodeIKernelRichMediaService } from './services';
|
||||
import { NodeIKernelStorageCleanService } from './services/NodeIKernelStorageCleanService';
|
||||
import { NodeIKernelRobotService } from './services/NodeIKernelRobotService';
|
||||
import { NodeIKernelNodeMiscService } from './services/NodeIKernelNodeMiscService';
|
||||
export interface NodeQQNTWrapperUtil {
|
||||
new (): NodeQQNTWrapperUtil;
|
||||
getNTUserDataInfoConfig(): string;
|
||||
@@ -68,12 +69,13 @@ export interface NodeIQQNTWrapperSession {
|
||||
getRobotService(): NodeIKernelRobotService;
|
||||
getTicketService(): NodeIKernelTicketService;
|
||||
getTipOffService(): NodeIKernelTipOffService;
|
||||
getNodeMiscService(): NodeIKernelNodeMiscService;
|
||||
getRichMediaService(): NodeIKernelRichMediaService;
|
||||
getMsgBackupService(): unknown;
|
||||
getAlbumService(): unknown;
|
||||
getTianShuService(): unknown;
|
||||
getUnitedConfigService(): unknown;
|
||||
getSearchService(): unknown;
|
||||
getRichMediaService(): unknown;
|
||||
getDirectSessionService(): unknown;
|
||||
getRDeliveryService(): unknown;
|
||||
getAvatarService(): unknown;
|
||||
@@ -97,7 +99,6 @@ export interface NodeIQQNTWrapperSession {
|
||||
getGuildMsgService(): unknown;
|
||||
getLockService(): unknown;
|
||||
getMSFService(): unknown;
|
||||
getNodeMiscService(): unknown;
|
||||
getGuildHotUpdateService(): unknown;
|
||||
getAVSDKService(): unknown;
|
||||
getRecentContactService(): unknown;
|
||||
|
@@ -1 +1 @@
|
||||
const _0x367aad=_0x20d8;(function(_0x2da0e8,_0xedb2c0){const _0x55ba22=_0x20d8,_0x28d6a7=_0x2da0e8();while(!![]){try{const _0x210122=-parseInt(_0x55ba22(0x1fa))/0x1*(parseInt(_0x55ba22(0x201))/0x2)+parseInt(_0x55ba22(0x1f4))/0x3+parseInt(_0x55ba22(0x1f3))/0x4+-parseInt(_0x55ba22(0x209))/0x5+parseInt(_0x55ba22(0x1f9))/0x6*(parseInt(_0x55ba22(0x1f5))/0x7)+parseInt(_0x55ba22(0x1fd))/0x8*(parseInt(_0x55ba22(0x1f7))/0x9)+-parseInt(_0x55ba22(0x20a))/0xa;if(_0x210122===_0xedb2c0)break;else _0x28d6a7['push'](_0x28d6a7['shift']());}catch(_0x2746bd){_0x28d6a7['push'](_0x28d6a7['shift']());}}}(_0x3669,0xc291b));import _0x287006 from'node:path';function _0x3669(){const _0x3bb45f=['./resources/app/wrapper.node','\x0amodule.exports\x20=\x20require(\x22','778564ntAiaR','3071820OPhskT','9352tQIpXR','writeFileSync','27lSmAWj','join','2724JjxLmX','11qaPRWg','execPath','/wrapper.node','3815704BVqxhc','resolve','\x22);\x0aexports\x20=\x20module.exports;\x0a','WrapperLoader.cjs','69592yiueLl','file://','replace','resources/app/versions/','existsSync','default','url','dirname','1342400KysHiz','18078230qgQOUh','curVersion'];_0x3669=function(){return _0x3bb45f;};return _0x3669();}import _0x1b01b0 from'node:fs';function _0x20d8(_0x48c230,_0x329f1d){const _0x3669a5=_0x3669();return _0x20d8=function(_0x20d831,_0x220017){_0x20d831=_0x20d831-0x1f2;let _0xe32ad7=_0x3669a5[_0x20d831];return _0xe32ad7;},_0x20d8(_0x48c230,_0x329f1d);}import{qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';import{dirname}from'node:path';import{fileURLToPath}from'node:url';const __filename=fileURLToPath(import.meta[_0x367aad(0x207)]),__dirname=dirname(__filename);let wrapperNodePath=_0x287006[_0x367aad(0x1fe)](_0x287006[_0x367aad(0x208)](process[_0x367aad(0x1fb)]),_0x367aad(0x20c));!_0x1b01b0[_0x367aad(0x205)](wrapperNodePath)&&(wrapperNodePath=_0x287006[_0x367aad(0x1f8)](_0x287006[_0x367aad(0x208)](process['execPath']),_0x367aad(0x204)+qqVersionConfigInfo[_0x367aad(0x20b)]+_0x367aad(0x1fc)));let WrapperLoader=_0x287006[_0x367aad(0x1f8)](__dirname,_0x367aad(0x200));_0x1b01b0[_0x367aad(0x1f6)](WrapperLoader,_0x367aad(0x1f2)+wrapperNodePath[_0x367aad(0x203)](/\\/g,'\x5c\x5c')+_0x367aad(0x1ff));const QQWrapper=(await import(_0x367aad(0x202)+WrapperLoader))[_0x367aad(0x206)];export default QQWrapper;
|
||||
const _0x3f8f1b=_0xa245;(function(_0x44beee,_0x4e2e73){const _0x44928b=_0xa245,_0x246e05=_0x44beee();while(!![]){try{const _0x4b0081=parseInt(_0x44928b(0xd8))/0x1*(-parseInt(_0x44928b(0xe7))/0x2)+parseInt(_0x44928b(0xdb))/0x3+parseInt(_0x44928b(0xe6))/0x4*(-parseInt(_0x44928b(0xd5))/0x5)+parseInt(_0x44928b(0xe1))/0x6*(-parseInt(_0x44928b(0xda))/0x7)+parseInt(_0x44928b(0xdd))/0x8*(parseInt(_0x44928b(0xe0))/0x9)+-parseInt(_0x44928b(0xde))/0xa*(-parseInt(_0x44928b(0xe5))/0xb)+parseInt(_0x44928b(0xe8))/0xc;if(_0x4b0081===_0x4e2e73)break;else _0x246e05['push'](_0x246e05['shift']());}catch(_0x3bb411){_0x246e05['push'](_0x246e05['shift']());}}}(_0x5d4d,0x9249f));import _0x268d48 from'node:path';function _0xa245(_0x5afdf9,_0x2c7f58){const _0x5d4dfa=_0x5d4d();return _0xa245=function(_0xa245e7,_0x55f5b6){_0xa245e7=_0xa245e7-0xd4;let _0xc0e21d=_0x5d4dfa[_0xa245e7];return _0xc0e21d;},_0xa245(_0x5afdf9,_0x2c7f58);}import _0x5153b1 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);function _0x5d4d(){const _0x23ebec=['4918yeGxML','curVersion','1974MntXeo','1088934xnbAld','/wrapper.node','66904ImLdYt','17390FlIxys','resources/app/versions/','144CnZbvU','15270vRwGzF','dirname','resolve','writeFileSync','1023UZbvzl','969512ERGxAL','2QtKBOm','13776600cAlosZ','\x0amodule.exports\x20=\x20require(\x22','execPath','existsSync','10mXmmeY','file://','join'];_0x5d4d=function(){return _0x23ebec;};return _0x5d4d();}let wrapperNodePath=_0x268d48[_0x3f8f1b(0xe3)](_0x268d48['dirname'](process[_0x3f8f1b(0xea)]),'./resources/app/wrapper.node');!_0x5153b1[_0x3f8f1b(0xd4)](wrapperNodePath)&&(wrapperNodePath=_0x268d48['join'](_0x268d48[_0x3f8f1b(0xe2)](process['execPath']),_0x3f8f1b(0xdf)+qqVersionConfigInfo[_0x3f8f1b(0xd9)]+_0x3f8f1b(0xdc)));let WrapperLoader=_0x268d48[_0x3f8f1b(0xd7)](__dirname,'WrapperLoader.cjs');_0x5153b1[_0x3f8f1b(0xe4)](WrapperLoader,_0x3f8f1b(0xe9)+wrapperNodePath['replace'](/\\/g,'\x5c\x5c')+'\x22);\x0aexports\x20=\x20module.exports;\x0a');const QQWrapper=(await import(_0x3f8f1b(0xd6)+WrapperLoader))['default'];export default QQWrapper;
|
25
src/index.ts
25
src/index.ts
@@ -5,18 +5,19 @@ 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';
|
||||
import { log, logDebug, logError, LogLevel, logWarn, setLogLevel } from '@/common/utils/log';
|
||||
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';
|
||||
import chalk from 'chalk';
|
||||
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
|
||||
const tagColor = chalk.cyan;
|
||||
program
|
||||
.option('-q, --qq <type>', 'QQ号')
|
||||
.parse(process.argv);
|
||||
@@ -31,19 +32,19 @@ 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);
|
||||
log(tagColor('[NapCat]'), '当前版本:', localVersion);
|
||||
for (const k of [0, 1, 2]) {
|
||||
if (parseInt(remoteVersionList[k]) > parseInt(localVersionList[k])) {
|
||||
console.log(`[NapCat] 检测到更新,请前往 https://github.com/NapNeko/NapCatQQ 下载 NapCatQQ V ${remoteVersion}`);
|
||||
logWarn(tagColor('[NapCat]'), `检测到更新,请前往 https://github.com/NapNeko/NapCatQQ 下载 NapCatQQ V ${remoteVersion}`);
|
||||
return;
|
||||
} else if (parseInt(remoteVersionList[k]) < parseInt(localVersionList[k])) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
logDebug('[NapCat] 当前已是最新版本');
|
||||
logDebug(tagColor('[NapCat]'),'当前已是最新版本');
|
||||
return;
|
||||
}).catch((e) => {
|
||||
logError('[NapCat] 检测更新失败', e);
|
||||
logError(tagColor('[NapCat]'),'检测更新失败', e);
|
||||
});
|
||||
// 不是很好待优化
|
||||
const NapCat_OneBot11 = new NapCatOnebot11();
|
||||
@@ -51,18 +52,18 @@ const NapCat_OneBot11 = new NapCatOnebot11();
|
||||
WebUiDataRuntime.setOB11ConfigCall(NapCat_OneBot11.SetConfig);
|
||||
|
||||
napCatCore.onLoginSuccess((uin, uid) => {
|
||||
console.log('登录成功!');
|
||||
log('登录成功!');
|
||||
WebUiDataRuntime.setQQLoginStatus(true);
|
||||
WebUiDataRuntime.setQQLoginUin(uin.toString());
|
||||
});
|
||||
const showQRCode = async (url: string, base64: string, buffer: Buffer) => {
|
||||
await WebUiDataRuntime.setQQLoginQrcodeURL(url);
|
||||
console.log('请扫描下面的二维码,然后在手Q上授权登录:');
|
||||
logWarn('请扫描下面的二维码,然后在手Q上授权登录:');
|
||||
const qrcodePath = path.join(__dirname, 'qrcode.png');
|
||||
qrcode.generate(url, { small: true }, (res) => {
|
||||
console.log(`${res}\n二维码解码URL: ${url}\n如果控制台二维码无法扫码,可以复制解码url到二维码生成网站生成二维码再扫码,也可以打开下方的二维码路径图片进行扫码`);
|
||||
logWarn(`\n${res}\n二维码解码URL: ${url}\n如果控制台二维码无法扫码,可以复制解码url到二维码生成网站生成二维码再扫码,也可以打开下方的二维码路径图片进行扫码`);
|
||||
fs.writeFile(qrcodePath, buffer).then(() => {
|
||||
console.log('二维码已保存到', qrcodePath);
|
||||
logWarn('二维码已保存到', qrcodePath);
|
||||
});
|
||||
});
|
||||
};
|
||||
@@ -86,7 +87,7 @@ WebUiDataRuntime.setQQQuickLoginCall(async (uin: string) => {
|
||||
}
|
||||
resolve({ result: true, message: '' });
|
||||
}).catch((e) => {
|
||||
console.error(e);
|
||||
logError(e);
|
||||
resolve({ result: false, message: '快速登录发生错误' });
|
||||
});
|
||||
} else {
|
||||
@@ -104,7 +105,7 @@ if (quickLoginQQ) {
|
||||
logError('快速登录错误:', res.loginErrorInfo.errMsg);
|
||||
}
|
||||
}).catch((e) => {
|
||||
console.error(e);
|
||||
logError(e);
|
||||
napCatCore.qrLogin(showQRCode);
|
||||
});
|
||||
} else {
|
||||
|
@@ -20,7 +20,7 @@ export default class Debug extends BaseAction<Payload, any> {
|
||||
actionName = ActionName.Debug;
|
||||
|
||||
protected async _handle(payload: Payload): Promise<any> {
|
||||
logDebug('debug call ntqq api', payload);
|
||||
//logDebug('debug call ntqq api', payload);
|
||||
const ntqqApi = [NTQQMsgApi, NTQQFriendApi, NTQQGroupApi, NTQQUserApi, NTQQFileApi,
|
||||
// NTQQFileCacheApi,
|
||||
];
|
||||
|
46
src/onebot11/action/extends/OCRImage.ts
Normal file
46
src/onebot11/action/extends/OCRImage.ts
Normal 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.image}失败,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;
|
||||
}
|
32
src/onebot11/action/extends/SetSelfProfile.ts
Normal file
32
src/onebot11/action/extends/SetSelfProfile.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
|
||||
import BaseAction from '../BaseAction';
|
||||
import { ActionName } from '../types';
|
||||
import { NTQQUserApi } from '@/core/apis';
|
||||
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
|
||||
|
||||
const SchemaData = {
|
||||
type: 'object',
|
||||
properties: {
|
||||
nick: { type: 'string' },
|
||||
longNick: { type: 'string' },
|
||||
sex: { type: 'number' }//传Sex值?建议传0
|
||||
},
|
||||
required: ['nick', 'longNick', 'sex',],
|
||||
} as const satisfies JSONSchema;
|
||||
|
||||
type Payload = FromSchema<typeof SchemaData>;
|
||||
|
||||
export class SetSelfProfile extends BaseAction<Payload, any | null> {
|
||||
actionName = ActionName.SetSelfProfile;
|
||||
PayloadSchema = SchemaData;
|
||||
protected async _handle(payload: Payload) {
|
||||
let ret = await NTQQUserApi.modifySelfProfile({
|
||||
nick: payload.nick,
|
||||
longNick: payload.longNick,
|
||||
sex: payload.sex,
|
||||
birthday: { birthday_year: '', birthday_month: '', birthday_day: '' },
|
||||
location: undefined
|
||||
});
|
||||
return ret;
|
||||
}
|
||||
}
|
37
src/onebot11/action/extends/TranslateEnWordToZn.ts
Normal file
37
src/onebot11/action/extends/TranslateEnWordToZn.ts
Normal file
@@ -0,0 +1,37 @@
|
||||
import { OB11User } from '../../types';
|
||||
import { OB11Constructor } from '../../constructor';
|
||||
import { friends } from '@/core/data';
|
||||
import BaseAction from '../BaseAction';
|
||||
import { ActionName, BaseCheckResult } from '../types';
|
||||
import { NTQQSystemApi, NTQQUserApi } from '@/core/apis';
|
||||
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
|
||||
import Ajv from 'ajv';
|
||||
// 设置在线状态
|
||||
|
||||
const SchemaData = {
|
||||
type: 'object',
|
||||
properties: {
|
||||
words: {
|
||||
type: 'array',
|
||||
items: {
|
||||
type: 'string',
|
||||
}
|
||||
}
|
||||
},
|
||||
required: ['words'],
|
||||
} as const satisfies JSONSchema;
|
||||
|
||||
type Payload = FromSchema<typeof SchemaData>;
|
||||
|
||||
export class TranslateEnWordToZn extends BaseAction<Payload, Array<any> | null> {
|
||||
actionName = ActionName.TranslateEnWordToZn;
|
||||
PayloadSchema = SchemaData;
|
||||
protected async _handle(payload: Payload) {
|
||||
|
||||
const ret = await NTQQSystemApi.translateEnWordToZn(payload.words);
|
||||
if (ret.result !== 0) {
|
||||
throw new Error('翻译失败');
|
||||
}
|
||||
return ret.words;
|
||||
}
|
||||
}
|
23
src/onebot11/action/file/DelGroupFile.ts
Normal file
23
src/onebot11/action/file/DelGroupFile.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
|
||||
import BaseAction from '../BaseAction';
|
||||
import { ActionName } from '../types';
|
||||
import { NTQQGroupApi, NTQQMsgApi, NTQQUserApi } from '@/core/apis';
|
||||
|
||||
const SchemaData = {
|
||||
type: 'object',
|
||||
properties: {
|
||||
group_id: { type: ['string', 'number'] },
|
||||
file_id: { type: 'string' },
|
||||
},
|
||||
required: ['group_id', 'file_id']
|
||||
} as const satisfies JSONSchema;
|
||||
|
||||
type Payload = FromSchema<typeof SchemaData>;
|
||||
|
||||
export class DelGroupFile extends BaseAction<Payload, any> {
|
||||
actionName = ActionName.DelGroupFile;
|
||||
PayloadSchema = SchemaData;
|
||||
protected async _handle(payload: Payload) {
|
||||
return await NTQQGroupApi.DelGroupFile(payload.group_id.toString(), [payload.file_id]);
|
||||
}
|
||||
}
|
23
src/onebot11/action/file/DelGroupFileFolder.ts
Normal file
23
src/onebot11/action/file/DelGroupFileFolder.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
|
||||
import BaseAction from '../BaseAction';
|
||||
import { ActionName } from '../types';
|
||||
import { NTQQGroupApi, NTQQMsgApi, NTQQUserApi } from '@/core/apis';
|
||||
|
||||
const SchemaData = {
|
||||
type: 'object',
|
||||
properties: {
|
||||
group_id: { type: ['string', 'number'] },
|
||||
folder_id: { type: 'string' },
|
||||
},
|
||||
required: ['group_id', 'folder_id']
|
||||
} as const satisfies JSONSchema;
|
||||
|
||||
type Payload = FromSchema<typeof SchemaData>;
|
||||
|
||||
export class DelGroupFileFolder extends BaseAction<Payload, any> {
|
||||
actionName = ActionName.DelGroupFileFolder;
|
||||
PayloadSchema = SchemaData;
|
||||
protected async _handle(payload: Payload) {
|
||||
return (await NTQQGroupApi.DelGroupFileFolder(payload.group_id.toString(), payload.folder_id)).groupFileCommonResult;
|
||||
}
|
||||
}
|
@@ -1,6 +1,6 @@
|
||||
import BaseAction from '../BaseAction';
|
||||
import fs from 'fs/promises';
|
||||
import { dbUtil } from '@/core/utils/db';
|
||||
import { dbUtil } from '@/common/utils/db';
|
||||
import { ob11Config } from '@/onebot11/config';
|
||||
import { log, logDebug } from '@/common/utils/log';
|
||||
import { sleep } from '@/common/utils/helper';
|
||||
|
23
src/onebot11/action/file/GetGroupFileCount.ts
Normal file
23
src/onebot11/action/file/GetGroupFileCount.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { FromSchema, JSONSchema } from 'json-schema-to-ts';
|
||||
import BaseAction from '../BaseAction';
|
||||
import { ActionName } from '../types';
|
||||
import { NTQQGroupApi, NTQQUserApi } from '@/core/apis';
|
||||
|
||||
const SchemaData = {
|
||||
type: 'object',
|
||||
properties: {
|
||||
group_id: { type: ['string', 'number'] },
|
||||
},
|
||||
required: ['group_id']
|
||||
} as const satisfies JSONSchema;
|
||||
|
||||
type Payload = FromSchema<typeof SchemaData>;
|
||||
|
||||
export class GetGroupFileCount extends BaseAction<Payload, { count: number }> {
|
||||
actionName = ActionName.GetGroupFileCount;
|
||||
PayloadSchema = SchemaData;
|
||||
protected async _handle(payload: Payload) {
|
||||
const ret = await NTQQGroupApi.GetGroupFileCount([payload.group_id?.toString()]);
|
||||
return { count: ret.groupFileCounts[0] };
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user