给机器人发个消息,到时间自动打电话给你
这是一个个人待办电话提醒系统。
你通过飞书或微信给机器人发一条消息,系统自动记录待办事项。到了预定的时间,系统自动拨打你的手机,用语音把待办内容念给你听。
举个例子: 你发一条「明天下午3点提醒我对账」→ 到了明天下午3点 → 手机响起 → 接通后听到"您好,您有一条待办提醒:明天下午3点提醒您对账"
我们都有这样的经历:
- 设了闹钟但闹钟只响一次,关了就不记得了
- 微信发"提醒我XX"但没人真提醒
- 重要的事写在纸上、记在备忘录,但忙起来根本想不起来看
这个系统解决了"记了但忘了看"的问题——电话直接打过来,你躲不掉。
| 功能 | 说明 |
|---|---|
| 🎤 语音输入 | 语音消息自动转文字,说话就能建待办 |
| 📝 文字输入 | 支持自然语言时间(明天下午3点、5分钟后、今晚8点) |
| 📞 电话提醒 | 到时间自动拨打电话,TTS语音播报 |
| 🎯 指定号码 | 可以打给自己,也可以打给别人 |
| 👥 多用户 | 每个人绑自己的手机号,各自独立使用 |
| 📋 清单管理 | 查看待办列表、撤销待办、一键清空 |
| 🔗 双通道 | 飞书和微信都能用,数据互通 |
用户发消息 ──→ 飞书/微信 ──→ 服务端 ──→ SQLite ──→ remind.service ──→ 打电话
↑
remind.service 每30秒检查一次
到时间的待办 → 调用阿里云语音API → 拨打电话
- 重要会议提醒——再忙也不会错过
- 吃药提醒——每天定时打给你
- 接送孩子——到点打电话提醒出发
- 自己总忘事的人——直接打电话最管用
- 提醒家人——你发消息,系统打给你爸妈
加微信好友后直接发消息。
| 操作 | 示例 |
|---|---|
| 首次绑定 | /bind 138xxxx8000 |
| 创建待办 | 明天下午3点提醒我对账 |
| 指定号码 | 给136xxx打电话提醒他开会 |
| 查看待办 | /list |
| 撤销单个 | /cancel 3 |
| 撤销全部 | /cancel all |
| 解绑手机 | /unbind |
飞书搜索「我的代办」。
| 操作 | 示例 |
|---|---|
| 首次绑定 | /bind 138xxxx8000 |
| 创建待办 | 明天下午3点提醒我对账 |
| 语音创建 | 🎤 发语音消息 |
| 指定号码 | 给136xxx打电话提醒他开会 |
| 查看待办 | /list |
| 撤销单个 | /cancel 3 |
| 撤销全部 | /cancel all |
| 输入 | 系统理解 |
|---|---|
5分钟后提醒我 |
当前时间 + 5分钟 |
明天下午3点对账 |
次日 15:00 |
今晚8点吃药 |
当天 20:00 |
后天早上9点出发 |
后天 09:00 |
下周一上午10点开会 |
下周一 10:00 |
明天12:00 |
次日 12:00 |
| 组件 | 技术 |
|---|---|
| 消息接收 | 飞书 WebSocket API / Hermes Gateway Weixin |
| 语音识别 | faster-whisper(本地运行,数据不外传) |
| 电话外呼 | 阿里云语音服务 SingleCallByTts |
| 数据库 | SQLite |
| 后台守护 | systemd(开机自启,崩溃自愈) |
| 语言 | Python 3.12 |
电话没接到怎么办? 系统最多重试3次,每次间隔5分钟。
语音识别准确吗? 中文准确率很高。如果环境吵,建议发文字。
接电话要钱吗? 不要,你接听完全免费。
飞书和微信冲突吗? 不冲突。两个通道的数据是互通的,你用哪个都行。
搜不到机器人? 联系管理员在飞书后台设置你的可用范围。