Доброго времени суток.
Нужен код, который начинает брать от пользователя информацию из телеграм бота, которую пользователь вводит в чат, для дальнейшей обработки.
Есть такая реализация через bot.register_next_step_handler.
def ur_name(message):
msg = bot.send_message(message.chat.id, 'Здравствуйте, введите пожалуйста ваше имя') #запрашиваем имя
bot.register_next_step_handler(msg, ur_secondname) #отправляем ответ в следующую функцию
def ur_secondname(message):
user_data = {} #создаем словарь
user_data['firstname'] = message.text #записываем имя в словарь
msg = bot.send_message(message.chat.id, 'Введите пожалуйста вашу фамилию') #запрашиваем фамилию
bot.register_next_step_handler(msg, ur_phone, user_data) #отправляем ответ в следующую функцию, где так же записываем фамилию и просим телефон и так далее
В общем все работает, но есть одно но, например если пользователь сделает опечатку или захочет остановить процесс, то последующие команды как /stop или повторный вызов любой команды будет восприниматься как текст и записываться в словарь, что с этим делать? Возможно есть способ брать информацию от пользователя получше?