You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pyTelegramBotAPI开发Telegram Bot仅响应本人命令问题求助

问题错误点及修复方案

1. 代码逻辑错误

你当前代码中bot.send_message方法固定传入了你个人的ID作为收信对象,意味着无论哪个用户/群成员触发了start或help命令,Bot都会把响应消息发送到你的个人账号,其他成员自然收不到任何回复。
你需要将固定ID替换为动态获取当前触发消息的对话ID:message.chat.id,这样Bot才会把响应发送到触发命令的对应对话(可以是私人对话、群组、频道等)。

2. Bot隐私配置问题

如果修改代码后仍然没有响应,大概率是Telegram Bot默认开启的群隐私模式导致的:
隐私模式开启时,Bot仅能收到群内以下类型的消息:

  • 群管理员发送的消息
  • 内容中@了该Bot的消息
  • Bot自己发送的消息的回调回复
    你需要通过以下步骤关闭隐私模式:
  • 找到@BotFather,发送/setprivacy命令
  • 选择你正在开发的Bot,将隐私模式设置为Disable即可

3. 额外权限检查

确认你已经将Bot添加到目标群组中,且给Bot分配了发送消息的权限,部分限制普通成员发言的群组需要给Bot设置管理员权限才能正常发消息。


修正后的代码示例

import telebot

# 注意你需要先初始化bot实例,填入你从BotFather获取的token
bot = telebot.TeleBot("你的Bot Token")

@bot.message_handler(commands=['start', 'help'])
def send_welcome(message):
  # 用动态获取的chat.id替代固定ID
  bot.send_message(message.chat.id,"Thanks for adding me!!")

bot.infinity_polling()

内容的提问来源于stack exchange,提问作者Anandakrishnan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 21:54:04