From 5b80a8576fb2b6c4687e6ea731475b962b4e133f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=89=8B=E7=93=9C=E4=B8=80=E5=8D=81=E9=9B=AA?= Date: Sun, 25 Jan 2026 18:23:19 +0800 Subject: [PATCH] Refactor extends actions to use new examples module Replaced imports of ActionExamples with ExtendsActionsExamples in all extends actions. Updated action summary, description, tags, and example references for consistency and clarity across actions. This improves maintainability and aligns with the new examples structure. --- .../napcat-onebot/action/extends/GetAiCharacters.ts | 10 +++++----- packages/napcat-onebot/action/extends/GetClientkey.ts | 10 +++++----- packages/napcat-onebot/action/extends/GetRkey.ts | 7 +++++++ packages/napcat-onebot/action/extends/OCRImage.ts | 1 + .../action/extends/SetGroupKickMembers.ts | 8 +++++--- packages/napcat-onebot/action/extends/SetLongNick.ts | 7 +++++++ packages/napcat-onebot/action/extends/SetQQAvatar.ts | 9 +++++---- .../napcat-onebot/action/extends/SetSpecialTitle.ts | 8 +++++--- .../action/extends/TranslateEnWordToZn.ts | 7 +++++++ .../napcat-onebot/action/packet/GetPacketStatus.ts | 6 +++++- packages/napcat-onebot/action/packet/SendPoke.ts | 8 +++++--- packages/napcat-onebot/action/packet/SetGroupTodo.ts | 10 ++++++---- .../napcat-onebot/action/stream/DownloadFileStream.ts | 3 +++ .../napcat-onebot/action/stream/UploadFileStream.ts | 3 +++ 14 files changed, 69 insertions(+), 28 deletions(-) diff --git a/packages/napcat-onebot/action/extends/GetAiCharacters.ts b/packages/napcat-onebot/action/extends/GetAiCharacters.ts index bfbf93a5..54ec2e54 100644 --- a/packages/napcat-onebot/action/extends/GetAiCharacters.ts +++ b/packages/napcat-onebot/action/extends/GetAiCharacters.ts @@ -2,7 +2,7 @@ import { ActionName } from '@/napcat-onebot/action/router'; import { GetPacketStatusDepends } from '@/napcat-onebot/action/packet/GetPacketStatus'; import { Type, Static } from '@sinclair/typebox'; -import { ActionExamples } from '../examples'; +import { ExtendsActionsExamples } from './examples'; const PayloadSchema = Type.Object({ group_id: Type.String({ description: '群号' }), @@ -32,11 +32,11 @@ export class GetAiCharacters extends GetPacketStatusDepends { override actionName = ActionName.GetClientkey; override payloadSchema = Type.Void(); override returnSchema = ReturnSchema; - override actionSummary = '获取 ClientKey'; - override actionDescription = '获取当前登录帐号的 ClientKey'; + override actionSummary = '获取ClientKey'; + override actionDescription = '获取当前登录帐号的ClientKey'; override actionTags = ['扩展接口']; - override payloadExample = ActionExamples.GetClientkey.payload; - override returnExample = ActionExamples.GetClientkey.return; + override payloadExample = ExtendsActionsExamples.GetClientkey.payload; + override returnExample = ExtendsActionsExamples.GetClientkey.response; async _handle () { return { clientkey: (await this.core.apis.UserApi.forceFetchClientKey()).clientKey }; diff --git a/packages/napcat-onebot/action/extends/GetRkey.ts b/packages/napcat-onebot/action/extends/GetRkey.ts index 2bd05e3a..a76bb540 100644 --- a/packages/napcat-onebot/action/extends/GetRkey.ts +++ b/packages/napcat-onebot/action/extends/GetRkey.ts @@ -2,6 +2,8 @@ import { ActionName } from '@/napcat-onebot/action/router'; import { GetPacketStatusDepends } from '@/napcat-onebot/action/packet/GetPacketStatus'; import { Type, Static } from '@sinclair/typebox'; +import { ExtendsActionsExamples } from './examples'; + const ReturnSchema = Type.Array(Type.Any(), { description: 'Rkey列表' }); type ReturnType = Static; @@ -10,6 +12,11 @@ export class GetRkey extends GetPacketStatusDepends { override actionName = ActionName.GetRkey; override payloadSchema = Type.Void(); override returnSchema = ReturnSchema; + override actionSummary = '获取Rkey'; + override actionDescription = '获取用于媒体资源的Rkey列表'; + override actionTags = ['扩展接口']; + override payloadExample = ExtendsActionsExamples.GetRkey.payload; + override returnExample = ExtendsActionsExamples.GetRkey.response; async _handle () { return await this.core.apis.PacketApi.pkt.operation.FetchRkey(); diff --git a/packages/napcat-onebot/action/extends/OCRImage.ts b/packages/napcat-onebot/action/extends/OCRImage.ts index 5acab9e6..7a79e153 100644 --- a/packages/napcat-onebot/action/extends/OCRImage.ts +++ b/packages/napcat-onebot/action/extends/OCRImage.ts @@ -23,6 +23,7 @@ class OCRImageBase extends OneBotAction { override actionDescription = '识别图片中的文字内容'; override actionTags = ['扩展接口']; override payloadExample = ExtendsActionsExamples.OCRImage.payload; + override returnExample = ExtendsActionsExamples.OCRImage.response; async _handle (payload: PayloadType): Promise { const { path, success } = await uriToLocalFile(this.core.NapCatTempPath, payload.image); diff --git a/packages/napcat-onebot/action/extends/SetGroupKickMembers.ts b/packages/napcat-onebot/action/extends/SetGroupKickMembers.ts index 783736db..aca57ea3 100644 --- a/packages/napcat-onebot/action/extends/SetGroupKickMembers.ts +++ b/packages/napcat-onebot/action/extends/SetGroupKickMembers.ts @@ -2,7 +2,7 @@ import { OneBotAction } from '@/napcat-onebot/action/OneBotAction'; import { ActionName } from '@/napcat-onebot/action/router'; import { Static, Type } from '@sinclair/typebox'; -import { ActionExamples } from '../examples'; +import { ExtendsActionsExamples } from './examples'; const PayloadSchema = Type.Object({ group_id: Type.String({ description: '群号' }), @@ -20,9 +20,11 @@ export default class SetGroupKickMembers extends OneBotAction { const rejectReq = payload.reject_add_request?.toString() === 'true'; diff --git a/packages/napcat-onebot/action/extends/SetLongNick.ts b/packages/napcat-onebot/action/extends/SetLongNick.ts index a75a628e..a5b52b62 100644 --- a/packages/napcat-onebot/action/extends/SetLongNick.ts +++ b/packages/napcat-onebot/action/extends/SetLongNick.ts @@ -2,6 +2,8 @@ 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: '签名内容' }), }); @@ -16,6 +18,11 @@ export class SetLongNick extends OneBotAction { override actionName = ActionName.SetLongNick; override payloadSchema = PayloadSchema; override returnSchema = ReturnSchema; + override actionSummary = '设置个性签名'; + override actionDescription = '修改当前登录帐号的个性签名'; + override actionTags = ['扩展接口']; + override payloadExample = ExtendsActionsExamples.SetLongNick.payload; + override returnExample = ExtendsActionsExamples.SetLongNick.response; async _handle (payload: PayloadType) { return await this.core.apis.UserApi.setLongNick(payload.longNick); diff --git a/packages/napcat-onebot/action/extends/SetQQAvatar.ts b/packages/napcat-onebot/action/extends/SetQQAvatar.ts index 5c2e1b01..ca826bf4 100644 --- a/packages/napcat-onebot/action/extends/SetQQAvatar.ts +++ b/packages/napcat-onebot/action/extends/SetQQAvatar.ts @@ -4,7 +4,7 @@ import fs from 'node:fs/promises'; import { checkFileExist, uriToLocalFile } from 'napcat-common/src/file'; import { Static, Type } from '@sinclair/typebox'; -import { ActionExamples } from '../examples'; +import { ExtendsActionsExamples } from './examples'; const PayloadSchema = Type.Object({ file: Type.String({ description: '图片路径、URL或Base64' }), @@ -20,10 +20,11 @@ export default class SetAvatar extends OneBotAction { override actionName = ActionName.SetQQAvatar; override payloadSchema = PayloadSchema; override returnSchema = ReturnSchema; - override actionSummary = '设置 QQ 头像'; - override actionDescription = '设置当前帐号的 QQ 头像'; + override actionSummary = '设置QQ头像'; + override actionDescription = '修改当前账号的QQ头像'; override actionTags = ['扩展接口']; - override payloadExample = ActionExamples.SetQQAvatar.payload; + override payloadExample = ExtendsActionsExamples.SetQQAvatar.payload; + override returnExample = ExtendsActionsExamples.SetQQAvatar.response; async _handle (payload: PayloadType): Promise { const { path, success } = (await uriToLocalFile(this.core.NapCatTempPath, payload.file)); diff --git a/packages/napcat-onebot/action/extends/SetSpecialTitle.ts b/packages/napcat-onebot/action/extends/SetSpecialTitle.ts index 9d665ecd..72775a08 100644 --- a/packages/napcat-onebot/action/extends/SetSpecialTitle.ts +++ b/packages/napcat-onebot/action/extends/SetSpecialTitle.ts @@ -2,7 +2,7 @@ import { ActionName } from '@/napcat-onebot/action/router'; import { GetPacketStatusDepends } from '@/napcat-onebot/action/packet/GetPacketStatus'; import { Static, Type } from '@sinclair/typebox'; -import { ActionExamples } from '../examples'; +import { ExtendsActionsExamples } from './examples'; const PayloadSchema = Type.Object({ group_id: Type.String({ description: '群号' }), @@ -20,9 +20,11 @@ export class SetSpecialTitle extends GetPacketStatusDepends { override actionName = ActionName.TranslateEnWordToZn; override payloadSchema = PayloadSchema; override returnSchema = ReturnSchema; + override actionSummary = '英文单词翻译'; + override actionDescription = '将英文单词列表翻译为中文'; + override actionTags = ['扩展接口']; + override payloadExample = ExtendsActionsExamples.TranslateEnWordToZn.payload; + override returnExample = ExtendsActionsExamples.TranslateEnWordToZn.response; async _handle (payload: PayloadType): Promise { const ret = await this.core.apis.SystemApi.translateEnWordToZn(payload.words); diff --git a/packages/napcat-onebot/action/packet/GetPacketStatus.ts b/packages/napcat-onebot/action/packet/GetPacketStatus.ts index f81ef33f..9fc0e73e 100644 --- a/packages/napcat-onebot/action/packet/GetPacketStatus.ts +++ b/packages/napcat-onebot/action/packet/GetPacketStatus.ts @@ -1,6 +1,7 @@ import { OneBotAction } from '@/napcat-onebot/action/OneBotAction'; import { ActionName, BaseCheckResult } from '@/napcat-onebot/action/router'; import { Type } from '@sinclair/typebox'; +import { PacketActionsExamples } from './examples'; export abstract class GetPacketStatusDepends extends OneBotAction { protected override async check (payload: PT): Promise { @@ -19,8 +20,11 @@ export class GetPacketStatus extends GetPacketStatusDepends { override actionName = ActionName.GetPacketStatus; override payloadSchema = Type.Object({}); override returnSchema = Type.Null(); - override actionDescription = '获取 Packet 状态'; + override actionSummary = '获取Packet状态'; + override actionDescription = '获取底层Packet服务的运行状态'; override actionTags = ['系统接口']; + override payloadExample = PacketActionsExamples.GetPacketStatus.payload; + override returnExample = PacketActionsExamples.GetPacketStatus.response; async _handle () { diff --git a/packages/napcat-onebot/action/packet/SendPoke.ts b/packages/napcat-onebot/action/packet/SendPoke.ts index 9845cd3a..b906a3c6 100644 --- a/packages/napcat-onebot/action/packet/SendPoke.ts +++ b/packages/napcat-onebot/action/packet/SendPoke.ts @@ -2,7 +2,7 @@ import { ActionName } from '@/napcat-onebot/action/router'; import { GetPacketStatusDepends } from '@/napcat-onebot/action/packet/GetPacketStatus'; import { Static, Type } from '@sinclair/typebox'; -import { ActionExamples } from '../examples'; +import { PacketActionsExamples } from './examples'; export const SendPokePayloadSchema = Type.Object({ group_id: Type.Optional(Type.Union([Type.String(), Type.Number()], { description: '群号' })), @@ -14,9 +14,11 @@ export type SendPokePayload = Static; export class SendPokeBase extends GetPacketStatusDepends { override payloadSchema = SendPokePayloadSchema; override returnSchema = Type.Null(); - override actionDescription = '发送戳一戳'; + override actionSummary = '发送戳一戳'; + override actionDescription = '在群聊或私聊中发送戳一戳动作'; override actionTags = ['核心接口']; - override payloadExample = ActionExamples.SendPoke.payload; + override payloadExample = PacketActionsExamples.SendPoke.payload; + override returnExample = PacketActionsExamples.SendPoke.response; async _handle (payload: SendPokePayload) { // 这里的 !! 可以传入空字符串 忽略这些数据有利用接口统一接口 diff --git a/packages/napcat-onebot/action/packet/SetGroupTodo.ts b/packages/napcat-onebot/action/packet/SetGroupTodo.ts index 038e964d..936944ad 100644 --- a/packages/napcat-onebot/action/packet/SetGroupTodo.ts +++ b/packages/napcat-onebot/action/packet/SetGroupTodo.ts @@ -4,7 +4,7 @@ import { GetPacketStatusDepends } from '@/napcat-onebot/action/packet/GetPacketS import { Static, Type } from '@sinclair/typebox'; import { ActionName } from '../router'; -import { ActionExamples } from '../examples'; +import { PacketActionsExamples } from './examples'; export const SetGroupTodoPayloadSchema = Type.Object({ group_id: Type.Union([Type.String(), Type.Number()], { description: '群号' }), @@ -14,12 +14,14 @@ export const SetGroupTodoPayloadSchema = Type.Object({ export type SetGroupTodoPayload = Static; export class SetGroupTodo extends GetPacketStatusDepends { + override actionName = ActionName.SetGroupTodo; override payloadSchema = SetGroupTodoPayloadSchema; override returnSchema = Type.Null(); - override actionName = ActionName.SetGroupTodo; - override actionDescription = '设置群待办'; + override actionSummary = '设置群待办'; + override actionDescription = '将指定消息设置为群待办'; override actionTags = ['核心接口']; - override payloadExample = ActionExamples.SetGroupTodo.payload; + override payloadExample = PacketActionsExamples.SetGroupTodo.payload; + override returnExample = PacketActionsExamples.SetGroupTodo.response; async _handle (payload: SetGroupTodoPayload) { if (payload.message_seq) { diff --git a/packages/napcat-onebot/action/stream/DownloadFileStream.ts b/packages/napcat-onebot/action/stream/DownloadFileStream.ts index c0ac4b3f..ec542c34 100644 --- a/packages/napcat-onebot/action/stream/DownloadFileStream.ts +++ b/packages/napcat-onebot/action/stream/DownloadFileStream.ts @@ -17,6 +17,9 @@ export class DownloadFileStream extends BaseDownloadStream> { diff --git a/packages/napcat-onebot/action/stream/UploadFileStream.ts b/packages/napcat-onebot/action/stream/UploadFileStream.ts index 92ed67b4..a9035626 100644 --- a/packages/napcat-onebot/action/stream/UploadFileStream.ts +++ b/packages/napcat-onebot/action/stream/UploadFileStream.ts @@ -70,6 +70,9 @@ export class UploadFileStream extends OneBotAction();