Я использую python -telegram-bot wrapper.
Для команды, вызываемой с помощью '/', у меня есть следующий метод:
def advice(update, context):
with open ("advice.txt", "rt") as file_advice:
line=file_advice.readlines()
advice_message=random.choice(line)
context.bot.send_message(chat_id=update.effective_chat.id, text=advice_message)
advice_handler = CommandHandler('advice', advice)
dispatcher.add_handler(advice_handler)
Я хочу этот метод вызываться во встроенном режиме, когда набирается '/ advice', и во всех остальных случаях вывод не должен быть.
Я знаком с примерами от разработчиков-оболочек, где они показывают следующий код:
def inline_caps(update, context):
query = update.inline_query.query
if not query:
return
results = list()
results.append(
InlineQueryResultArticle(
id=query.upper(),
title='Caps',
input_message_content=InputTextMessageContent(query.upper())
)
)
context.bot.answer_inline_query(update.inline_query.id, results)
inline_caps_handler = InlineQueryHandler(inline_caps)
dispatcher.add_handler(inline_caps_handler)
Я пытался поменять query.upper()
на advice(update, context)
, но есть разные ошибки в неизвестном типе, поэтому кажется, что я не знаю, что делаю.