OpenClaw Telegram 集成成功但不回复:Webhook / 409 / 权限完整排查(2026)

你看到的症状通常是这几类:

下面给你一套从 0 到 1 的排查顺序。按顺序执行,通常 10–20 分钟能定位问题。

0) 先确认:你现在是 webhook 模式,还是 polling 模式?

不要混用。最常见故障就是:一个实例在 webhook,另一个实例还在 polling(或反过来)。

先跑:

openclaw status
openclaw gateway status
openclaw logs --follow

如果是 systemd 管理:

openclaw gateway status
journalctl --user -u openclaw-gateway --no-pager -n 100

1) 先排 409 Conflict(最高频)

典型报错

根因

同一个 Telegram Bot Token 被多个进程同时消费更新(最常见是旧进程没关、另一台机器还在跑、或测试脚本也在拉 updates)。

处理步骤

# 1) 停掉当前节点上的 OpenClaw
openclaw gateway stop

# 2) 查残留进程(按需)
ps aux | grep -E "openclaw|node" | grep -v grep

# 3) 仅保留一个实例后再启动
openclaw gateway start
openclaw gateway status

如果你在多机部署,确保只有一个生产实例使用这个 token。


2) 检查 Telegram Bot Token / 环境变量是否被服务进程读到

你在 shell 里能跑,不代表 systemd 服务能读到同样的环境变量。

# 查看服务日志是否有 token/认证相关报错
journalctl --user -u openclaw-gateway --no-pager -n 100

# 常见做法:放到 ~/.openclaw/.env
cat ~/.openclaw/.env

如果缺失,补上后重启:

# 示例,按你的实际 key 填写
cat >> ~/.openclaw/.env <<'EOF'
TELEGRAM_BOT_TOKEN=123456:xxxxxx
EOF

openclaw gateway restart
openclaw gateway status

3) 检查 webhook 连通性(公网部署重点)

如果用 webhook,Telegram 服务器必须能访问你的 OpenClaw webhook 地址。

必查项

  1. 域名可解析
  2. 443 端口可达
  3. 反向代理(Nginx/Caddy/Cloudflare Tunnel)没有把请求拦掉
  4. 证书有效(HTTPS)

快速自检

# 本地检查 gateway 运行状态
openclaw gateway status --deep

# 检查本机监听(端口号按你配置)
ss -tlnp | grep -E "18789|443|80"

# 反代日志(Nginx 示例)
sudo tail -n 100 /var/log/nginx/access.log
sudo tail -n 100 /var/log/nginx/error.log

如果你不想折腾本地网络穿透和家庭宽带稳定性,直接上 VPS 最省时间(2 vCPU / 2GB 就够):


4) 群聊里不回复:重点看 Bot 权限与隐私模式

很多人私聊测试正常,一拉群就“失灵”。

先核对

实操建议


5) 消息到了但仍无回复:看模型与上游 API

OpenClaw 收到消息后,还依赖模型提供商返回内容。上游失败会表现为“像是 Telegram 坏了”。

openclaw status
openclaw logs --follow

重点看:

如果是网络不稳定地区,建议配置 fallback,避免单模型故障导致完全静默。


6) 一键修复顺序(实战可直接照抄)

# A. 停服务
openclaw gateway stop

# B. 清理冲突实例(仅保留一个)
ps aux | grep -E "openclaw|node" | grep -v grep

# C. 校验配置与环境变量
openclaw status
cat ~/.openclaw/.env

# D. 启动并观察
openclaw gateway start
openclaw gateway status --deep
openclaw logs --follow

如果仍失败,再补:

openclaw doctor --deep
openclaw doctor --repair --force
openclaw gateway restart

FAQ

Q1)应该选 polling 还是 webhook?

单机部署优先 polling,配置更简单、稳定性更高。只有在你明确需要公网回调且 HTTPS/反代稳定时,再考虑 webhook。

Q2)为什么私聊正常,群里不回复?

高频原因是 Telegram 隐私模式或群策略白名单未放行。重点复查 BotFather 隐私设置、群权限,以及 channels.telegram.groupPolicy/groupAllowFrom

Q3)token/webhook 都修好了还是不回复怎么办?

马上看模型层日志(openclaw logs --follow)。上游 key 无效、额度用尽、请求超时,都会表现成“Telegram 不回”。

结论:90% 的 Telegram“不回复”是这三类

  1. 重复实例冲突(409)
  2. Webhook 公网连通性问题
  3. 服务环境变量和实际运行环境不一致

先把这三项收敛,再看模型侧日志,定位速度会非常快。

延伸阅读

这篇文章有帮助吗?

💬 评论