telebot Проверка правильности ввода капчи

Делаю бота с капчей на телеграм. Никак не могу реализовать алгоритм проверки правильности ввода.

Есть база капчи в папке, у которой название файла(filename) совпадает с самой капчей. Мне нужно сравнивать отправленное сообщение с filename. Через некст степ можно передать только параметр мессадж.

Как это привести в человеческий вид и заставить работать. Данный алгоритм работает некорректно.

@bot.message_handler(regexp=('??‍?Начать зарабатывать')) #обрабатывает нажатие кнопки
def zarab(message):
    markup = types.ReplyKeyboardMarkup(True)
    markup.row('◀️ Главное меню')
    bot.send_message(message.chat.id, 'Go', reply_markup=markup)
    capcha(message)

def capcha(message): #присылает картинку с капчей
    global filename
    filename = random.choice(os.listdir("samples/"))
    captchaimg = open('samples/'+filename, 'rb')
    bot.send_photo(message.chat.id, captchaimg)
    capchas(message,filename)

def capchas(message, filename): #обрабатывает полученное сообщение-ответ на капчу
    if message.text == '◀️ Главное меню':
        glavnoeMenu(message)
    else:
        if message.text in filename:
            bot.register_next_step_handler(message, right)
        else:
            bot.register_next_step_handler(message, wrong)

def right(message):
    bot.send_message(message.chat.id, 'Красава')
    capcha(message)

def wrong(message):
    bot.send_message(message.chat.id, 'Неправильно, давай другую')
    capcha(message)

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