Skip to content
This repository has been archived by the owner on Apr 12, 2021. It is now read-only.

jks15satoshi/nonebot_plugin_cooldown

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nonebot-plugin-cooldown

适用于 Nonebot 2 的冷却事件管理插件。

time tracker

由于本人 Python 水平低下,因此源码可能会令人不适。

重要提醒

本插件目前正计划重写,重写后的新插件将会置于新的存储库中,届时将会在 NoneBot 插件商店中更新重定向至新存储库。该存储库目前已停止维护,并已归档处理。

尽管该插件目前仍可以安装使用,但现阶段 不建议使用该插件,尤其是应用于生产环境中。

关于冷却事件

冷却事件是一种用以限制用户功能调用频率的机制。在该插件中,冷却事件由事件标签所标识,每个事件包含若干个由事件记录,其中事件记录包含群组 ID、用户 ID 和事件结束时间戳三个字段,事件状态由以上字段共同决定。

根据群组 ID 与用户 ID 设定的不同,该插件的冷却事件分为如下四种:

  • 全局冷却事件:限制任何群组的任何成员调用功能;
  • 群组冷却事件:限制特定群组的任何成员调用功能;
  • 一般冷却事件:限制特定群组的特定成员调用功能;
  • 用户冷却事件:限制特定用户调用功能。

事件优先级由上至下依次递减。

安装

通过 nb-cli 安装

nb plugin install nonebot-plugin-cooldown

通过 Poetry 安装

poetry add nonebot-plugin-cooldown

通过 pip 安装

pip install nonebot-plugin-cooldown

使用

加载插件

请参考 Nonebot 2 官方文档的 加载插件 章节,在项目中加载该插件。

CRUD

该插件提供了数种方法对冷却事件进行 CRUD 操作,可在 该文件 的方法注释中查看使用方法。

自定义匹配规则

该插件提供了自定义匹配规则 is_cooled_down,用于判断事件生效状态。可在 该文件 的方法注释中查看使用方法。

关于如何使用匹配规则,参考 Nonebot 2 官方文档的 自定义 rule 章节。

配置

该插件可通过在配置文件中添加如下配置项对部分功能进行配置。关于如何设置插件配置项,参考 Nonebot 2 官方文档的 基本配置 章节。

  • CD_AUTOBACKUP_PERIOD:自动备份事件周期(秒),默认为 600
  • CD_AUTOREMOVE_PERIOD:自动移除无效事件周期(秒),默认为 3600
  • CD_BACKUP_FILE:事件备份文件路径(建议在 bot.py 文件中使用 pathlib 进行配置或使用绝对路径)。

许可协议

该项目以 MIT 协议开放源代码,详阅 LICENSE 文件。

About

适用于 Nonebot 2 的冷却事件插件

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages