Skip to main content

(可能是)更好的一言插件!

Project description

一言+

(可能是)更好的一言插件!

一个基于 NoneBot2 的一言(Hitokoto)插件,用于获取来自 Hitokoto.cn 的一句话。

插件名:nonebot-plugin-hitokoto-plus

特性

  • ✅ 句子类型自定义
  • ✅ 频率限制和黑白名单支持
  • ✅ 收藏功能

安装

通过 nb-cli 安装(推荐)

nb plugin install nonebot-plugin-hitokoto-plus

通过 pip 安装

pip install nonebot-plugin-hitokoto-plus

使用方法

[!WARNING] 此处示例中的"/"为 nb 默认的命令开始标志,若您设置了另外的标志,则请使用您设置的标志作为命令的开头

基本命令

  • /一言/hitokoto - 获取随机一言
  • /一言 --help - 显示帮助信息

高级用法

指定句子类型:

  • /一言 a - 获取一条动画类型的一言
  • /一言 b - 获取一条漫画类型的一言
  • /一言 c - 获取一条游戏类型的一言
  • 更多类型见下方"参数说明"

收藏功能

  • /一言收藏 - 收藏上一次获取的句子
  • /一言收藏列表 [页码] - 查看已收藏的句子,可选参数:页码
  • /一言收藏删除 <序号> - 删除指定序号的收藏
  • /一言收藏详情 <序号> - 查看指定序号收藏的详细信息
  • /一言收藏 --help - 显示收藏功能帮助信息

[!NOTE] 收藏列表支持分页显示,每页显示固定数量的句子,防止单条消息过长。使用 /一言收藏列表 [页码] 可以查看指定页码的收藏列表。

获取句子后,系统会提示在指定时间内可以使用收藏命令将该句子收藏。超过这个时间后将无法收藏,需要重新获取句子。

收藏详情和删除命令支持批量操作,例如 /一言收藏详情 1 2 3 可以查看多个收藏的详细信息,/一言收藏删除 1 2 3 可以删除多个收藏。

参数说明

句子类型(字母):

参数 说明
a 动画
b 漫画
c 游戏
d 文学
e 原创
f 网络
g 其他
h 影视
i 诗词
j 网易云
k 哲学
l 抖机灵

配置项

可参考仓库根目录的.env.example文件进行配置

在 NoneBot2 全局配置文件中(通常是 .env.env.prod 文件)添加以下配置:

[!IMPORTANT] 所有配置项都需要加上 HITP_ 前缀,例如 HITP_API_URL="https://v1.hitokoto.cn"。下表中的名称已包含此前缀。

基础配置

配置项 类型 必填 默认值 说明
HITP_DEFAULT_TYPE str None 默认句子类型,不设置则随机
HITP_API_URL str "https://v1.hitokoto.cn" API地址

[!WARNING] 指定的API地址必须支持与一言开发者中心提供的请求参数和句子类型调用(返回格式化的JSON文本)

一言开发者中心提供的可选API地址如下:

地址 协议 方法 QPS 限制 线路
v1.hitokoto.cn HTTPS Any 2 全球
international.v1.hitokoto.cn HTTPS Any 20(含缓存*) 海外

收藏配置

配置项 类型 必填 默认值 说明
HITP_MAX_FAVORITES_PER_USER int 100 每个用户最大收藏数量
HITP_FAVORITES_PER_PAGE int 5 收藏列表每页显示的句子数量
HITP_FAVORITE_TIMEOUT int 60 收藏超时时间(秒),在获取句子后多长时间内可以收藏
HITP_MAX_DETAILS_PER_REQUEST int 3 单次查看收藏句子详情的最大数量,超过则被拦截

权限、频率配置

配置项 类型 必填 默认值 说明
HITP_ENABLE_PRIVATE_CHAT bool True 是否允许私聊使用
HITP_ENABLE_GROUP_CHAT bool True 是否允许群聊使用
HITP_RATE_LIMIT_PRIVATE int 5 私聊频率限制(秒)
HITP_RATE_LIMIT_GROUP int 10 群聊频率限制(秒)

黑白名单设置

配置项 类型 必填 默认值 说明
HITP_ENABLE_WHITELIST bool False 是否启用白名单
HITP_ENABLE_BLACKLIST bool False 是否启用黑名单
HITP_WHITELIST_USERS list [] 白名单用户列表,格式为 适配器名称:用户ID,例如 ["onebot11:12345", "discord:98765"]
HITP_BLACKLIST_USERS list [] 黑名单用户列表,格式为 适配器名称:用户ID,例如 ["onebot11:54321", "kook:112233"]
HITP_WHITELIST_GROUPS list [] 白名单群组列表,格式为 适配器名称:群组ID,例如 ["onebot11:10001", "discord:20002"]
HITP_BLACKLIST_GROUPS list [] 黑名单群组列表,格式为 适配器名称:群组ID,例如 ["onebot11:10003", "kook:20004"]

[!NOTE] 适配器名称 参考:

适配器名称 平台/协议
onebot11 OneBot V11
onebot12 OneBot V12
console Console
kook KOOK (开黑啦)
telegram Telegram
feishu 飞书
discord Discord
qq QQ (官方)
satori Satori
dodo DoDo
kritor Kritor
mirai Mirai
mail Mail
wxmp 微信公众号

注意事项

  • 该插件代码基本由AI完成,如有更好的改进建议欢迎提交pr
  • 目前仅使用了Onebot适配器+Napcat,在Windows/Linux系统下测试通过,如有兼容性问题/其他适配器的运行情况欢迎提交issue
  • 尝试进行了跨平台兼容,但运行情况未知

更新日志

0.2.4

修复一些已知问题,重写部分组件

[!IMPORTANT] 自0.2.4版本起,依赖与配置项均发生改变,请注意查看

0.2.3

添加对跨平台用户的区分

0.2.2

修复导入,移除不必要依赖

0.2.1

修复配置项相关问题

0.2.0

插件首次发布

0.1.0

暂无

鸣谢

以及所有相关项目❤

许可证

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot_plugin_hitokoto_plus-0.2.4.tar.gz (21.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nonebot_plugin_hitokoto_plus-0.2.4-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_hitokoto_plus-0.2.4.tar.gz.

File metadata

File hashes

Hashes for nonebot_plugin_hitokoto_plus-0.2.4.tar.gz
Algorithm Hash digest
SHA256 63532c320925b3b895223fa41bcfa2d82caa5125b696bc53ea91255aeb49db03
MD5 4e26133191ce291f93ad53385250e41e
BLAKE2b-256 3f269b5202aa2bb553101b41513c13f193b965e1d7ec4c4776e9b7dd33bdadc2

See more details on using hashes here.

File details

Details for the file nonebot_plugin_hitokoto_plus-0.2.4-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_hitokoto_plus-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 68e5c143a5ce0813516fc8e64dba8b6c30a93c3e7c01ae54f9c363fead5f9e76
MD5 910918d66c7a38f86499f82a28faf847
BLAKE2b-256 9f96347940431b245c081838cd1f38990cf7c93347ed28795b24542598bba28b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page