bot.message_handler(commands=['quiz'])
def quiz_questions(message):
chat_id = message.chat.id
user_scores = scores.get(chat_id, 0)
score_message = f"Текущий счёт: {user_scores}"
bot.send_message(chat_id, score_message)
for num, question in enumerate(questions):
options = telebot.types.ReplyKeyboardMarkup(one_time_keyboard=True)
ans_options = answers[num]
options.add(telebot.types.KeyboardButton(ans_options[0]))
options.add(telebot.types.KeyboardButton(ans_options[1]))
options.add(telebot.types.KeyboardButton(ans_options[2]))
options.add(telebot.types.KeyboardButton(ans_options[3]))
question_message = f"{num+1}. {question}"
bot.send_message(chat_id, question_message, reply_markup=options)
bot.register_next_step_handler(message, check_answer, num)
def check_answer(message, question_num):
chat_id = message.chat.id
user_answer = message.text
correct_answer = correct_answers[question_num]
if user_answer == correct_answer:
user_scores = scores.get(chat_id, 0)
user_scores += 1
scores[chat_id] = user_scores
reply_message = "Правильно!"
else:
reply_message = "Неправильно."
bot.send_message(chat_id, reply_message)
@bot.message_handler(content_types=['text']) #Создаём новую функцию ,реагирующую на любое сообщение
def message_input_step(message):
print('ожидание сообщения')
asf = message.text
bot.send_message(message.chat_id, text=f"сообшение от:{message.chat.id}\nСообщение:{asf}")
bot.reply_to(message, 'отправленно')
bot.register_next_step_handler(message, message_input_step,) #запускаем созданую функцию выше