Как сделать принятие клавишы при нажатие приходит юзеру сообщения Aiogram 3

@router.callback_query(F.data == 'accept')
        async def accept_action(callback: CallbackQuery, bot: Bot):
        other_user_id = 6623746189
        await bot.send_message(chat_id=other_user_id, text="Вы были приняты в группу!")
        await bot.answer_callback_query(callback_query_id=callback.id, text="Пользователь был принят!")
    
    @router.callback_query(F.data == 'decline')
    async def accept_action(callback: CallbackQuery, bot: Bot):
        other_user_id = 6623746189  
        await bot.send_message(chat_id=other_user_id, text="Вас не приняли в группу.")
        await bot.answer_callback_query(callback_query_id=callback.id, text="Ваша заявка отклонена.")

    accept_decline = InlineKeyboardMarkup(inline_keyboard=[
        [
            InlineKeyboardButton(text="Принять", callback_data=f"accept"),
            InlineKeyboardButton(text="Отклонить", callback_data="decline")
        ]
    ])

Как сделать обработку при нажатии принять юзеру приходило сообщение что бы не вводит его юзер id


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

Автор решения: user580418
@router.callback_query(lambda c: c.data and c.data.startswith('accept'))
async def accept_action(callback_query: types.CallbackQuery, bot: Bot):
    data = callback_query.data.split("_")
    other_user_id = 6623746189
    await bot.send_message(chat_id=data[1], text="Вы были приняты в группу!")
    await bot.answer_callback_query(callback_query_id=callback_query.id, text="Пользователь был принят!")


@router.callback_query(lambda c: c.data and c.data.startswith('decline'))
async def accept_action(callback_query: types.CallbackQuery, bot: Bot):
    data = callback_query.data.split("_")
    other_user_id = 6623746189
    await bot.send_message(chat_id=data[1], text="Вас не приняли в группу.")
    await bot.answer_callback_query(callback_query_id=callback_query.id, text="Ваша заявка отклонена.")


accept_decline = InlineKeyboardMarkup(inline_keyboard=[
    [
        InlineKeyboardButton(text="Принять", callback_data=f"accept_{ID}"),
        InlineKeyboardButton(text="Отклонить", callback_data=f"decline_{ID}")
    ]
])

Вроде бы так.Т.е. вы при отправке кнопок добавляете user id и при нажатии на них код получает данные с ID

→ Ссылка