all type message can process
This commit is contained in:
@@ -17,7 +17,8 @@ from helper_bot.middlewares.blacklist_middleware import BlacklistMiddleware
|
||||
from helper_bot.utils import messages
|
||||
from helper_bot.utils.base_dependency_factory import BaseDependencyFactory
|
||||
from helper_bot.utils.helper_func import get_first_name, get_text_message, send_text_message, send_photo_message, \
|
||||
send_media_group_message_to_private_chat, prepare_media_group_from_middlewares, check_username_and_full_name
|
||||
send_media_group_message_to_private_chat, prepare_media_group_from_middlewares, check_username_and_full_name, \
|
||||
send_video_message, send_video_note_message, send_audio_message, send_voice_message
|
||||
from logs.custom_logger import logger
|
||||
|
||||
private_router = Router()
|
||||
@@ -129,6 +130,7 @@ async def suggest_post(message: types.Message, state: FSMContext):
|
||||
)
|
||||
async def end_message(message: types.Message, state: FSMContext):
|
||||
try:
|
||||
await message.forward(chat_id=GROUP_FOR_LOGS)
|
||||
logger.info(
|
||||
f"Вызов функции end_message. Пользователь: {message.from_user.id} Имя автора сообщения: {message.from_user.full_name}")
|
||||
name_stick_bye = list(Path('Stick').rglob('Universal_*'))
|
||||
@@ -160,8 +162,8 @@ async def suggest_router(message: types.Message, state: FSMContext, album: list
|
||||
logger.info(
|
||||
f"Вызов функции suggest_router. Пользователь: {message.from_user.id} Имя автора сообщения: {message.from_user.full_name}")
|
||||
try:
|
||||
post_caption = ''
|
||||
if message.content_type == 'text':
|
||||
print(message.content_type)
|
||||
lower_text = message.text.lower()
|
||||
# Получаем текст сообщения и преобразовываем его по правилам
|
||||
post_text = get_text_message(lower_text, message.from_user.full_name,
|
||||
@@ -180,7 +182,6 @@ async def suggest_router(message: types.Message, state: FSMContext, album: list
|
||||
await state.set_state("START")
|
||||
|
||||
elif message.content_type == 'photo' and message.media_group_id is None:
|
||||
print(message.content_type)
|
||||
lower_caption = message.caption.lower()
|
||||
markup = get_reply_keyboard_for_post()
|
||||
# Получаем текст сообщения и преобразовываем его по правилам
|
||||
@@ -197,12 +198,69 @@ async def suggest_router(message: types.Message, state: FSMContext, album: list
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
await state.set_state("START")
|
||||
|
||||
elif message.content_type == 'video' and message.media_group_id is None:
|
||||
if message.caption:
|
||||
lower_caption = message.caption.lower()
|
||||
post_caption = get_text_message(lower_caption, message.from_user.full_name,
|
||||
message.from_user.username)
|
||||
markup = get_reply_keyboard_for_post()
|
||||
# Получаем текст сообщения и преобразовываем его по правилам
|
||||
|
||||
# Отправляем видео и текст в приватный канал
|
||||
await send_video_message(GROUP_FOR_POST, message,
|
||||
message.video.file_id, post_caption, markup)
|
||||
|
||||
# Отправляем юзеру ответ и возвращаем его в меню
|
||||
markup_for_user = get_reply_keyboard(BotDB, message.from_user.id)
|
||||
success_send_message = messages.get_message(get_first_name(message), 'SUCCESS_SEND_MESSAGE')
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
await state.set_state("START")
|
||||
|
||||
elif message.content_type == 'video_note' and message.media_group_id is None:
|
||||
markup = get_reply_keyboard_for_post()
|
||||
|
||||
# Отправляем видеокружок в приватный канал
|
||||
await send_video_note_message(GROUP_FOR_POST, message,
|
||||
message.video_note.file_id, markup)
|
||||
|
||||
# Отправляем юзеру ответ и возвращаем его в меню
|
||||
markup_for_user = get_reply_keyboard(BotDB, message.from_user.id)
|
||||
success_send_message = messages.get_message(get_first_name(message), 'SUCCESS_SEND_MESSAGE')
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
await state.set_state("START")
|
||||
|
||||
elif message.content_type == 'audio' and message.media_group_id is None:
|
||||
lower_caption = message.caption.lower()
|
||||
markup = get_reply_keyboard_for_post()
|
||||
# Получаем текст сообщения и преобразовываем его по правилам
|
||||
post_caption = get_text_message(lower_caption, message.from_user.full_name,
|
||||
message.from_user.username)
|
||||
|
||||
# Отправляем видео и текст в приватный канал
|
||||
await send_audio_message(GROUP_FOR_POST, message,
|
||||
message.audio.file_id, post_caption, markup)
|
||||
|
||||
# Отправляем юзеру ответ и возвращаем его в меню
|
||||
markup_for_user = get_reply_keyboard(BotDB, message.from_user.id)
|
||||
success_send_message = messages.get_message(get_first_name(message), 'SUCCESS_SEND_MESSAGE')
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
await state.set_state("START")
|
||||
|
||||
elif message.content_type == 'voice' and message.media_group_id is None:
|
||||
markup = get_reply_keyboard_for_post()
|
||||
|
||||
# Отправляем видео и текст в приватный канал
|
||||
await send_voice_message(GROUP_FOR_POST, message,
|
||||
message.voice.file_id, markup)
|
||||
|
||||
# Отправляем юзеру ответ и возвращаем его в меню
|
||||
markup_for_user = get_reply_keyboard(BotDB, message.from_user.id)
|
||||
success_send_message = messages.get_message(get_first_name(message), 'SUCCESS_SEND_MESSAGE')
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
await state.set_state("START")
|
||||
|
||||
elif message.media_group_id is not None:
|
||||
post_caption = " "
|
||||
if message.content_type != 'photo':
|
||||
await message.bot.send_message(message.chat.id,
|
||||
'Я пока не умею работать с таким сообщением. '
|
||||
'Пришли текст и фото/фоты(ы)')
|
||||
|
||||
# Получаем сообщение и проверяем есть ли подпись. Если подпись есть, то преобразуем ее через функцию
|
||||
if album[0].caption:
|
||||
@@ -214,7 +272,8 @@ async def suggest_router(message: types.Message, state: FSMContext, album: list
|
||||
media_group = await prepare_media_group_from_middlewares(album, post_caption)
|
||||
|
||||
# Отправляем медиагруппу в секретный чат
|
||||
media_group_message_id = await send_media_group_message_to_private_chat(GROUP_FOR_POST, message, media_group)
|
||||
media_group_message_id = await send_media_group_message_to_private_chat(GROUP_FOR_POST, message,
|
||||
media_group)
|
||||
sleep(0.2)
|
||||
|
||||
# Получаем клавиатуру и отправляем еще одно текстовое сообщение с кнопками
|
||||
@@ -230,9 +289,10 @@ async def suggest_router(message: types.Message, state: FSMContext, album: list
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
await state.set_state("START")
|
||||
else:
|
||||
print(f'Тип: {message.content_type}')
|
||||
await message.bot.send_message(message.chat.id,
|
||||
'Я пока не умею работать с таким сообщением. Пришли текст и фото/фоты(ы)')
|
||||
'Я пока не умею работать с таким сообщением. '
|
||||
'Пришли текст и фото/фоты(ы). А лучше перешли это сообщение админу @kerrad1\n'
|
||||
'Мы добавим его к обработке если необходимо')
|
||||
except Exception as e:
|
||||
await message.bot.send_message(chat_id=IMPORTANT_LOGS,
|
||||
text=f"Произошла ошибка: {str(e)}\n\nTraceback:\n{traceback.format_exc()}")
|
||||
|
||||
Reference in New Issue
Block a user