Releases: AudioBridge-team/AudioBridge
v1.3.6
Added
-
<db/scripts/init_triggers> Созданы триггеры для упрощения работы с БД (автоматизации некоторых действий)
-
<db/database> Создана функция
insert_messageдля добавления информации о сообщении в таблицуvk_messages -
<db/database> Создана функция
_insert_userдля добавления нового пользователя в таблицуusers -
<db/database> Создана функция
set_error_codeдля установки ошибки обработки сообщения в таблицеvk_messages -
<db/database> Создана функция
set_user_tokenдля добавления токена пользователя в таблицуvk_messages -
<db/database> Создана функция
select_user_dataдля получения карточки пользователя из таблицыusers -
<db/database> Создана функция
set_user_settingдля установки определённой настройки пользователя в таблицуuser_serttings -
<db/database> Создана функция
select_user_settingsдля получения настроек пользователя из таблицыuser_serttings -
<db/database> Создана функция
init_convert_requestдля добавления основных полей задачи пользователя в таблицеconvert_requests -
<db/database> Создана функция
complete_convert_requestдля добавления оставшихся полей в таблицеconvert_requests -
<db/database> Создана функция
insert_audioдля добавления информации о загруженной песни в таблицуvk_audio -
<db/database> Создана функция
select_original_audioдля получения информации о загруженной ранее песни из таблицыvk_audio -
<db/dbEnums> Созданы перечисления для удобства работы с базой данных
-
<commands/user> Добавлена команда
/skipдля пропуска загрузки текущего трека -
<commands/user> Добавлена команда
/set_agent (true/false)для включения/выключения режима агента (загрузка песни через собсвтенный аккаунт) -
<keyboards/user> Добавлена кнопка
Авторизоваться в боте -
<bot/userAuthServer> Создан класс
UserAuthHandlerдля поднятия веб-сервера, необходимого для получения токена пользователя (т.е. его авторизации) -
<utils/errorHandler/*> Создан модуль для классификации, масштабирования и управления ошибками, и дальнейшей их записи в базу данных
-
<bot/vkBotWorker> Добавлена возможность переименовывания ранее загруженных песен
-
<bot/vkBotWorker> Добавлено сохранение сообщений в базу данных
-
<bot/audioWorker> Добавлена возможность "быстрой обработки" песен: отправка уже готовой песни, если ранее её кто-то загружал через бота
-
<bot/audioWorker> Добавлена возможность загрузки песни через аккаунт самого пользователя (это необходимо как для удоства, так и для обхода лимита загружаемых песен в день)
Changed
- <db/scripts/init_tables> Изменены типы и ограничения некоторых столбцов
- <bot_settings> Период обновления сообщения со статусом загрузки песни уменьшен до 1 минуты
- <bot/vkBotWorker> Изменена логика обработки нового сообщения
- <bot/queueHandler> В функцию
ack_requestиз <bot/audioWorker> перенесена работа над обновлением текущей очереди запросов пользователя
Deprecated
- <bot/vkBotWorker> Изменение YouTube Shorts запроса под обычный, т.к. в обновленной версии модуля
yt-dlpдоабвлена их поддержка - <config/bot> Удаление показателя YouTube Shorts
Removed
- <config/bot> Удалён класс показателей запросов
RequestIndex - <keyboards/keyboard> Удалён параметр
executableиз-за его ненадобности
Fixed
- <bot/vkBotWorker> Исправлена обработка прикреплённых видео. Благодаря возможности авторизации теперь их можно обрабатывать
v1.3.5
Added
- <.dockerignore> Добавлен облегчения образа
Docker - <.pylintrc> Включён
pylintдля повышения стилизации и читаемости кода - <bot/vkBotWorker> Добавлено игнорирование ответов пользователей на сообщения в чате для возможности общения с модератором, оставления заметок
- <commands/init> Добавлена инициализция списка всех команд
- <commands/command> Добавлены структуры, необходимые для описания пользовательских команд
- <commands/init> Добавлена команда
/help, выводящая список доступных команд для конкретного пользователя - <bot/vkBotWorker> Добавлена поддержка "клавиатурных" команд (кнопки в меню)
- <keyboards/*> Добавлены клавиатуры
Changed
- Изменена логика развёртывания
Dockerдля повышения скорости - <config/*> Конфиг разбит на файлы
- <config/handler> Добавлен объект
WorkerTaskдля передачи параметров запроса пользователя - <audiobridge/*> Код адаптирован под использование новой структуры конфига
- <db/scripts/init_tables> Обновлены структуры таблиц
- <bot/vkBotWorker> Переработана обработка команд
- Переименован в
utils - <commands/user> Переписан под новую динамическую структуру
Deprecated
- Удалён
betterconf
Removed
- <common/vars> Удалён из-за перехода на новую структуру конфига
- <common/config> Удалён из-за перехода на новую структуру конфига
Fixed
- <tools/loggerSetup> Исправлена ошибка "застывшего" времени в логах (теперь время обновляется)
- Во всех файлах настроены единые отступы (space)
v1.3.4
Added
- <tools/customErrors> Создан единый список ошибок
yt-dlpи их ключей, для улучшения читаемости кода - <tools/yt_dlpShell> Создан для обработки сообщений
yt-dlp - <bot/audioWorker> Добавлена функция
_analyzeTitleдля извлечения из заголовка видео названия работы (без хештегов и авторов) - <bot/audioWorker> Добавлена функция
_getAudioBitrateдля получения битрейта видео, необходимо для оценки приблизительного размера mp3 файла
Changed
- Изменена модель
Workflowнад проектом, из-за недочётов предыдущей - Указывание версии бота перенесено из параметров запуска в конфигурационный файл
bot_settings.json - Устаревший модуль
youtube-dlзаменён на активно развивающийся форкyt-dlp - Название класса и файла
AudioToolsзаменено наPlaylistHandlerиз-за полной специализации на соответствующих задачах - <bot/playlistHandler> Получение элементов плейлиста было переложено на
yt-dlp - Передача запроса теперь осуществляется в форме
dict - <bot/vkBotWorker> Изменён размер максимально запроса (с 5 до 4)
Removed
- <main> Удалён
ArgParserиз-за ненадобности - <bot/playlistHandler> Удалён метод
_getPlaylistElements, т.к. его функцию заменил форкyt-dlp - <bot/audioWorker> Удалены функции
_toSeconds,_getAudioInfo,_getAudioUrlиз-за того, что их заменил функционалyt-dlp - Удален модуль
youtube_dl
Fixed
- <bot/queueHandler> Исправлена работа
v1.3.3
Fixed
- Исправлена обработка ошибки
HTTP error 404для модуляffmpeg - Доработаны рекурсивные функции
v1.3.2
Added:
- Добавлена предварительная оценка размера веса аудио перед скачиванием путём
F (bits) = t (sec) * bitrate (Kb / sec) - Заданы коды кастомных ошибок (
CustomError) для обработки преднамеренной остановки работы потока (AudioWorker) - Добавлено ограничение по минимальному размеру загружаемой аудиозаписи (файл должен быть не менее 50 Кб), иначе Вк ограничит загрузку
- Автокоррекция второго аргумента при загрузке плейлиста (удаление пробелов в строке)
Changed:
- Поменян инструмент загрузки аудио (
youtube-dl→ffmpeg) в целях оптимизации процесса и извлечения аудио-отрезка - Циклы
while(), ранее используемые для выполнения консольной команды, заменены на рекурсивные функции для улучшения читаемости кода - Вынесены простые функции в ламбда-функции для улучшения читаемости кода
- Изменены содержания сообщений с процессом выполнения запроса
- Обновление прогресса скачивания трека теперь адекватное: оно происходит по временному таймеру в 1 минуту, а изначально период обновления рассчитывался по числу загрузки блоков песни
Fixed
- Исправлена ошибка в функции
getSeconds()при обработке запросов с временем среза
v1.3.1
Added
- Добавлен новый конфигурационный файл
bot_settings.json, в котором прописаны настройки обработки запросов пользователя и конвертации видео - Создан новый класс
vkGroupManager.pyдля управления группой вк - Добавлена функция конвертации
CHANGELOG.mdвwikiформат для вк группы
Changed
- Полностью переработана структура программы: каждый класс был вынесен в соответствующий ему модуль. Такое решение структуризирует ведение проекта и упрощает его дальнейшее развитие
- Обработка конфига программы переписана с использованием библиотеки
betterconf. Это сделано для более удобной работы с конфигурационными файлами.envиbot_settings.json - Прикреплённые YouTube видео стали обрабатываться как запрос, не содержащий ссылку, следовательно, будет вызываться ошибка об отсутствии в запросе ссылки
v1.3.0
Fixed
- Обработка Вк видео
v1.2.9
Added
- Отсеивание запросов без ссылки
- Обработка YouTube Shorts
Changed
- Обработка сообщений от пользователя
v1.2.8
Changed
- Структура проекта для улучшения отказоустойчивости
v1.2.7
Added
- Специальная группа ВК для разработчиков (https://vk.com/saveaudio_dev)
Changed
- Модель ведения проекта для улучшения эффективности разработки
Removed
- Возможность запуска в debug режиме
- Переключение между версиями