From 4bc5933ea2f0cd6e3f5fed85c88b03a07ebca43d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=97=B6=E7=91=BE?= Date: Wed, 11 Jun 2025 12:37:29 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=AD=A3=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E7=9A=84=E5=8F=82=E6=95=B0=E3=80=81=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E5=80=BC=EF=BC=8C=E6=8F=90=E9=AB=98=E5=85=BC=E5=AE=B9?= =?UTF-8?q?=E6=80=A7=20(#1072)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix: 修正`get_group_system_msg` `get_group_honor_info`接口返回值 提升兼容性 * fix: `create_group_file_folder` 接口兼容性提升 --- napcat.webui/src/const/ob_api/group.ts | 2 +- src/core/apis/webapi.ts | 2 +- .../action/go-cqhttp/CreateGroupFileFolder.ts | 8 ++++++-- src/onebot/action/group/GetGroupNotice.ts | 15 ++++++++++++--- src/onebot/action/system/GetSystemMsg.ts | 4 +++- 5 files changed, 23 insertions(+), 8 deletions(-) diff --git a/napcat.webui/src/const/ob_api/group.ts b/napcat.webui/src/const/ob_api/group.ts index fe3199d3..c1aac306 100644 --- a/napcat.webui/src/const/ob_api/group.ts +++ b/napcat.webui/src/const/ob_api/group.ts @@ -604,7 +604,7 @@ const oneBotHttpApiGroup = { response: baseResponseSchema.extend({ data: z .object({ - group_id: z.string().describe('群号'), + group_id: z.number().describe('群号'), current_talkative: z .object({ user_id: z.number().describe('QQ 号'), diff --git a/src/core/apis/webapi.ts b/src/core/apis/webapi.ts index edfad136..687611be 100644 --- a/src/core/apis/webapi.ts +++ b/src/core/apis/webapi.ts @@ -264,7 +264,7 @@ export class NTQQWebApi { async getGroupHonorInfo(groupCode: string, getType: WebHonorType) { const cookieObject = await this.core.apis.UserApi.getCookies('qun.qq.com'); let HonorInfo = { - group_id: groupCode, + group_id: Number(groupCode), current_talkative: {}, talkative_list: [], performer_list: [], diff --git a/src/onebot/action/go-cqhttp/CreateGroupFileFolder.ts b/src/onebot/action/go-cqhttp/CreateGroupFileFolder.ts index 760929ea..a3538bd9 100644 --- a/src/onebot/action/go-cqhttp/CreateGroupFileFolder.ts +++ b/src/onebot/action/go-cqhttp/CreateGroupFileFolder.ts @@ -4,7 +4,10 @@ import { Static, Type } from '@sinclair/typebox'; const SchemaData = Type.Object({ group_id: Type.Union([Type.Number(), Type.String()]), - folder_name: Type.String(), + // 兼容gocq 与name二选一 + folder_name: Type.Optional(Type.String()), + // 兼容gocq 与folder_name二选一 + name: Type.Optional(Type.String()), }); type Payload = Static; @@ -16,6 +19,7 @@ export class CreateGroupFileFolder extends OneBotAction override actionName = ActionName.GoCQHTTP_CreateGroupFileFolder; override payloadSchema = SchemaData; async _handle(payload: Payload) { - return (await this.core.apis.GroupApi.creatGroupFileFolder(payload.group_id.toString(), payload.folder_name)).resultWithGroupItem; + const folderName = payload.folder_name || payload.name; + return (await this.core.apis.GroupApi.creatGroupFileFolder(payload.group_id.toString(), folderName!)).resultWithGroupItem; } } diff --git a/src/onebot/action/group/GetGroupNotice.ts b/src/onebot/action/group/GetGroupNotice.ts index fe952557..a98470bb 100644 --- a/src/onebot/action/group/GetGroupNotice.ts +++ b/src/onebot/action/group/GetGroupNotice.ts @@ -8,10 +8,16 @@ interface GroupNotice { notice_id: string; message: { text: string + // 保持一段时间兼容性 防止以往版本出现问题 后续版本可考虑移除 image: Array<{ height: string width: string id: string + }>, + images: Array<{ + height: string + width: string + id: string }> }; } @@ -40,15 +46,18 @@ export class GetGroupNotice extends OneBotAction { continue; } const retApiNotice: WebApiGroupNoticeFeed = ret.feeds[key]; + const image = retApiNotice.msg.pics?.map((pic) => { + return { id: pic.id, height: pic.h, width: pic.w }; + }) || []; + const retNotice: GroupNotice = { notice_id: retApiNotice.fid, sender_id: retApiNotice.u, publish_time: retApiNotice.pubt, message: { text: retApiNotice.msg.text, - image: retApiNotice.msg.pics?.map((pic) => { - return { id: pic.id, height: pic.h, width: pic.w }; - }) || [], + image, + images: image, }, }; retNotices.push(retNotice); diff --git a/src/onebot/action/system/GetSystemMsg.ts b/src/onebot/action/system/GetSystemMsg.ts index 75853b4e..6ea757b0 100644 --- a/src/onebot/action/system/GetSystemMsg.ts +++ b/src/onebot/action/system/GetSystemMsg.ts @@ -4,6 +4,7 @@ import { ActionName } from '@/onebot/action/router'; import { Notify } from '@/onebot/types'; interface RetData { + invited_requests: Notify[]; InvitedRequest: Notify[]; join_requests: Notify[]; } @@ -13,7 +14,7 @@ export class GetGroupSystemMsg extends OneBotAction { async _handle(): Promise { const SingleScreenNotifies = await this.core.apis.GroupApi.getSingleScreenNotifies(false, 50); - const retData: RetData = { InvitedRequest: [], join_requests: [] }; + const retData: RetData = { invited_requests: [], InvitedRequest: [], join_requests: [] }; const notifyPromises = SingleScreenNotifies.map(async (SSNotify) => { const invitorUin = SSNotify.user1?.uid ? +await this.core.apis.UserApi.getUinByUidV2(SSNotify.user1.uid) : 0; @@ -39,6 +40,7 @@ export class GetGroupSystemMsg extends OneBotAction { await Promise.all(notifyPromises); + retData.invited_requests = retData.InvitedRequest; return retData; } } \ No newline at end of file