Files
天天的鸟蛋蛋 b9655a5ab1 SnowCat 雪猫底层全源码:NapCat 4.18.28 底座 + SnowLuma 能力移植 + V8 通道适配 9.9.37
26 包 monorepo(TS 全源码):
- snowcat-core: NT 内核 API 封装 + listener(含 9.9.37 六回调适配)+ Packet 发包
- snowcat-onebot: OneBot v11 全动作 + MCP Streamable HTTP 适配器 + 稳定线
- snowcat-webui-frontend/backend: 雪猫控制台(React+HeroUI)
- snowcat-shell: 单文件 bundle 出口(vite inlineDynamicImports)
- snowcat-native: napi2native / MoeHoo / ffmpeg / pty 运行时
- 56 项 SnowLuma 独门动作移植(qzone 全家桶/群相册/装扮/闪照/收藏)
- 工具件: 解包器/启动器/便携制作器/doctor

GitHub 关联已全量指向 DandanLLab/SnowCatQQ
2026-11-12 06:27:36 +08:00

34 lines
1.4 KiB
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { OneBotAction } from '@/snowcat-onebot/action/OneBotAction';
import { ActionName } from '@/snowcat-onebot/action/router';
import { Static, Type } from '@sinclair/typebox';
const PayloadSchema = Type.Object({
target_uin: Type.String({ description: '说说主人的QQ号' }),
tid: Type.String({ description: '说说tid' }),
like: Type.Boolean({ default: true, description: 'true=点赞 false=取消赞' }),
abstime: Type.Optional(Type.Union([Type.Number(), Type.String()], { default: 0, description: '目标帖发帖时间(unix秒),传真实值更稳' })),
});
type PayloadType = Static<typeof PayloadSchema>;
export class SetQzoneLike extends OneBotAction<PayloadType, null> {
override actionName = ActionName.SetQzoneLike;
override actionSummary = '说说点赞/取消赞';
override actionDescription = '对一条说说点赞或取消赞(appid 311 mood)';
override actionTags = ['扩展接口'];
override payloadExample = { target_uin: '123456789', tid: 'abc123', like: true };
override returnExample = null;
override payloadSchema = PayloadSchema;
override returnSchema = Type.Null();
async _handle (payload: PayloadType): Promise<null> {
await this.core.apis.WebApi.setQzoneLike(
payload.target_uin,
payload.tid,
payload.like,
payload.abstime !== undefined ? +payload.abstime : 0,
);
return null;
}
}