-
Notifications
You must be signed in to change notification settings - Fork 0
Troubleshooting
Kana edited this page May 17, 2026
·
1 revision
本文整理 InboxBridge 部署和运行时最常见的问题。
症状:
Invalid input: expected string, received undefined
TELEGRAM_BOT_TOKEN
TELEGRAM_MANAGEMENT_CHAT_ID
处理:
- 确认当前命令在仓库根目录执行。
- 确认文件名是
.env,不是.env.example。 - 确认变量名没有拼错。
- 确认等号两侧没有多余空格。
- 如果用 PM2 或面板启动,确认工作目录是项目根目录。
常见原因:
-
TELEGRAM_MANAGEMENT_CHAT_ID填错。 - bot 没有加入管理群。
- 管理群不是 supergroup。
- 使用了用户 ID 或普通群 ID,而不是管理群 ID。
处理:
npm run telegram:check确认输出中的 chat id、type 和 is_forum。
bot 在群里,但没有创建 Topic 的权限。
处理:
- 打开管理群设置。
- 将 bot 提升为管理员。
- 授予管理 topics 权限。
- 重新运行:
npm run telegram:check
TELEGRAM_CHECK_TOPIC_TEST=true npm run telegram:check通常说明数据库记录的 Topic 已被删除或失效。
当前版本会在下一次用户来信时清理旧会话并重建 Topic。如果需要手动处理,可在确认无误后删除对应会话数据,或等待用户再次发消息触发重建。
检查:
- 当前发送者的 Telegram user_id 是否在
TELEGRAM_ADMIN_USER_IDS中。 - 消息是否发在正确的用户 Topic 内。
- 消息是否以
/开头。命令不会外发。 - bot 是否能收到群内消息。
- BotFather privacy mode 是否影响当前群消息接收。
可先在 Topic 内发送:
/whoami
/info
如果命令无响应,说明 bot 没收到消息或管理员白名单不匹配。
Telegram 客户端会缓存 bot 命令菜单。
处理:
- 重启 Telegram 客户端。
- 切换聊天再回来。
- 确认服务启动时没有报错。
- 重新运行 bot,让
setMyCommands再注册一次。
旧版本曾使用不适合 FreeBSD 的原生依赖。当前版本已移除这类依赖。
建议:
rm -rf node_modules
npm ciServ00 用户请参考 Serv00 部署指南。
当前脚本不直接执行 tsc,而是使用:
node ./node_modules/typescript/bin/tsc -p tsconfig.json如果仍出现该问题:
- 确认
package.json已更新。 - 删除
node_modules后重新npm ci。 - 确认没有使用旧的全局脚本。
AI 草稿失败不会影响消息转发。
检查:
AI_DRAFTS_ENABLED=true-
OPENAI_COMPATIBLE_BASE_URL是合法 URL。 -
OPENAI_COMPATIBLE_API_KEY已填写。 -
OPENAI_COMPATIBLE_MODEL已填写。 - 服务商没有拦截或限流。
不需要 AI 时可关闭:
AI_DRAFTS_ENABLED=false检查:
-
DEFAULT_CONVERSATION_RETENTION_DAYS是否为正整数或never。 - 当前会话是否被
/expire never覆盖。 -
CONVERSATION_EXPIRY_SWEEP_INTERVAL_MINUTES是否设置过大。 - bot 是否一直在运行。扫描只在进程运行时发生。
查看当前会话策略:
/expires
提交前建议执行:
git diff
npm run verify确认没有提交:
.envdata/*.sqlite- Telegram bot token
- AI API key
- 用户导出数据
- 备份文件