mirror of
https://github.com/LLOneBot/LLOneBot.git
synced 2024-11-22 01:56:33 +00:00
fix
This commit is contained in:
parent
8e9523602b
commit
c82b849ead
@ -124,10 +124,15 @@ class Core extends Service {
|
|||||||
activatedPeerUids.push(contact.id)
|
activatedPeerUids.push(contact.id)
|
||||||
const peer = { peerUid: contact.id, chatType: contact.chatType }
|
const peer = { peerUid: contact.id, chatType: contact.chatType }
|
||||||
if (contact.chatType === ChatType.TempC2CFromGroup) {
|
if (contact.chatType === ChatType.TempC2CFromGroup) {
|
||||||
this.ctx.ntMsgApi.activateChatAndGetHistory(peer, 1).then(res => {
|
this.ctx.ntMsgApi.activateChatAndGetHistory(peer, 2).then(res => {
|
||||||
const lastTempMsg = res.msgList[0]
|
for (const msg of res.msgList) {
|
||||||
if (Date.now() / 1000 - Number(lastTempMsg?.msgTime) < 5) {
|
if (Date.now() / 1000 - Number(msg.msgTime) > 3) {
|
||||||
this.ctx.parallel('nt/message-created', lastTempMsg!)
|
continue
|
||||||
|
}
|
||||||
|
if (msg.senderUin && msg.senderUin !== '0') {
|
||||||
|
this.ctx.store.addMsgCache(msg)
|
||||||
|
}
|
||||||
|
this.ctx.parallel('nt/message-created', msg)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
|
@ -33,13 +33,6 @@ function decodeMessageUser(data: NT.RawMessage) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function decodeMessageMember(user: Universal.User, data: NT.RawMessage) {
|
|
||||||
return {
|
|
||||||
user: user,
|
|
||||||
nick: data.sendMemberName || data.sendNickName
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function decodeElement(ctx: Context, data: NT.RawMessage, quoted = false) {
|
async function decodeElement(ctx: Context, data: NT.RawMessage, quoted = false) {
|
||||||
const buffer: h[] = []
|
const buffer: h[] = []
|
||||||
for (const v of data.elements) {
|
for (const v of data.elements) {
|
||||||
@ -169,12 +162,22 @@ export async function decodeMessage(
|
|||||||
message.user.nick = info.remark || info.nick
|
message.user.nick = info.remark || info.nick
|
||||||
}
|
}
|
||||||
if (guildId) {
|
if (guildId) {
|
||||||
|
let nick = data.sendMemberName || data.sendNickName
|
||||||
|
if (!data.sendNickName) {
|
||||||
|
const info = await ctx.ntGroupApi.getGroupMember(guildId, data.senderUid)
|
||||||
|
message.user.name = info.nick
|
||||||
|
message.user.nick = info.remark || info.nick
|
||||||
|
nick = info.cardName || info.nick
|
||||||
|
}
|
||||||
message.guild = {
|
message.guild = {
|
||||||
id: guildId,
|
id: guildId,
|
||||||
name: data.peerName,
|
name: data.peerName,
|
||||||
avatar: `https://p.qlogo.cn/gh/${guildId}/${guildId}/640`
|
avatar: `https://p.qlogo.cn/gh/${guildId}/${guildId}/640`
|
||||||
}
|
}
|
||||||
message.member = decodeMessageMember(message.user, data)
|
message.member = {
|
||||||
|
user: message.user,
|
||||||
|
nick
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return message
|
return message
|
||||||
|
Loading…
x
Reference in New Issue
Block a user