Files
audio_resive/functions/get_audio_messages_func.py
T

27 lines
1.2 KiB
Python

from functions.convert import Converter
from telebot import types
def get_audio_messages_func(message: types.Message, logger, bot):
# достаю file_id из разнообразных полей
if message.content_type in ['voice']:
file_id = message.voice.file_id
elif message.content_type in ['video']:
file_id = message.video.file_id
else:
file_id = message.video_note.file_id
# создаю file_name
file_name = "config/" + str(message.message_id) + '.ogg'
# достаю имя человека
name = message.chat.first_name if message.chat.first_name else 'No_name'
# записываю в файл
with open(file_name, 'wb') as new_file:
new_file.write(bot.download_file(bot.get_file(file_id).file_path))
# запуск конвертора
converter = Converter(file_name, message)
message_text = converter.audio_to_text()
# записываю всё в logger
logger.info(f"Чат {name} (ID: {message.chat.id}) обработал файл {file_name}, сервисом {converter.service}")
# отправляю сообщение
bot.send_message(message.chat.id, message_text, reply_to_message_id=message.message_id)