koishi-plugin-auto-group-todo
v0.1.2
Published
QQ 群待办插件,面向 NapCat 场景的群内任务记录与提醒
Maintainers
Readme
koishi-plugin-auto-group-todo
QQ群待办插件,面向 NapCat 场景,支持把一条群消息设置为可选开始/结束 cron 的群待办。
前提
- 运行环境需要能调用 NapCat OneBot API。
- 插件依赖 Koishi
database服务。 - 如果要使用
--start或--end,还需要启用cron服务。
插件会调用以下 NapCat API:
set_group_todocancel_group_todoget_group_member_info
命令
设置群待办
用法:
设置群待办 [--start <cron>] [--end <cron>]规则:
- 只能在群聊中使用。
- 必须引用一条消息。
- 只有群主和管理员可以使用。
--start和--end都使用 cron 表达式。- 不传
--start时,立即调用一次set_group_todo。 - 不传
--end时,不自动结束。 - 同一群内同一条消息只能被本插件创建一次。
示例:
设置群待办
设置群待办 --start "0 9 * * *"
设置群待办 --start "0 9 * * *" --end "0 18 * * *"列出群待办
用法:
列出群待办 [msg_id]规则:
- 不传
msg_id且不引用消息时,列出当前群全部记录的todoId、开始时间、结束时间。 - 传入
msg_id时,查询当前群指定消息对应的记录。 - 不传
msg_id但引用了一条消息时,按被引用消息查询。 - 只列出本插件管理的记录。
删除群待办
用法:
删除群待办 [todoId...]规则:
- 只能在群聊中使用。
- 只有群主和管理员可以使用。
- 支持一次传多个
todoId。 - 传了
todoId时,按内部 ID 删除。 - 没传
todoId时,必须引用一条消息,并按该消息对应记录删除。 - 删除时会先调用
cancel_group_todo,成功后再删除插件内记录和定时任务。
示例:
删除群待办 1
删除群待办 1 2 3数据与调度
插件仅持久化以下字段:
idgroupIdmessageIdstartCronendCron
启动时会从数据库恢复记录,并重建开始/结束定时任务。
错误处理
- 所有用法错误都会返回“错误原因 + 正确用法”。
- 如果当前会话缺少可用 OneBot 能力,管理员校验或 API 调用会失败。
- 恢复定时任务时如果某条记录注册失败,插件会记录警告并继续恢复后续记录。
