Проблема в написании тг бота на библиотеке aiogram на языке python
У меня возникла проблема в том, что надо вызвать функцию с аргументом message из функции с аргументом callback, я перепробовал множество способов но все они либо были слишком запутанными, либо не рабочими в моей ситуации
Функция из которой нужно вызвать:
@dp.callback_query_handler(text='odd_casik')
async def even_number(callback: types.CallbackQuery):
await randomizer(callback)
if random_number % 2 == 0:
await callback.message.answer(f'Выпало: {random_number}. Вы проиграли!!!')
await casino_state_bet(message, state)
else:
await callback.message.answer(f'Выпало: {random_number}. Вы выиграли!!!')
await casino_state_bet(message, state)
Функция которую нужно вызвать:
async def casino_state_bet(message: types.Message, state: FSMContext):
global bet_pl
await sqlite.balance_info(message)
async with state.proxy() as data:
data['bet'] = message.text
bet_pl = int(data['bet'])
if bet_pl > sqlite.balance:
await message.answer('Недостаточно средств!!!')
await state.finish()
await casino_bet_message(message)
else:
await message.answer('На что хотите поставить?', reply_markup=btn_casik)
await state.finish()
Ответы (1 шт):
Автор решения: oleksandrigo
→ Ссылка
Вот так
@dp.callback_query_handler(text='odd_casik')
async def even_number(callback: types.CallbackQuery):
await randomizer(callback)
if random_number % 2 == 0:
await callback.message.answer(f'Выпало: {random_number}. Вы проиграли!!!')
await casino_state_bet(callback.message, state)
else:
await callback.message.answer(f'Выпало: {random_number}. Вы выиграли!!!')
await casino_state_bet(callback.message, state)
Я даже посмеялся чуток, вы сами же в этом же хендлере обращаетесь к месседжу и при этом спрашиваете как это сделать =)