Почему игнорируется второй хендлер aiogram 3?
Использую FSM
class pub(StatesGroup):
auth_info = State()
auth_city = State()
auth_caption = State()
auth_photo = State()
auth_result = State()
auth_bh = State()
Код:
@dp.callback_query(pub.auth_result)
async def callbacks_city(callback: CallbackQuery, state: FSMContext):
if callback.data == "yes":
data = await state.get_data()
auth_info = data.get("auth_info")
auth_city = data.get("auth_city")
auth_caption = data.get("auth_caption")
auth_photo = data.get("auth_photo")
button1 = InlineKeyboardButton(text="Да", callback_data="select_yes")
button2 = InlineKeyboardButton(text="Нет", callback_data="select_no")
button3 = InlineKeyboardButton(text="Бан", callback_data="select_ban")
keyboard = InlineKeyboardMarkup(inline_keyboard=[[button1], [button2], [button3]])
redact = await bot.send_photo(chat_id=-1002047364016, photo=auth_photo, caption=auth_caption, reply_markup=keyboard)
await bot.send_message(-1002047364016, f"Город: {auth_city}\nID автора: {auth_info}")
await callback.message.answer("Объявление отправлено на модерацию.")
await state.update_data(auth_result=redact)
await state.set_state(pub.auth_bh)
else:
await state.update_data(auth_result="yes")
await callback.message.answer("Публикация отменена!")
await state.clear()
@dp.callback_query(pub.auth_bh)
async def calks_city(callback: CallbackQuery, state: FSMContext):
await state.update_data(auth_bh="Ура, епт")
if callback.data == "select_yes":
data = await state.get_data()
auth_info = data.get("auth_info")
auth_city = data.get("auth_city")
auth_caption = data.get("auth_caption")
auth_photo = data.get("auth_photo")
auth_result = data.get("auth_result")
username = (await bot.get_chat(auth_info)).username
if username:
link=f"https://t.me/{username}"
else:
link=f"tg://openmessage?user_id={auth_info}"
button1 = InlineKeyboardButton(text="Опубликовать обьявление", url="не скажу")
button2 = InlineKeyboardButton(text="Автор объявления", url=link)
keyboard = InlineKeyboardMarkup(inline_keyboard=[[button1], [button2]])
if auth_city == "Тюмень":
CHATID = tumen_id
else:
CHATID = null_id
await bot.send_photo(chat_id=CHATID, photo=auth_photo, caption=auth_caption, reply_markup=keyboard)
await bot.send_message(-1002047364016, f"Одобрено! Модератор: {callback.from_user.id}", reply_to_message_id=auth_result.id)
await bot.send_message(auth_info, f"Ваше обьявление опубликовано модераторами!")
await state.clear()
else:
data = await state.get_data()
auth_info = data.get("auth_info")
auth_city = data.get("auth_city")
auth_caption = data.get("auth_caption")
auth_photo = data.get("auth_photo")
auth_result = data.get("auth_result")
await bot.send_message(-1002047364016, f"Отказ! Модератор: {callback.from_user.id}", reply_to_message_id=auth_result.id)
await bot.send_message(auth_info, f"Ваше обьявление отклонено модераторами!")
await state.clear()
Конечно это не весь код, но проблема зарыта где то здесь