Подскажите, пишу бота Телеграм на pyhon (aiogram).
Бот техподдержки, его функции это пересылать сообщения между пользователем и чатом тех.поддержки, например пользователь пишет боту сообщение с проблемой и бот пересылает сообщение в чат технической поддержки, вот код пересылки:
async def question_handler(message: types.Message):#, state: FSMContext):
await bot.forward_message(chat_id=CHAT_ID, from_chat_id=message.chat.id, message_id=message.message_id)
await message.answer(f"Сообщение отправлено! Ожидайте ответа от тех.поддержки. {smile}", parse_mode='Markdown', reply_markup=but.buttons)
dp.register_message_handler(question_handler, ChatTypeFilter(chat_type=types.ChatType.PRIVATE), content_types=['photo', 'text'])
После того как сообщение появится в чате, свободный инженер отвечает на сообщение методом reply:
async def ansver_handler(message: types.Message):#, state: FSMContext):
chat = message.forward_from_chat.id
if message.reply_to_message and message.reply_to_message.from_user.id == BOT_ID:
await bot.send_message(chat_id=chat, text=message.text)
dp.register_message_handler(ansver_handler, ChatTypeFilter(chat_type=types.ChatType.GROUP), content_types = ['photo', 'text'])
И вот тут загвоздка, сообщение не пересылается обратно к пользователю, как я понял, сообщение которое переслал первый раз бот (в чат тех.поддержки) не имеет никаких id чата или пользователя?
И чтобы организовать пересылку, нужно придумать "костыль" для сохранения нужных данных и их сопоставления?
Или может быть есть готовый метод?