Как записать сообщение пользователя в переменную не используя bot.register_next_step_handler?
db = SQlighter("mydb.db") # connect to db
def add_to_database(message):
bot.send_message(message.chat.id, "Enter your id:")
var = message.text
db.add_user(var)
Когда эта функция начинает работать, после сообщения "Enter your id:" она сразу же заканчивается, то есть пользователь не успевает ввести свой id, так как сделать так, чтобы после "bot.send_message(message.chat.id, "Enter your id:")" функция ждала, пока пользователь введет свой id и только потом продолжила себя выполнять? (кроме bot.register_next_step_handler)
Условно скажем у моего бота есть команда /addinf (добавить какую-нибудь инф в БД), в коде эта команда у меня обрабатывается через функцию add_inf, в которой я сначала прошу пользователя ввести информацию, а затем сохраняю ее в БД. И проблема в том, что я не могу и спросить информацию и поместить ее в БД в одной и той же функции, поскольку пока пользователь введет информацию, бот уже выполнит все тело функции, не дожидаясь сообщения пользователя:
def add_inf(message):
bot.send_message(message.chat.id, "Okay, enter the inf")
db.add_inf(message.text)
Приходится создавать отдельную функцию для записи в БД и использовать bot.register_next_step_handler:
def add_inf(message):
bot.send_message(message.chat.id, "Okay, enter the inf")
bot.register_next_step_handler(message, add_to_db)
def add_to_db(message):
for el in db.edit_dbmsg(message.text):
db.add_game(el)
Но мне нужно чтобы была лишь одна функция "add_inf", которая будет и спрашиваю у пользователя информацию, и записывать ее в БД, подождав сообщения от пользователя