Как получить данные сообщения, которое отправил пользователь, а не переслал бот? Python - Aiogram 2.x
Столкнулся с такой проблемой, что если получать данные с помощью callback, то callback возвращает данные которые переслал бот, а не те которые отправляет пользователь. Как сделать, чтобы бот получал данные отправленного пользователем сообщения?
@dp.message_handler(content_types=['any'])
async def go(message: types.Message):
username = message.from_user.username
with open('config.py', 'r') as f:
a = f.readline()
b = int(a)
b += 1
with open('config.py', 'w+') as f:
f.write(str(b))
markup = types.InlineKeyboardMarkup()
btn1 = types.InlineKeyboardButton('✅ Одобрить', callback_data='accept')
btn2 = types.InlineKeyboardButton('? Перейти в профиль', url=f"https://t.me/{username}")
btn3 = types.InlineKeyboardButton(f'? Заявка #{b}', callback_data='info')
markup.row(btn1, btn2)
markup.row(btn3)
if message.chat.type == 'private':
if message.text:
await message.bot.send_message('-1002031746023', f"{message.text}", reply_markup=markup)
await message.answer("<b>? Ваше предложение отправлено на проверку, ожидайте публикации в канале!</b>", parse_mode='html')
if message.video:
if message.caption != None:
await message.bot.send_video('-1002031746023', f'{message.video.file_id}', f'{message.caption}', reply_markup=markup)
await message.answer("<b>? Ваше предложение отправлено на проверку, ожидайте публикации в канале!</b>", parse_mode='html')
else:
await message.bot.send_video('-1002031746023', f'{message.video.file_id}', reply_markup=markup)
await message.answer("<b>? Ваше предложение отправлено на проверку, ожидайте публикации в канале!</b>", parse_mode='html')
if message.photo:
if message.caption != None:
await message.bot.send_photo('-1002031746023', f"{message.photo[0].file_id}", f'{message.caption}', reply_markup=markup)
await message.answer("<b>? Ваше предложение отправлено на проверку, ожидайте публикации в канале!</b>", parse_mode='html')
else:
await message.bot.send_photo('-1002031746023', f"{message.photo[0].file_id}", reply_markup=markup)
await message.answer("<b>? Ваше предложение отправлено на проверку, ожидайте публикации в канале!</b>", parse_mode='html')
@dp.callback_query_handler()
async def callback(call):
with open('config.py', 'r') as f:
a = f.readline()
b = int(a)
forward_date = call.message.date
formatted_date = forward_date.strftime("%Y-%m-%d")
formatted_time = forward_date.strftime("%H:%M:%S")
username = call.message.from_user.username
markup2 = types.InlineKeyboardMarkup()
btn4 = types.InlineKeyboardButton('? Перейти в профиль', url=f"https://t.me/{username}")
btn5 = types.InlineKeyboardButton(f'? Заявка #{b}', callback_data='info')
markup2.row(btn4)
markup2.row(btn5)
if call.data == 'accept':
if call.message.photo:
if call.message.caption != None:
await bot.send_photo('-1002069697182', f'{call.message.photo[0].file_id}', f'{call.message.caption}')
await bot.send_message('-1002031746023', f'? Заявка #{b} была одобрена!')
await call.message.edit_reply_markup(markup2)
else:
await bot.send_photo('-1002069697182', f'{call.message.photo[0].file_id}')
await bot.send_message('-1002031746023', f'? Заявка #{b} была одобрена!')
await call.message.edit_reply_markup(markup2)
if call.message.video:
if call.message.caption != None:
await bot.send_video('-1002069697182', f'{call.message.video.file_id}', f'{call.message.caption}')
await bot.send_message('-1002031746023', f'? Заявка #{b} была одобрена!')
await call.message.edit_reply_markup(markup2)
else:
await bot.send_video('-1002069697182', f'{call.message.video.file_id}')
await bot.send_message('-1002031746023', f'? Заявка #{b} была одобрена!')
await call.message.edit_reply_markup(markup2)
if call.message.text:
await bot.send_message('-1002069697182', f'{call.message.text}')
await bot.send_message('-1002031746023', f'? Заявка #{b} была одобрена!')
await call.message.edit_reply_markup(markup2)
if call.data == 'info':
await bot.answer_callback_query(call.id, f'Дата отправки: {formatted_date} {formatted_time}', show_alert=True)