@RustamIR

Через какие методы следует выполнять вывод документов в телеграм боте?

Создаю телеграм бота, который хранит в себе закинутые в него документы. В БД я передаю и храню file_name и file_id документа.
Не разберусь как по названию документов реализовать сам вывод файла.
class DataInput(StatesGroup):
    r = State()

@dp.message_handler(commands=['get_file_db'])
async def input_name(message: types.Message):
      await bot.send_message(message.from_user.id, 'Введите название файла')
      await DataInput.r.set()

@dp.message_handler(state=DataInput.r)
async def find_file(message: types.Message, state: FSMContext):
    user_id = message.from_user.id
    document = message.document.file_id
    file = await bot.get_file(document)
    r = message.text
    all_files = session.query(Documents).all()
    for row in all_files:
        print(row.file_name)
        if row.file_name == r:
            await message.answer(row.file_name)
            await bot.send_chat_action(user_id, ChatActions.UPLOAD_DOCUMENT)
            await asyncio.sleep(1)
            await bot.send_media_group(user_id, file, caption='Этот файл специально для тебя!', parse_mode='Markdown')
            await state.finish()
  • Вопрос задан
  • 93 просмотра
Пригласить эксперта
Ответы на вопрос 1
senku1435
@senku1435
py aiogram develop, c# mid
Через метод send_document
doc = open('/tmp/file.txt', 'rb')
tb.send_document(chat_id, doc)
tb.send_document(chat_id, "FILEID")
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы