Commit Graph

16 Commits

Author SHA1 Message Date
8cfcb09a9b fix(core): 🐛 修复消息ID类型转换并完善错误日志
在保存电报消息记录时,将 message_id 强制转换为字符串类型,以确保数据一致性。同时在捕获异常时添加 console.error 输出,以便于调试 Token 提交失败的问题。

- 转换 msg.message_id 为字符串格式
- 在 catch 块中记录详细的错误信息
- 优化了错误处理的逻辑结构
2026-05-05 00:54:04 +08:00
6eaf04e77b fix(core): 🛠️ 限制批量删除消息的最大数量为100
通过引入 MAX_BATCH_DELETE 常量,将单次批量删除消息的数量限制在 100 条以内。此更改提高了操作的安全性,防止因误操作或恶意请求导致的大规模数据删除,并同步更新了相关文档说明。

- 在 tg-bot.js 中添加 MAX_BATCH_DELETE 常量
- 重构部分代码逻辑以符合批量删除限制
- 更新 README.md,向用户明确单次删除上限为 100 条
2026-05-05 00:40:25 +08:00
4cd98f7fb3 refactor(core): ♻️ 重构 Telegram Bot 消息删除逻辑
实现更灵活的消息管理功能,包括支持单条删除、批量删除以及全量清空话题历史。

- 重构 tg-bot.js 中的删除指令解析逻辑
- 新增 handleAdminDeleteAll 处理全量删除请求
- 支持通过 /del N 指令进行批量删除
- 更新 README.md 文档,补充管理员侧的操作说明和权限说明
- 优化管理员编辑消息时的通知逻辑

此更改提高了管理员维护群组话题的效率,并清晰化了用户与管理员的权限边界。
2026-05-05 00:11:45 +08:00
4d66046d96 docs(core): 📝 更新 README 说明文档至 v3.68 版本
全面更新项目文档以匹配 v3.68 版本的功能变更。主要内容包括:

- 新增核心特点介绍,涵盖安全加固、双向删除及引用消息支持
- 细化用户体验优化、安全机制、功能模块及运行环境说明
- 更新默认配置参数说明,特别是媒体欢迎语的配置方式
- 补充正则安全检查机制、缓存机制及 API 调用策略等技术细节
- 重新整理管理员面板的功能模块划分,提升部署指引的可读性
2026-05-04 14:53:10 +08:00
8b39cf4fa9 fix(core): 🩹 修复验证逻辑并增加异常配置提示
优化 Telegram Bot 的验证逻辑判断流程,当验证功能由于配置问题不可用时,向用户发送明确的错误提示信息,提升系统的健壮性。

- 调整了 isQAOn 和 isCaptchaOn 的条件分支逻辑
- 增加配置异常时的兜底消息回复
- 确保验证流程在异常状态下能正确引导用户联系管理员
2026-05-04 14:50:24 +08:00
d66b74fd34 refactor(core): ♻️ 优化配置管理与正则匹配逻辑
针对 telegram 机器人和脚本逻辑进行了重构:
- 在 tg-bot.js 中新增 deleteCfg 函数,用于物理删除数据库配置并同步清除内存缓存,防止旧值误读。
- 在 sntp-rename.js 中提取了 normalizeKey 和 escapeRegex 工具函数,并改用数组展开运算符进行排序,提升了代码的健壮性和可读性。
2026-05-04 14:13:39 +08:00
66604fe575 docs(core): 📝 更新 README 说明文档以支持消息删除功能
在文档中新增了关于 `/del` 命令的使用说明,详细描述了用户和管理员如何通过该命令实现双向消息删除功能。同时优化了文档的整体结构排版,提高了内容的可读性。

