fix: message_id过长导致koishi对接失败

perf: 初始化卡顿优化
This commit is contained in:
linyuchen
2024-02-13 21:17:16 +08:00
parent b28b812396
commit 282b2a0da0
10 changed files with 59 additions and 37 deletions

View File

@@ -1,10 +1,30 @@
import { NTQQApi } from '../ntqqapi/ntcall';
import { Friend, Group, GroupMember, RawMessage, SelfInfo } from "../ntqqapi/types";
import { log } from "./utils";
export let groups: Group[] = []
export let friends: Friend[] = []
export let msgHistory: Record<string, RawMessage> = {} // msgId: RawMessage
let globalMsgId = Date.now()
export function addHistoryMsg(msg: RawMessage){
let existMsg = msgHistory[msg.msgId]
if (existMsg){
Object.assign(existMsg, msg)
msg.msgShortId = existMsg.msgShortId;
return
}
msg.msgShortId = ++globalMsgId
msgHistory[msg.msgId] = msg
}
export function getHistoryMsgByShortId(shortId: number | string){
log("getHistoryMsgByShortId", shortId, Object.values(msgHistory).map(m=>m.msgShortId))
return Object.values(msgHistory).find(msg => msg.msgShortId.toString() == shortId.toString())
}
export async function getFriend(qq: string): Promise<Friend | undefined> {
let friend = friends.find(friend => friend.uin === qq)
// if (!friend){