📖 介绍
这是一个提供符合中国宝宝体质的定时提醒功能的插件。
💿 安装
使用 nb-cli 安装
在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装nb plugin install nonebot-plugin-remind
使用包管理器安装
在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令pip
pip install nonebot-plugin-remind
打开 nonebot2 项目根目录下的 pyproject.toml 文件, 在 [tool.nonebot] 部分追加写入
plugins = ["nonebot_plugin_remind"]
⚙️ 配置
在 nonebot2 项目的.env文件中添加如下可选配置
| 配置项 | 必填 | 默认值 | 说明 |
|---|---|---|---|
private_list_all |
否 | Ture |
私聊中"/提醒列表"命令是否列出私聊群聊全部提醒 |
remind_keyword_error |
否 | Ture |
触发“提醒”关键词时是否发送错误提示 |
GLM_4_MODEL |
否 | "" |
仅用于解析单次提醒的GLM-4系列大模型的名称 |
GLM_4_MODEL_CRON |
否 | "" |
仅用于解析循环提醒的GLM-4系列大模型的名称 |
GLM_API_KEY |
否 | "" |
GLM-4系列大模型的API_KEY |
🎉 使用
关键词触发
提醒
触发格式(支持两种语序):
[@][时间]'提醒'[被提醒人][消息]
[@]'提醒'[被提醒人][时间][消息]
各部分解释:
-
[@](以下条件任意满足一条即可)
- 在消息开头@机器人
- 回复机器人的任意一条消息
- 如果机器人设置了
NICKNAME环境变量,则只需在消息开头称呼其昵称 - 在私聊中,可以省略此部分,见文末示例图
-
[时间]
关键词触发和命令触发均使用 jionlp 进行自然语言时间解析,支持以下格式:
明天下午3点、后天上午10点、下周一9点半小时后、10分钟后、两个小时后春节、国庆节、中秋节2025-1-1 8:00、9月10日18:00、21:12- ……
当正确配置了
GLM_4_MODEL和GLM_API_KEY这两个环境变量之后,jionlp 无法解析的时间表达式将由 GLM-4 兜底解析,你将获得更自由更符合人类语言的丰富体验,包括但不限于:明天晚上八点1刻20分钟后下周三的同一时间今年的教师节早上八点10月1日提前10天的正午12点- ……
特别提醒: 推荐使用免费的"glm-4-flash"模型,即可满足大部分简单需求。越复杂的时间描述(如
一坤时后)对大语言模型的理解能力需求越高,需合理选择大模型。除此之外,时间部分还支持循环提醒的设置(jionlp 可直接识别周期性时间表达式):
-
每年3月12日7:00 -
每月22日22:00 -
每周一三五18:00 -
每天15:00 -
每小时30分 -
特别提醒: 与单次提醒不同,免费的"glm-4-flash"模型在解析循环提醒获取参数时表现不佳,建议选择更智能的模型,比如"glm-4-plus",因此提供了不同的环境变量设置 (
GLM_4_MODEL_CRON) 。
-
'提醒': 要匹配的关键字,必须完全一致
-
[被提醒人](以下格式均符合要求)
我:提醒设定提醒的人自己[@]:可以@多个用户,包括自己,也可以@全体成员我和[@]:必须我在前面,其他@用户在后all或者所有人: 等同于@全体成员,提供一个非打扰式的提醒设定
-
[消息]
- 任意消息(支持图片、QQ黄脸表情等富文本消息)均可,前提是必须在同一条消息中发送出
示例:
@机器人 16:00提醒我去开会@机器人 提醒我明天下午3点去开会✨(v0.2.0 新增语序)@机器人 提醒我半小时后喝水✨机器人昵称,1月1日11:40提醒所有人去聚餐机器人昵称 2025年1月29日8:00提醒我和@用户1 用户2 新年新气象!
指令触发
以下触发均需要指令前缀,如未设置默认为/。
提醒
-
提供1个参数为
被提醒人,以交互的方式设置提醒: -
提供3个参数,以英文逗号
,间隔,依次为:被提醒人,时间和提醒消息:
以上两种命令的触发方式均可省略
被提醒人参数,省略时默认被提醒人为“我”。
提醒列表(单次提醒列表)
列表顺序默认按提醒时间顺序排序,使用 -s 选项按设置提醒的先后顺序排序
当在群聊中触发此指令时,仅返回在群聊内设置的提醒。
当在私聊中触发此指令时,返回所有私聊和群聊中设置的提醒。
注意:当配置环境变量 private_list_all=false 时,私聊时也仅返回私聊中设置的提醒。
循环提醒列表
此命令只会输出设置的循环提醒任务,不支持 -s 选项的排序,默认按照设置顺序排序。
删除提醒(删除单次提醒)
使用的列表顺序默认按提醒时间顺序排序,使用 -s 选项按设置提醒的先后顺序排序的序号删除
注意:在删除提醒之前一定要先通过
/提醒列表指令查看序号!每次删除后后续序号都会更新!
示例:
/删除提醒 1:删除序号为1的提醒(默认按提醒时间排序)/删除提醒 -s 1-3 5:批量删除序号为1、2、3、5的提醒(按设置时间排序)/删除提醒 all:一键删除所有提醒(仅当前群聊)
删除循环提醒
与 /删除提醒 命令用法相同,同样不支持 -s 选项排序,必须提供由 /循环提醒列表 命令查看得到的任务序号。
示例图
本示例,均为未配置GLM-4大语言模型情况下,基于jionlp进行时间解析所实现的。
| 提醒关键词示例图 | 提醒命令示例图 | 提醒列表命令示例图 | 删除提醒命令示例图 | 私聊使用示例图 |
|---|---|---|---|---|
|
|
|
|
|
|
Release files for nonebot-plugin-remind 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nonebot_plugin_remind-0.2.0.tar.gz | 23.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nonebot_plugin_remind-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 48.5 kB
Release files / nonebot_plugin_remind-0.2.0.tar.gz
| Download URL | nonebot_plugin_remind-0.2.0.tar.gz |
|---|---|
| Size | 23.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3ec964c6d1cfd3fa11cfe94a899c0b39e9f4680fe50d08655e1c8f2440eae7a2
|
|
BLAKE2b-256 checksum How to use checksums |
e650cf7c33efe1b914457cae176877b1a112e99d006b830fb443fa806ec7523e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / nonebot_plugin_remind-0.2.0-py3-none-any.whl
| Download URL | nonebot_plugin_remind-0.2.0-py3-none-any.whl |
|---|---|
| Size | 25.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
49713dc7a749f0fac940430a7c27aa327ea18dd538215200b3daa03ecd587400
|
|
BLAKE2b-256 checksum How to use checksums |
67d5a88bfd619b2990836d641cb3f7e08bdf48bd2e59bbaafd4a998ba272b85e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|