问题描述
我正在做一个机器人主持人。我正在执行命令“禁止”。如果我通过输入/ban
回复某人的消息,则bot应该获取其ID并限制他。
现在我的代码:
@bot.messsage_handler(commands=['ban'])
def ban(message):
#here I should get the id of a user which I replied in Telegram
#then bot should restrict him.
PyTelegramBotApi
python 3.7
谢谢
解决方法
您可以在30秒后以最低限制用户。 限制代码:
bot.restrict_chat_member(message.chat.id,message.from_user.id,can_send_messages=False,until_date=int(time.time())+30)
#you can replace 30(seconds) by more.
宇宙时间
,在Message
类中,您有一个reply_to_message
,它返回一个Message
对象,并且您可以从该对象中找到用户ID。如果用户未回复任何消息,则等于None
。这就是您想要的:message.reply_to_message.from_user
如果您想了解更多信息,可以从Telegram bot API阅读或在github库中查看types.py。