mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2026-01-13 19:50:35 +00:00
Add emoji likes list support to message types
Introduces the emojiLikesList property to RawMessage and maps it to the new emoji_likes_list field in OB11Message, which is populated in the GetMsg action. Also updates type definitions for stricter typing and consistency.
This commit is contained in:
parent
f3de4d48d3
commit
cf69ccdbc9
@ -181,7 +181,7 @@ export interface MessageElement {
|
||||
tofuRecordElement?: TofuRecordElement,
|
||||
taskTopMsgElement?: TaskTopMsgElement,
|
||||
recommendedMsgElement?: RecommendedMsgElement,
|
||||
actionBarElement?: ActionBarElement
|
||||
actionBarElement?: ActionBarElement;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -337,7 +337,7 @@ export interface InlineKeyboardElementRowButton {
|
||||
*/
|
||||
export interface InlineKeyboardElement {
|
||||
rows: [{
|
||||
buttons: InlineKeyboardElementRowButton[]
|
||||
buttons: InlineKeyboardElementRowButton[];
|
||||
}],
|
||||
botAppid: string;
|
||||
}
|
||||
@ -441,14 +441,14 @@ export interface TipGroupElement {
|
||||
uid: string;
|
||||
card: string;
|
||||
name: string;
|
||||
role: NTGroupMemberRole
|
||||
role: NTGroupMemberRole;
|
||||
};
|
||||
member: {
|
||||
uid: string
|
||||
uid: string;
|
||||
card: string;
|
||||
name: string;
|
||||
role: NTGroupMemberRole
|
||||
}
|
||||
role: NTGroupMemberRole;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@ -498,6 +498,7 @@ export interface RawMessage {
|
||||
sendStatus?: SendStatusType;// 消息状态
|
||||
recallTime: string;// 撤回时间,"0" 是没有撤回
|
||||
records: RawMessage[];// 消息记录
|
||||
emojiLikesList?: Array<{ emojiId: string; emojiType: string; likesCnt: string; isClicked: string; }>;
|
||||
elements: MessageElement[];// 消息元素
|
||||
sourceType: MsgSourceType;// 消息来源类型
|
||||
isOnlineMsg: boolean;// 是否为在线消息
|
||||
@ -508,9 +509,9 @@ export interface RawMessage {
|
||||
* 查询消息参数接口
|
||||
*/
|
||||
export interface QueryMsgsParams {
|
||||
chatInfo: Peer & { privilegeFlag?: number };
|
||||
chatInfo: Peer & { privilegeFlag?: number; };
|
||||
// searchFields: number;
|
||||
filterMsgType: Array<{ type: NTMsgType, subType: Array<number> }>;
|
||||
filterMsgType: Array<{ type: NTMsgType, subType: Array<number>; }>;
|
||||
filterSendersUid: string[];
|
||||
filterMsgFromTime: string;
|
||||
filterMsgToTime: string;
|
||||
@ -554,7 +555,7 @@ export interface MsgReqType {
|
||||
queryOrder: boolean,
|
||||
includeSelf: boolean,
|
||||
includeDeleteMsg: boolean,
|
||||
extraCnt: number
|
||||
extraCnt: number;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@ -35,7 +35,16 @@ class GetMsg extends OneBotAction<Payload, OB11Message> {
|
||||
// }
|
||||
if (!msg) throw Error('消息不存在');
|
||||
const retMsg = await this.obContext.apis.MsgApi.parseMessage(msg, config.messagePostFormat);
|
||||
|
||||
if (!retMsg) throw Error('消息为空');
|
||||
msg.emojiLikesList?.map(emoji => {
|
||||
retMsg.emoji_likes_list.push({
|
||||
emoji_id: emoji.emojiId,
|
||||
emoji_type: emoji.emojiType,
|
||||
likes_cnt: emoji.likesCnt,
|
||||
});
|
||||
});
|
||||
// 烘焙emoji_likes_list 仅此处烘焙
|
||||
try {
|
||||
retMsg.message_id = MessageUnique.createUniqueMsgId(peer, msg.msgId)!;
|
||||
retMsg.message_seq = retMsg.message_id;
|
||||
|
||||
@ -31,6 +31,7 @@ export interface OB11Message {
|
||||
font: number;
|
||||
post_type?: EventType;
|
||||
raw?: RawMessage;
|
||||
emoji_likes_list: Array<{ emoji_id: string; emoji_type: string; likes_cnt: string; }>;// 仅get_msg生效
|
||||
}
|
||||
|
||||
// 合并转发消息接口定义
|
||||
@ -46,7 +47,7 @@ export interface OB11Return<DataType> {
|
||||
message: string;
|
||||
echo?: unknown; // ws调用api才有此字段
|
||||
wording?: string; // go-cqhttp字段,错误信息
|
||||
stream?: 'stream-action' | 'normal-action' ; // 流式返回标记
|
||||
stream?: 'stream-action' | 'normal-action'; // 流式返回标记
|
||||
}
|
||||
|
||||
// 消息数据类型枚举
|
||||
@ -186,7 +187,7 @@ export interface OB11MessageNode {
|
||||
name?: string; // compatible with go-cqhttp
|
||||
content: OB11MessageMixType;
|
||||
source?: string;
|
||||
news?: { text: string }[];
|
||||
news?: { text: string; }[];
|
||||
summary?: string;
|
||||
prompt?: string;
|
||||
time?: string;
|
||||
@ -210,13 +211,13 @@ export interface OB11MessageIdMusic {
|
||||
// 自定义音乐消息接口定义
|
||||
export interface OB11MessageCustomMusic {
|
||||
type: OB11MessageDataType.music;
|
||||
data: Omit<CustomMusicSignPostData, 'singer'> & { content?: string };
|
||||
data: Omit<CustomMusicSignPostData, 'singer'> & { content?: string; };
|
||||
}
|
||||
|
||||
// JSON消息接口定义
|
||||
export interface OB11MessageJson {
|
||||
type: OB11MessageDataType.json;
|
||||
data: { config?: { token: string }, data: string | object };
|
||||
data: { config?: { token: string; }, data: string | object; };
|
||||
}
|
||||
|
||||
// 骰子消息接口定义
|
||||
@ -254,12 +255,12 @@ export interface OB11MessageForward {
|
||||
|
||||
// 消息数据类型定义
|
||||
export type OB11MessageData =
|
||||
OB11MessageText |
|
||||
OB11MessageFace | OB11MessageMFace |
|
||||
OB11MessageAt | OB11MessageReply |
|
||||
OB11MessageImage | OB11MessageRecord | OB11MessageFile | OB11MessageVideo |
|
||||
OB11MessageNode | OB11MessageIdMusic | OB11MessageCustomMusic | OB11MessageJson |
|
||||
OB11MessageDice | OB11MessageRPS | OB11MessageMarkdown | OB11MessageForward | OB11MessageContext | OB11MessagePoke;
|
||||
OB11MessageText |
|
||||
OB11MessageFace | OB11MessageMFace |
|
||||
OB11MessageAt | OB11MessageReply |
|
||||
OB11MessageImage | OB11MessageRecord | OB11MessageFile | OB11MessageVideo |
|
||||
OB11MessageNode | OB11MessageIdMusic | OB11MessageCustomMusic | OB11MessageJson |
|
||||
OB11MessageDice | OB11MessageRPS | OB11MessageMarkdown | OB11MessageForward | OB11MessageContext | OB11MessagePoke;
|
||||
|
||||
// 发送消息接口定义
|
||||
export interface OB11PostSendMsg {
|
||||
@ -270,7 +271,7 @@ export interface OB11PostSendMsg {
|
||||
messages?: OB11MessageMixType;
|
||||
auto_escape?: boolean | string;
|
||||
source?: string;
|
||||
news?: { text: string }[];
|
||||
news?: { text: string; }[];
|
||||
summary?: string;
|
||||
prompt?: string;
|
||||
time?: string;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user