主要变更内容:
- 在功能概览中加入 `/del` 命令介绍
- 在用户流程章节详细说明了用户侧与管理员侧的删除逻辑
- 明确了删除权限限制:用户仅能删除自己发送的消息
2026-05-04 02:56:55 +08:00
8e0a56c4ba refactor(core): ♻️ 限制用户仅能删除自己发送的消息
通过增加对回复消息发送者的校验,防止用户尝试删除管理员(Bot)回复的消息。当检测到目标消息来自 Bot 时,将拦截删除请求并向用户发送提醒。同时移除了一些冗余的日志打印和旧的数据库查询逻辑。
2026-05-04 02:52:21 +08:00
a870ebfe18 fix(core): 🐛 优化 Telegram 机器人消息 ID 查询逻辑
调整 tg-bot.js 中针对回复消息 ID 的处理逻辑。通过显式转换原始 ID 为字符串,并增加针对不同数据类型的回退查询机制,解决了由于数据库字段类型不匹配导致的删除请求映射失败问题。此外,增强了相关操作的日志输出以便于调试。
2026-05-04 02:49:41 +08:00
3cd76722ef fix(core): 🔊 增强电报机器人删除请求的日志记录
在 tg-bot.js 中添加了详细的控制台日志,用于记录用户 ID 和目标消息 ID。当消息映射未找到时,新增了调试提示,以便更好地追踪转发失败或数据库记录缺失的问题。
2026-05-04 02:45:04 +08:00
f6c0801352 fix(core): 🐛 修复 Telegram 机器人消息删除逻辑
优化消息删除流程,将原本删除命令消息改为优先删除被回复的目标消息。同时增加了更详细的错误日志输出,并更新了未找到记录时的用户提示语,使反馈更加清晰。

- 优先删除目标转发消息而非命令消息
- 增加对 targetMsgId 的类型转换处理
- 捕获并忽略删除失败的异常以提高稳定性
- 丰富了控制台调试日志和用户侧错误提示内容
2026-05-04 02:39:09 +08:00
d3cc09d9cf fix(core): 🐛 实现管理员删除消息功能
在管理员群组逻辑中添加了对 `/del` 命令的支持。当管理员对某条消息回复 `/del` 时,将触发 `handleAdminDelete` 函数,同时优化了管理员回复逻辑的判定结构。

- 新增 `handleAdminDelete` 处理函数用于处理消息删除指令
- 优化管理员群组内的条件分支判定
- 改进 handleAdminEdit 函数以主动通知用户消息变更内容
2026-05-04 02:36:16 +08:00
e749c4633f fix(core): 🐛 支持回复消息时的 Topic ID 关联
通过查询数据库中的消息记录,获取回复消息对应的 topic_message_id。这确保了在 Telegram 话题(Topics)中回复消息时,机器人能够正确关联并保持在相同的话题线内。

主要变更:
- 引入 topicReplyToMsgId 变量处理话题关联
- 增加数据库查询逻辑,根据 user_id 和 message_id 检索原始话题消息 ID
- 优化了特殊引用语法的降级渲染逻辑位置
2026-05-04 02:32:18 +08:00
737e83541d refactor(core): ♻️ 重构 Telegram Bot 安全机制与缓存逻辑
重构核心转发逻辑并引入多项安全加固措施,主要变更包括:

- 增强安全性:新增 Webhook secret 校验、WebApp initData 验证及 nonce 随机数检查。
- 优化缓存:升级缓存系统,新增管理员权限缓存(admin cache)以降低数据库 D1 的读写压力。
- 管理员匹配:优化管理员识别逻辑,支持精确匹配与正则表达式安全检查。
- 文档更新:在 README 中完善项目来源致谢,并详细说明 v3.68 版本的安全加固与无回执体验调整。

此版本重点提升了机器人在高频使用场景下的性能表现与防护能力。
2026-05-04 02:18:01 +08:00
c3437ae163 docs(core): 📝 完善项目文档并增强安全性
更新项目根目录 README.md 以更清晰地展示脚本集合架构,并为 Homebrew、Sub-Store 和 Telegram 模块新增详细的使用说明文档。

同时移除了 brew-upgrade-manager.sh 中的硬编码 sudo 密码,改为空字符串占位符以提升代码安全性。

- 增强根目录文档的可读性与结构
- 为每个子模块添加独立的 README.md
- 修复脚本中的敏感信息泄露问题 (SUDO_PWD)
2026-05-03 15:18:21 +08:00
2470bdc278 feat(core): 添加 Homebrew 智能升级管理脚本
新增 brew-upgrade-manager.sh 脚本,实现 Homebrew 自动化升级及 Cask 更新。引入 Python PTY 伪终端处理机制,修复了自动化过程中因终端尺寸导致的 Ruby 渲染崩溃问题,并对部分项目文件进行了归类整理。
2026-04-24 08:45:08 +08:00