Skip to content

[社区] Telegram 群组 Bot 无响应:BotFather privacy mode 和 pairing 审批排查

问题

将 OpenClaw Bot 添加到 Telegram 群组后,Bot 在群里完全不响应(私信正常)。常见原因有两个:

原因一:BotFather 的 privacy mode 阻止了消息接收

Telegram Bot 默认开启 privacy mode,只能接收 / 开头的命令,无法接收普通群组消息和 @提及。

原因二:群组加入请求未完成 pairing 审批

OpenClaw 要求新群组先完成 pairing 配对才能响应。Bot 加入群组时会产生 pairing request,但不会自动审批。

解决方案

第一步:审批群组 pairing

bash
# 查看待审批的 pairing 请求
openclaw pairing list

# 审批 Telegram 群组
openclaw pairing approve telegram CHAT_ID

CHAT_ID 可在 Gateway 日志中找到(Bot 加入时会记录群组 ID)。

第二步:配置 BotFather privacy 设置

方案 A - 在 BotFather 中关闭 privacy mode(推荐):

# 在 Telegram 中向 @BotFather 发送:
/setprivacy
# 选择你的 Bot,然后选择 "Disable"

方案 B - 保持 privacy mode,在 OpenClaw 中配置 requireMention: true

json5
{
  channels: {
    telegram: {
      requireMention: true,
    },
  },
}

这样群组成员需要 @Bot 才能触发响应,与 Telegram 的 privacy mode 一致。

注意:OpenClaw 无法自动读取 BotFather 的 privacy 设置,如果 requireMention: false 但 privacy mode 开启,Bot 将无法接收到消息,也不会报错——只会静默不响应。

诊断命令

bash
# 查看渠道状态(含 probe)
openclaw channels status --probe

# 查看最近日志(找到群组 ID 和 pairing 请求)
openclaw logs --channel telegram --tail 50