Enhance action metadata and add examples for new actions

Added actionSummary, actionDescription, and actionTags to multiple OneBot actions for improved API documentation. Introduced payload and response examples for new actions (GetDoubtFriendsAddRequest, SetDoubtFriendsAddRequest) in a new examples.ts file. Also removed unused imports from several files for code clarity.
This commit is contained in:
手瓜一十雪 2026-01-25 18:10:15 +08:00
parent e6687750eb
commit 1df3742748
13 changed files with 39 additions and 13 deletions

View File

@ -1,7 +1,6 @@
import { OneBotAction } from '@/napcat-onebot/action/OneBotAction';
import { ActionName } from '@/napcat-onebot/action/router';
import { Static, Type } from '@sinclair/typebox';
import { ExtendsActionsExamples } from './examples';
const PayloadSchema = Type.Object({
longNick: Type.String({ description: '签名内容' }),

View File

@ -20,7 +20,8 @@ export default class SetAvatar extends OneBotAction<PayloadType, ReturnType> {
override actionName = ActionName.SetQQAvatar;
override payloadSchema = PayloadSchema;
override returnSchema = ReturnSchema;
override actionDescription = '设置 QQ 头像';
override actionSummary = '设置 QQ 头像';
override actionDescription = '设置当前帐号的 QQ 头像';
override actionTags = ['扩展接口'];
override payloadExample = ActionExamples.SetQQAvatar.payload;

View File

@ -5,7 +5,6 @@ import { ActionName } from '@/napcat-onebot/action/router';
import { OB11MessageImage, OB11MessageVideo } from '@/napcat-onebot/types';
import { Static, Type } from '@sinclair/typebox';
import { ActionExamples } from '../examples';
export const GetFilePayloadSchema = Type.Object({
file: Type.Optional(Type.String({ description: '文件路径、URL或Base64' })),
@ -119,7 +118,7 @@ export class GetFileBase extends OneBotAction<GetFilePayload, GetFileResponse> {
export default class GetFile extends GetFileBase {
override actionName = ActionName.GetFile;
override actionDescription = '获取文件';
override payloadExample = ActionExamples.GetFile.payload;
override returnExample = ActionExamples.GetFile.return;
override actionSummary = '获取文件';
override actionDescription = '获取指定文件的详细信息及下载路径';
override actionTags = ['文件接口'];
}

View File

@ -5,7 +5,9 @@ import { ActionExamples } from '../examples';
export default class GetImage extends GetFileBase {
override actionName = ActionName.GetImage;
override actionDescription = '获取图片';
override actionSummary = '获取图片';
override actionDescription = '获取图片信息';
override actionTags = ['文件接口'];
override payloadExample = ActionExamples.GetImage.payload;
override returnExample = ActionExamples.GetImage.return;
}

View File

@ -24,7 +24,8 @@ export class CreateGroupFileFolder extends OneBotAction<PayloadType, ReturnType>
override actionName = ActionName.GoCQHTTP_CreateGroupFileFolder;
override payloadSchema = PayloadSchema;
override returnSchema = ReturnSchema;
override actionDescription = '创建群文件目录';
override actionSummary = '创建群文件目录';
override actionDescription = '在群文件系统中创建新的文件夹';
override actionTags = ['Go-CQHTTP'];
override payloadExample = GoCQHTTPActionsExamples.CreateGroupFileFolder.payload;

View File

@ -22,7 +22,8 @@ export class GetGroupFileSystemInfo extends OneBotAction<PayloadType, ReturnType
override actionName = ActionName.GoCQHTTP_GetGroupFileSystemInfo;
override payloadSchema = PayloadSchema;
override returnSchema = ReturnSchema;
override actionDescription = '获取群文件系统信息';
override actionSummary = '获取群文件系统信息';
override actionDescription = '获取群聊文件系统的空间及状态信息';
override actionTags = ['Go-CQHTTP'];
override payloadExample = GoCQHTTPActionsExamples.GetGroupFileSystemInfo.payload;

View File

@ -22,7 +22,8 @@ export class GetGroupRootFiles extends OneBotAction<PayloadType, ReturnType> {
override actionName = ActionName.GoCQHTTP_GetGroupRootFiles;
override payloadSchema = PayloadSchema;
override returnSchema = ReturnSchema;
override actionDescription = '获取群根目录文件列表';
override actionSummary = '获取群根目录文件列表';
override actionDescription = '获取群文件根目录下的所有文件和文件夹';
override actionTags = ['Go-CQHTTP'];
override payloadExample = GoCQHTTPActionsExamples.GetGroupRootFiles.payload;

View File

@ -1,7 +1,6 @@
import { OneBotAction } from '@/napcat-onebot/action/OneBotAction';
import { ActionName } from '@/napcat-onebot/action/router';
import { Static, Type } from '@sinclair/typebox';
import { GroupActionsExamples } from './examples';
const PayloadSchema = Type.Object({
group_id: Type.String({ description: '群号' }),

View File

@ -8,7 +8,8 @@ export class GetGuildList extends OneBotAction<void, void> {
override actionName = ActionName.GetGuildList;
override payloadSchema = Type.Object({});
override returnSchema = Type.Null();
override actionDescription = '获取频道列表';
override actionSummary = '获取频道列表';
override actionDescription = '获取当前帐号已加入的频道列表';
override actionTags = ['频道接口'];
override payloadExample = GuildActionsExamples.GetGuildList.payload;
override returnExample = GuildActionsExamples.GetGuildList.response;

View File

@ -8,7 +8,8 @@ export class GetGuildProfile extends OneBotAction<void, void> {
override actionName = ActionName.GetGuildProfile;
override payloadSchema = Type.Object({});
override returnSchema = Type.Null();
override actionDescription = '获取频道个人信息';
override actionSummary = '获取频道个人信息';
override actionDescription = '获取当前帐号在频道中的个人资料';
override actionTags = ['频道接口'];
override payloadExample = GuildActionsExamples.GetGuildProfile.payload;
override returnExample = GuildActionsExamples.GetGuildProfile.response;

View File

@ -1,6 +1,7 @@
import { OneBotAction } from '@/napcat-onebot/action/OneBotAction';
import { ActionName } from '@/napcat-onebot/action/router';
import { Static, Type } from '@sinclair/typebox';
import { NewActionsExamples } from './examples';
export const GetDoubtFriendsAddRequestPayloadSchema = Type.Object({
count: Type.Number({ default: 50, description: '获取数量' }),
@ -12,6 +13,11 @@ export class GetDoubtFriendsAddRequest extends OneBotAction<GetDoubtFriendsAddRe
override actionName = ActionName.GetDoubtFriendsAddRequest;
override payloadSchema = GetDoubtFriendsAddRequestPayloadSchema;
override returnSchema = Type.Any({ description: '可疑好友申请列表' });
override actionSummary = '获取可疑好友申请';
override actionDescription = '获取系统的可疑好友申请列表';
override actionTags = ['系统接口'];
override payloadExample = NewActionsExamples.GetDoubtFriendsAddRequest.payload;
override returnExample = NewActionsExamples.GetDoubtFriendsAddRequest.response;
async _handle (payload: GetDoubtFriendsAddRequestPayload) {
return await this.core.apis.FriendApi.getDoubtFriendRequest(payload.count);

View File

@ -1,6 +1,7 @@
import { OneBotAction } from '@/napcat-onebot/action/OneBotAction';
import { ActionName } from '@/napcat-onebot/action/router';
import { Static, Type } from '@sinclair/typebox';
import { NewActionsExamples } from './examples';
export const SetDoubtFriendsAddRequestPayloadSchema = Type.Object({
flag: Type.String({ description: '请求 flag' }),
@ -15,6 +16,10 @@ export class SetDoubtFriendsAddRequest extends OneBotAction<SetDoubtFriendsAddRe
override actionName = ActionName.SetDoubtFriendsAddRequest;
override payloadSchema = SetDoubtFriendsAddRequestPayloadSchema;
override returnSchema = Type.Any();
override actionSummary = '处理可疑好友申请';
override actionDescription = '同意或拒绝系统的可疑好友申请';
override actionTags = ['系统接口'];
override payloadExample = NewActionsExamples.SetDoubtFriendsAddRequest.payload;
async _handle (payload: SetDoubtFriendsAddRequestPayload) {
return await this.core.apis.FriendApi.handleDoubtFriendRequest(payload.flag);

View File

@ -0,0 +1,10 @@
export const NewActionsExamples = {
GetDoubtFriendsAddRequest: {
payload: { count: 10 },
response: [{ user_id: 123456789, nickname: '昵称', age: 20, sex: 'male', reason: '申请理由', flag: 'flag_123' }],
},
SetDoubtFriendsAddRequest: {
payload: { flag: 'flag_123', approve: true },
response: {},
},
};