diff --git a/src/ntqqapi/types.ts b/src/ntqqapi/types.ts index 4056148..e1c4a0a 100644 --- a/src/ntqqapi/types.ts +++ b/src/ntqqapi/types.ts @@ -45,11 +45,12 @@ export interface Group { members: GroupMember[] // 原始数据是没有这个的,为了方便自己加了这个字段 } -export enum GroupMemberRole{ +export enum GroupMemberRole { normal = 2, admin = 3, owner = 4 } + export interface GroupMember { avatarPath: string; cardName: string; @@ -142,24 +143,26 @@ export interface SendFaceElement { faceElement: FaceElement } +export interface FileElement { + "fileMd5"?: "", + "fileName": string, + "filePath": string, + "fileSize": string, + "picHeight"?: number, + "picWidth"?: number, + "picThumbPath"?: {}, + "file10MMd5"?: "", + "fileSha"?: "", + "fileSha3"?: "", + "fileUuid"?: "", + "fileSubId"?: "", + "thumbFileSize"?: number +} + export interface SendFileElement { "elementType": ElementType.FILE, "elementId": "", - "fileElement": { - "fileMd5"?: "", - "fileName": string, - "filePath": string, - "fileSize": string, - "picHeight"?: number, - "picWidth"?: number, - "picThumbPath"?: {}, - "file10MMd5"?: "", - "fileSha"?: "", - "fileSha3"?: "", - "fileUuid"?: "", - "fileSubId"?: "", - "thumbFileSize"?: number - } + "fileElement": FileElement } export type SendMessageElement = SendTextElement | SendPttElement | @@ -291,7 +294,8 @@ export interface RawMessage { arkElement: ArkElement; grayTipElement: GrayTipElement; faceElement: FaceElement; - videoElement: VideoElement + videoElement: VideoElement; + fileElement: FileElement; }[]; } diff --git a/src/onebot11/constructor.ts b/src/onebot11/constructor.ts index 69b66c6..2c49a89 100644 --- a/src/onebot11/constructor.ts +++ b/src/onebot11/constructor.ts @@ -109,15 +109,17 @@ export class OB11Constructor { } } else if (element.videoElement) { message_data["type"] = OB11MessageDataType.video; - message_data["data"]["file"] = element.pttElement.filePath - message_data["data"]["file_id"] = element.pttElement.fileUuid + message_data["data"]["file"] = element.videoElement.filePath + message_data["data"]["file_id"] = element.videoElement.fileUuid // 怎么拿到url呢 - try { - // await NTQQApi.downloadMedia(msg.msgId, msg.chatType, msg.peerUid, - // element.elementId, element.picElement.thumbPath.get(0), element.picElement.sourcePath) - } catch (e) { - } - } else if (element.pttElement) { + } else if (element.fileElement) { + message_data["type"] = OB11MessageDataType.file; + message_data["data"]["file"] = element.fileElement.filePath + message_data["data"]["file_id"] = element.fileElement.fileUuid + message_data["data"]["file_size"] = element.fileElement.fileSize + // 怎么拿到url呢 + } + else if (element.pttElement) { message_data["type"] = OB11MessageDataType.voice; message_data["data"]["file"] = element.pttElement.filePath message_data["data"]["file_id"] = element.pttElement.fileUuid