This commit is contained in:
idranme 2024-09-06 22:57:07 +08:00
parent c24fa6cea1
commit e0be0bcc77
No known key found for this signature in database
GPG Key ID: 926F7B5B668E495F
2 changed files with 12 additions and 9 deletions

View File

@ -66,7 +66,7 @@ export namespace OB11Entities {
sender: { sender: {
user_id: parseInt(msg.senderUin!), user_id: parseInt(msg.senderUin!),
nickname: msg.sendNickName, nickname: msg.sendNickName,
card: msg.sendMemberName || '', card: msg.sendMemberName ?? '',
}, },
raw_message: '', raw_message: '',
font: 14, font: 14,
@ -78,28 +78,29 @@ export namespace OB11Entities {
if (debug) { if (debug) {
resMsg.raw = msg resMsg.raw = msg
} }
if (msg.chatType == ChatType.group) { if (msg.chatType === ChatType.group) {
resMsg.sub_type = 'normal' resMsg.sub_type = 'normal'
resMsg.group_id = parseInt(msg.peerUin) resMsg.group_id = parseInt(msg.peerUin)
const member = await ctx.ntGroupApi.getGroupMember(msg.peerUin, msg.senderUin!) const member = await ctx.ntGroupApi.getGroupMember(msg.peerUin, msg.senderUin!)
if (member) { if (member) {
resMsg.sender.role = groupMemberRole(member.role) resMsg.sender.role = groupMemberRole(member.role)
resMsg.sender.nickname = member.nick resMsg.sender.nickname = member.nick
resMsg.sender.title = member.memberSpecialTitle ?? ''
} }
} }
else if (msg.chatType == ChatType.friend) { else if (msg.chatType === ChatType.friend) {
resMsg.sub_type = 'friend' resMsg.sub_type = 'friend'
resMsg.sender.nickname = (await ctx.ntUserApi.getUserDetailInfo(msg.senderUid)).nick resMsg.sender.nickname = (await ctx.ntUserApi.getUserDetailInfo(msg.senderUid)).nick
} }
else if (msg.chatType as unknown as ChatType2 == ChatType2.KCHATTYPETEMPC2CFROMGROUP) { else if (msg.chatType as unknown as ChatType2 === ChatType2.KCHATTYPETEMPC2CFROMGROUP) {
resMsg.sub_type = 'group' resMsg.sub_type = 'group'
resMsg.temp_source = 0 //群聊
resMsg.sender.nickname = (await ctx.ntUserApi.getUserDetailInfo(msg.senderUid)).nick
const ret = await ctx.ntMsgApi.getTempChatInfo(ChatType2.KCHATTYPETEMPC2CFROMGROUP, msg.senderUid) const ret = await ctx.ntMsgApi.getTempChatInfo(ChatType2.KCHATTYPETEMPC2CFROMGROUP, msg.senderUid)
if (ret?.result === 0) { if (ret?.result === 0) {
resMsg.temp_source = Number(ret.tmpChatInfo?.groupCode) resMsg.sender.group_id = Number(ret.tmpChatInfo?.groupCode)
resMsg.sender.nickname = ret.tmpChatInfo!.fromNick
} else { } else {
resMsg.temp_source = 284840486 //兜底数据 resMsg.sender.group_id = 284840486 //兜底数据
resMsg.sender.nickname = '临时会话'
} }
} }

View File

@ -68,6 +68,8 @@ interface OB11Sender {
card?: string // 群名片 card?: string // 群名片
level?: string // 群等级 level?: string // 群等级
role?: OB11GroupMemberRole role?: OB11GroupMemberRole
group_id?: number // 当私聊 sub_type 为 group 时
title?: string // 群聊专属头衔
} }
export enum OB11MessageType { export enum OB11MessageType {
@ -93,7 +95,7 @@ export interface OB11Message {
font: number font: number
post_type?: EventType post_type?: EventType
raw?: RawMessage raw?: RawMessage
temp_source?: number temp_source?: 0 | 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9
} }
export interface OB11ForwardMessage extends OB11Message { export interface OB11ForwardMessage extends OB11Message {