diff --git a/manifest.json b/manifest.json index 44b2700..5867ecc 100644 --- a/manifest.json +++ b/manifest.json @@ -1,10 +1,10 @@ { "manifest_version": 4, "type": "extension", - "name": "LLOneBot v3.19.2", + "name": "LLOneBot v3.19.3", "slug": "LLOneBot", "description": "使你的NTQQ支持OneBot11协议进行QQ机器人开发, 不支持商店在线更新", - "version": "3.19.2", + "version": "3.19.3", "icon": "./icon.jpg", "authors": [ { diff --git a/src/ntqqapi/hook.ts b/src/ntqqapi/hook.ts index c4ef1ff..9636b54 100644 --- a/src/ntqqapi/hook.ts +++ b/src/ntqqapi/hook.ts @@ -284,7 +284,7 @@ registerReceiveHook<{ groupList: Group[], updateType: number }>(ReceiveCmdS.GROU registerReceiveHook<{groupCode: string, dataSource: number, members: Set}>(ReceiveCmdS.GROUP_MEMBER_INFO_UPDATE, async (payload) => { const groupCode = payload.groupCode; const members = Array.from(payload.members.values()); - log("群成员信息变动", groupCode, members) + // log("群成员信息变动", groupCode, members) for(const member of members) { const existMember = await getGroupMember(groupCode, member.uin); if (existMember){ diff --git a/src/ntqqapi/types/msg.ts b/src/ntqqapi/types/msg.ts index 1436cbd..299bf05 100644 --- a/src/ntqqapi/types/msg.ts +++ b/src/ntqqapi/types/msg.ts @@ -1,4 +1,5 @@ import {GroupMemberRole} from "./group"; +import exp from "constants"; export enum ElementType { TEXT = 1, @@ -209,6 +210,44 @@ export interface FaceElement { faceType: 1 } +export interface MarketFaceElement { + "itemType": 6, + "faceInfo": 1, + "emojiPackageId": 203875, + "subType": 3, + "mediaType": 0, + "imageWidth": 200, + "imageHeight": 200, + "faceName": string, + "emojiId": "094d53bd1c9ac5d35d04b08e8a6c992c", + "key": "a8b1dd0aebc8d910", + "param": null, + "mobileParam": null, + "sourceType": null, + "startTime": null, + "endTime": null, + "emojiType": 1, + "hasIpProduct": null, + "voiceItemHeightArr": null, + "sourceName": null, + "sourceJumpUrl": null, + "sourceTypeName": null, + "backColor": null, + "volumeColor": null, + "staticFacePath": "E:\\SystemDocuments\\QQ\\721011692\\nt_qq\\nt_data\\Emoji\\marketface\\203875\\094d53bd1c9ac5d35d04b08e8a6c992c_aio.png", + "dynamicFacePath": "E:\\SystemDocuments\\QQ\\721011692\\nt_qq\\nt_data\\Emoji\\marketface\\203875\\094d53bd1c9ac5d35d04b08e8a6c992c", + "supportSize": [ + { + "width": 300, + "height": 300 + }, + { + "width": 200, + "height": 200 + } + ], + "apngSupportSize": null +} export interface VideoElement { "filePath": string, "fileName": string, @@ -321,5 +360,6 @@ export interface RawMessage { faceElement: FaceElement; videoElement: VideoElement; fileElement: FileElement; + marketFaceElement: MarketFaceElement; }[]; } \ No newline at end of file diff --git a/src/onebot11/constructor.ts b/src/onebot11/constructor.ts index 27205e1..cb4c525 100644 --- a/src/onebot11/constructor.ts +++ b/src/onebot11/constructor.ts @@ -203,6 +203,9 @@ export class OB11Constructor { } else if (element.faceElement) { message_data["type"] = OB11MessageDataType.face; message_data["data"]["id"] = element.faceElement.faceIndex.toString(); + } else if (element.marketFaceElement) { + message_data["type"] = OB11MessageDataType.mface; + message_data["data"]["text"] = element.marketFaceElement.faceName; } if (message_data.type !== "unknown" && message_data.data) { const cqCode = encodeCQCode(message_data); diff --git a/src/onebot11/types.ts b/src/onebot11/types.ts index fcfbf77..907c84b 100644 --- a/src/onebot11/types.ts +++ b/src/onebot11/types.ts @@ -108,10 +108,16 @@ export enum OB11MessageDataType { reply = "reply", json = "json", face = "face", - mface = "face", // 商城表情 + mface = "mface", // 商城表情 node = "node", // 合并转发消息 } +export interface OB11MessageMFace{ + type: OB11MessageDataType.mface, + data: { + text: string + } +} export interface OB11MessageText { type: OB11MessageDataType.text, data: { @@ -199,7 +205,7 @@ export interface OB11MessageJson { export type OB11MessageData = OB11MessageText | - OB11MessageFace | + OB11MessageFace | OB11MessageMFace | OB11MessageAt | OB11MessageReply | OB11MessageImage | OB11MessageRecord | OB11MessageFile | OB11MessageVideo | OB11MessageNode | OB11MessageCustomMusic | OB11MessageJson