Бот отправляет несколько сообщений на запрос

Всем привет! Написал бота на telebot, но есть проблема, то что в случае ошибки пользователя (нажатие на кнопку 2 раза, либо введет команду /start >=2 раз), бот отправляет несколько сообщений, в зависимости, от количества нажатых кнопок. Видел кучу ответов на такой вопрос, то что рекомендуют использовать bot.polling(skip_pending=True) также вставлял и в bot = telebot.TeleBot('token', skip_pending=True), также писал и bot.infinity_polling() и bot.infinity_polling(skip_pending=True), ну и bot.delete_webhook() - не помогло, на форуме перерыл, ничего не нашел другого.

Как можно решить данную проблему? Для лучшего понимания, вот скрин: введите сюда описание изображения

Ну и собственно, пример кода:

import telebot

bot = telebot.TeleBot(token)


@bot.message_handler(commands=['start', 'help'])
def main(message):
    button = types.ReplyKeyboardMarkup(resize_keyboard=True)
    button.add(types.KeyboardButton('Привет'))
    msg = bot.send_message(message.chat.id, 'Привет', reply_markup=button)
    bot.register_next_step_handler(msg, next)

@bot.message_handler(func=lambda m: True)
def next(message):
    if message.text == 'Привет':
        hi(message)

@bot.message_handler(func=lambda m: True)
def hi(message):
    bot.send_message(message.chat.id, 'Да, привет, как дела?')

bot.polling(skip_pending=True)

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