Бот не обрабатывает сразу текст, который получил от пользователя в результате нажатие на REPLY кнопку. PyTelegramBotAPI

Проблема вот в чём. При нажатии на Reply кнопку бот переходит на следующую функцию, но не обрабатывает сразу текст, из-за этого пользователю приходиться нажимать на кнопку 2 раза, чтобы в первый раз бот перешёл во 2 функцию (schedule), а при втором нажатии уже срабатывает if message.text == '↩️Назад'.

Помогите разобраться в чём проблема, что бот сразу переходил в следующую функцию и считывал текст, А НЕ ПО ОТДЕЛЬНОСТИ это делал.

КОД:

def start(message):
    markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
    btn1 = types.KeyboardButton('?VK-сайт школы')
    btn2 = types.KeyboardButton('?Веб-Сайт школы')
    markup.row(btn1, btn2)
    btn3 = types.KeyboardButton('?Расписание')
    btn4 = types.KeyboardButton('?Помощь')
    markup.row(btn3, btn4)
    bot.send_message(message.chat.id,
                     f'⭐️ Привет, {message.from_user.first_name}! ⭐'
                             f'\n? Это бот, который покажет тебе расписание уроков и звонков в "МОУ СОШ №9".'
                             f'\n? Список кнопок, которые ты можешь ввести:'
                             f'\n\n? "VK-сайт" - Кнопка, отвечающая за переход на VK-сайт школы.'
                             f'\n? "Веб-сайт" - Кнопка, отвечающая за переход на Веб-сайт школы.'
                             f'\n? "Расписание" - Кнопка, отвечающая за расписание на неделю.'
                             f'\n? "Помощь" - Кнопка, отвечающая за связь с разработчиком на случай неполадок или с предложениями по улучшению бота.', reply_markup=markup)
    bot.register_next_step_handler(message, button_click)

def button_click(message):
    if message.text == '?VK-сайт школы':
        bot.send_message(message.chat.id, 'https://vk.com/public186574313')
        bot.register_next_step_handler(message, button_click)
    elif message.text == '?Веб-Сайт школы':
        bot.send_message(message.chat.id, 'https://ust-kut9.irkutschool.ru/')
        bot.register_next_step_handler(message, button_click)
    elif message.text == '?Помощь':
        bot.send_message(message.chat.id, '? Если ты нашёл ошибку в боте, расписание или у тебя есть предложения по поводу улучшения бота, то можешь сообщить об это администрации бота: ?'
                     '\n@')
        bot.register_next_step_handler(message, button_click)
    elif message.text == '?Расписание':
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
        btn1 = types.KeyboardButton('?Расписание Уроков')
        btn2 = types.KeyboardButton('?Расписание Звонков')
        markup.row(btn1, btn2)
        btn3 = types.KeyboardButton('↩️Назад')
        markup.row(btn3)
        bot.send_message(message.chat.id, '✅Что ты хочешь выбрать?', reply_markup=markup)
        bot.register_next_step_handler(message, schedule)

def schedule(message):
    if message.text == '↩️Назад':
        bot.register_next_step_handler(message, start)

Ответы (0 шт):