TG 机器人源码怎么添加用户自定义任务提醒与跟踪功能?

泡泡人鱼泡泡人鱼09月19日2113

我想给我的 TG 机器人加个提醒功能,就是说用户设置一个提醒时间,机器人在那个时间点自动发消息,这个功能要怎么实现呢?需要什么代码或者方法?

3 个回答

晾不干的衬衫
晾不干的衬衫回答于 09 月 19 日
最佳答案

要让 TG 机器人支持定时提醒功能,核心就是用户设置一个时间,机器人到那个时间就推送一条消息。

你需要一个任务调度模块,比如 Python 的 APScheduler 或 Celery。

然后用户输入提醒时间时,把时间和消息内容存到数据库或内存里。

然后设置定时任务去轮询数据库里的待触发任务,到了设定时间就调用 bot.send_message 发送消息即可。

代码结构大致如下:

1. 用户发送命令 + 时间 + 提醒内容,如 /remind 10:00 吃饭

2. 解析时间,转换为 UTC 时间戳(注意时区)

3. 把时间戳和消息存进数据库

4. 启动后台调度器,定时检查是否有到期的任务,有的话就执行发送

注意处理用户取消提醒、重复提醒这些细节逻辑,功能会更完整些。

跳跳糖
跳跳糖回答于 09 月 24 日

首先,你需要一个定时任务模块,比如 Python 的 apscheduler 或 schedule。

然后,用户发来设置提醒的指令时,把时间、用户ID 和提醒内容记录下来。

接着,把任务加入定时器,到点触发发送消息。

最后,别忘了保存任务列表,重启后还可以继续执行。

简单来说,就是存任务 + 定时触发 + 发消息。

搞定之后,赶紧测试下,看看机器人会不会准时喊你!

旧钥匙扣
旧钥匙扣回答于 09 月 25 日

实现用户自定义提醒功能,大致思路如下:

1. 用户设置提醒时间、提醒内容,先记下来(比如存到数据库或文件里)。

2. 定时判断当前时间是否与某个提醒时间相匹配。

3. 匹配上了,就自动发消息给用户。

技术上可用 Python 的 `apscheduler` 或 `schedule` 库做定时任务,再用 `telebot` 或 `pyrogram` 调用 TG API 发消息。核心在于用户提醒数据的存储结构设计和时间对比逻辑。

您的答案