Получение нескольких вариантов на один и тот же ответ с контактом библиотека telebot / python / telegram

Помогите разобраться как сделать, и реализовать, чтобы бот по-разному реагировал на присланный юзером контакт? Надо, чтобы при нажатии разных контактных кнопок kb.rkbu3 и kb.rkbu8, из разного подменю, контактный хэндлер по-разному реагировал, и отправлял пользователя в разные разделы далее по боту. Может я что не так делаю, но при нажатии любой из контактных кнопок из разных меню, предлагает вариант первой контактной кнопки, т.е. самого первого хендлера. Другими словами как сделать несколько разных вариантов ответа на присланный юзером, один и тоже вариант контакта, или разделить получение контакта этого)? Благодарю!

@bot.message_handler(regexp=f'^{lg.rbtn5e}$') # ожидает нажатии 'Сообщить' предлагает контактную кнопку botton_phone
def phone(message):
    bot.send_message(message.chat.id, lg.hello6e, reply_markup=kb.rkbu3)

@bot.message_handler(content_types=['contact'])
def contact(message):
    if message.contact is not None:
            bot.send_message(message.chat.id, lg.hello6u + message.from_user.first_name + lg.hello7e, reply_markup=kb.rkbu4)

@bot.message_handler(regexp=f'^{lg.ibtn6u}$') # ожидает нажатии '(SIP)' предлагает контактную кнопку botton_phone2
def phone(message):
    bot.send_message(message.chat.id, lg.hello6e)

@bot.message_handler(content_types=['contact'])
def contact(message):
    if message.contact is not None:
            bot.send_message(message.chat.id, lg.hello12e, reply_markup=kb.rkbu9)

@bot.callback_query_handler(func=lambda c: True)
def cbinline(c):
    if c.data == lg.ibtn6u:
        bot.send_message(c.message.chat.id, lg.wbtn6u, reply_markup=kb.rkbu8)

KB #Фаил с кнопками

button_phone = types.KeyboardButton(lg.rbtn4u, request_contact=True)
button_phone2 = types.KeyboardButton(lg.rbtn7u, request_contact=True)
#startcontact kb
rkbu3 = trkm(True, True, row_width=1)
rkbu3.add(button_phone)
#endcontact kb
rkbu4 = trkm(row_width=1, resize_keyboard=True)
rkbu4.add(lg.rbtn5u)
#startcontact2 kb
rkbu8 = trkm(True, True, row_width=1)
rkbu8.add(button_phone2)
#endcontact2 kb
rkbu9 = trkm(row_width=1, resize_keyboard=True)
rkbu9.add(lg.rbtn7e)

LG #Фаил с текстом

rbtn4u = "☎️ Отправить Ваш контакт"
rbtn7u = "☎️ Отправить Ваш контакт 1"
rbtn5e - "Cообщить"
rbtn5u = "Начать поиск"
hello6e - "Подтвердите Ваш номера телефона ?"
hello6u = "? Благодарю!"
hello7e = "\n\n✓  Позвольте мне наконец, предложить Вам оператора"
hello12e = "Сообщить 2"
rbtn7e = "Подтвердить заказ"
ibtn6u = "(SIP)"
wbtn6n = "Прекрасный выбор!"

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

Автор решения: Violet

не самое элегантное решение, да это не тот вариант, что я скидывал в комментариях, но можно проверять что содержится в message.reply_to_message.text:

@bot.message_handler(commands=['start'])
def start(message):
    phone_btn = telebot.types.ReplyKeyboardMarkup(True, True)
    phone_btn.add(types.KeyboardButton(text='Отправить номер', request_contact=True))
    bot.send_message(message.chat.id, 'Введите номер', reply_markup=phone_btn)


@bot.message_handler(commands=['start1'])
def start(message):
    phone_btn = telebot.types.ReplyKeyboardMarkup(True, True)
    phone_btn.add(types.KeyboardButton(text='Отправить номер', request_contact=True))
    bot.send_message(message.chat.id, 'а можно номер?', reply_markup=phone_btn)


@bot.message_handler(content_types=['contact'])
def contact(message):
    if message.reply_to_message.text == 'Введите номер':
        print(message.reply_to_message.text)
        print(message.contact.phone_number)

    elif message.reply_to_message.text == 'а можно номер?':
        print(message.reply_to_message.text)
        print(message.contact.phone_number)
→ Ссылка
Автор решения: Lynx_eR

Для перхода в следующую функцию надо сначало объявить сообщение как у вас, но с переменной. К примеру - message228, но может быть любое название:

message228 = bot.send_message(message.chat.id, '',reply_markup = '')

и передать эту переменную в этот параметр:

bot.register_next_step_handler(message228, "Имя функции в которую нужно перекинуть пользователя")
→ Ссылка