Как с помощью callback_query_handler вызывать register_next_step_handler в pytelegrambotapi? В общем как сделать что бы код заработал

@bot.callback_query_handler(func=lambda call: call.data == '1')
def call_register_user(call):
    bot.send_message(
        call.message.chat.id,
        messages.enter_user_login,
        parse_mode='HTML')

    bot.register_next_step_handler(message=call.message, callback=call_step_set_login)


def call_step_set_login(call):
    if call.message.text.lower() == messages.abort_world:
        bot.send_message(
            call.message.chat.id,
            messages.abort_phrase,
            parse_mode='HTML')
        return

    data: dict = {}
    data['login'] = call.message.text

    bot.send_message(
        call.message.from_user.id,
        messages.enter_user_password)

    bot.register_next_step_handler(call, call_step_set_password, data)

а еще лучше чтобы call_register_user работал от команды /register_user, чтобы один и тот же обработчик можно было запускать и от inline кнопки и от команды и проходить регистрацию:

@bot.message_handler(commands=['register_user'])
def register_user(message):
    bot.send_message(
        message.from_user.id,
        messages.enter_user_login,
        parse_mode='HTML')

    bot.register_next_step_handler(message, step_set_login)


def step_set_login(message):
    if message.text.lower() == messages.abort_world:
        bot.send_message(
            message.from_user.id,
            messages.abort_phrase,
            parse_mode='HTML')
        return

    data: dict = {}
    data['login'] = message.text

    bot.send_message(
        message.from_user.id,
        messages.enter_user_password)

    bot.register_next_step_handler(message, step_set_password, data)

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