Как создать и передать переменную с user_id из одного handler'а в другой? (Python, Aiogram)
Дана функция отзывов:
•По команде /fb пользователю отправляется сообщение
@dp.message_handler(Command('fb'))
async def fb(message: types.Message):
await message.answer('Напишите, что хотите отправить автору')
await fb_states.waiting_for_fb.set()
•После отправки отзыва присылается сообщение пользователю и админу
@dp.message_handler(state=fb_states.waiting_for_fb)
async def state1(message: types.Message, state: FSMContext):
markup = InlineKeyboardMarkup(row_width=2,
inline_keyboard=[
[
InlineKeyboardButton(text='Ответить', callback_data='answer'),
InlineKeyboardButton(text='Прочитано', callback_data='read')
]
])
user = message.from_user.username
answer = message.text
await state.finish()
await message.answer('Отзыв отправлен!')
for admin in admins:
try:
await dp.bot.send_message(chat_id=admin, text=f'Поступил отзыв от @{user}:\n'
f'"{answer}"', reply_markup=markup)
except Exception as err:
logging.exception(err)
•По нажатию у админа на кнопку "Ответить" присылается сообщение
@dp.callback_query_handler(text='answer', state=fb_states.waiting_for_answer)
async def state2(call: types.CallbackQuery):
await call.message.edit_reply_markup()
await call.message.answer('Напишите ответ на отзыв')
await fb_states.waiting_for_answer.set()
•После отправления админу приходит сообщение, но пользователю не приходит
@dp.message_handler(state=fb_states.waiting_for_answer)
async def state3(message: types.Message, state: FSMContext):
answer = message.text
await state.finish()
await message.answer('Ответ отправлен!')
try:
await dp.bot.send_message(chat_id=user_id, text=f'Поступил ответ на отзыв:\n'
f'"{answer}"')
except Exception as err:
logging.exception(err)
class fb_states(StatesGroup):
waiting_for_fb = State()
waiting_for_answer = State()
Нужно каким-то образом, чтобы во 2-ом handler'е создавалась переменная с user_id, которая потом бы использовалась в последнем handler'е для отправки сообщение пользователю. Помогите пожалуйста это реализовать!