[英]How to forward a message using python-telegram-bot
I'm writing a telegram bot group administrator using python-telegram-api and I want my bot to reply to messages in groups like this but the only similar thing I can get with it is this .我使用的是写了一封电报机器人组管理员蟒蛇,电报的API ,我想我的机器人在团体回复邮件是这样,但唯一类似的事情,我可以用它得到的是这个。 Is there a way to reply to messages like in the first picture?有没有办法像第一张图那样回复消息?
from telegram.ext import (Updater, CommandHandler, MessageHandler,
Filters, ConversationHandler)
import telegram
import logging
telegram_token = "BOT TOKEN"
updater = Updater(token=telegram_token, use_context=True);
dispatcher = updater.dispatcher;
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %
(message)s', level=logging.INFO);
def mesgs_hand(update, context):
if(update.message.text == "Hi"):
context.bot.forward_message(chat_id=update.effective_chat.id,
from_chat_id=update.effective_chat.id,
message_id=update.message.message_id, text="Hey there!");
#this method forwards the message but without adding 'Hey there!'
elif(update.message.text == "Hello"):
context.bot.send_message(chat_id=update.message.chat_id, text="Hello!");
#this method just replies to the message without forwarding
messages_handler = MessageHandler(Filters.text, mesgs_hand)
dispatcher.add_handler(messages_handler)
def bot():
updater.start_polling();
if __name__ == "__main__":
bot();
You can use the reply_to_message_id
argument in the send_message
function:您可以在send_message
函数中使用reply_to_message_id
参数:
def mesgs_hand(update, context):
if(update.message.text == "Hi"):
context.bot.send_message(
chat_id=update.message.chat_id,
reply_to_message_id=update.message.message_id,
text="Hey there!")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.