Как сделать чтобы message_handler работал по-разному
При выполнии команды /start все вроде нормально, появляется клавиатура, но после выбора специальности срабатывает код с функции adminKeyboard, а не с keyboard
Понимаю, что туплю на простом, но ответов как-то найти никак не могу...
def keyboard():
@dp.message_handler(Text(equals=["SMM", "Программист", "HR"]))
async def get_spec(message: types.Message):
await message.answer(f"Вы выбрали {message.text}. Спасибо!", reply_markup=ReplyKeyboardRemove())
db.add_speciality(message.from_user.id, message.text)
def adminKeyboard():
@dp.message_handler(Text(equals=["SMM", "Программист", "HR"]))
async def get_mess(message: types.Message):
await message.answer(f"Вы выбрали {message.text}. Пишите ваше сообщение!", reply_markup=ReplyKeyboardRemove())
@ dp.message_handler(commands=['start'])
async def subscribe(message: types.Message):
if(not db.subscriber_exists(message.from_user.id)):
# если юзера нет в базе, добавляем его
await bot.send_message(message.from_user.id, 'Привет\nВыбери свою специальность!', reply_markup=kb.markup1)
db.add_subscriber(message.from_user.id)
await message.answer("Вы успешно подписались на меня")
keyboard()
else:
# если он уже есть, то просто обновляем ему статус подписки
db.update_subscription(message.from_user.id, True)
await message.answer("Вы уже подписаны на меня")
@ dp.message_handler(commands=['message'])
async def isAdmin(message: types.Message):
if(db.admin_exists(message.from_user.id)):
await bot.send_message(message.from_user.id, 'Выберите кому хотите отправить сообщение!', reply_markup=kb.markup2)
adminKeyboard()