Задать вопрос
@raijin57
Начинающий амбициозный программист

Как заставить бота ожидать ввода следующей строки?

Добрый день. Столкнулся с проблемой по ходу написания Telegram бота на Python
@bot.message_handler(chat_id=[], commands=['msg'])
def admin_rep(message):
 if message.text == '/msg':
  bot.send_message(chat.id, 'Введите сообщение')
  send = message.text
 bot.send_message(chat.id, send)

Идея в том, что после того как я пишу '/msg' бот ждет следующего сообщения и помещает его в переменную send. В нынешнем варианте бот сразу же отвечает
"Введите сообщение
/msg"
  • Вопрос задан
  • 343 просмотра
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
@ultraevs
Student
Вам необходим register_next_step_handler

@bot.message_handler(chat_id=[], commands=['msg'])
def admin_rep(message):
    if message.text == '/msg':
        bot.send_message(message.chat.id, 'Введите сообщение')
        bot.register_next_step_handler(message, step)


def step(message):
    text = message.text
    bot.send_message(message.chat.id, text)


почитать про него можно тут: https://github.com/eternnoir/pyTelegramBotAPI/blob...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы