Skip to content

Releases: AudioBridge-team/AudioBridge

v1.3.6

14 Aug 14:30
Compare
Choose a tag to compare

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

22 Apr 06:27
Compare
Choose a tag to compare

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

17 Feb 14:51
Compare
Choose a tag to compare

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

17 Oct 13:43
Compare
Choose a tag to compare

Fixed

  • Исправлена обработка ошибки HTTP error 404 для модуля ffmpeg
  • Доработаны рекурсивные функции

v1.3.2

15 Oct 16:24
Compare
Choose a tag to compare

Added:

  • Добавлена предварительная оценка размера веса аудио перед скачиванием путём F (bits) = t (sec) * bitrate (Kb / sec)
  • Заданы коды кастомных ошибок (CustomError) для обработки преднамеренной остановки работы потока (AudioWorker)
  • Добавлено ограничение по минимальному размеру загружаемой аудиозаписи (файл должен быть не менее 50 Кб), иначе Вк ограничит загрузку
  • Автокоррекция второго аргумента при загрузке плейлиста (удаление пробелов в строке)

Changed:

  • Поменян инструмент загрузки аудио (youtube-dlffmpeg) в целях оптимизации процесса и извлечения аудио-отрезка
  • Циклы while(), ранее используемые для выполнения консольной команды, заменены на рекурсивные функции для улучшения читаемости кода
  • Вынесены простые функции в ламбда-функции для улучшения читаемости кода
  • Изменены содержания сообщений с процессом выполнения запроса
  • Обновление прогресса скачивания трека теперь адекватное: оно происходит по временному таймеру в 1 минуту, а изначально период обновления рассчитывался по числу загрузки блоков песни

Fixed

  • Исправлена ошибка в функции getSeconds() при обработке запросов с временем среза

v1.3.1

06 Oct 14:51
Compare
Choose a tag to compare

Added

  • Добавлен новый конфигурационный файл bot_settings.json, в котором прописаны настройки обработки запросов пользователя и конвертации видео
  • Создан новый класс vkGroupManager.py для управления группой вк
  • Добавлена функция конвертации CHANGELOG.md в wiki формат для вк группы

Changed

  • Полностью переработана структура программы: каждый класс был вынесен в соответствующий ему модуль. Такое решение структуризирует ведение проекта и упрощает его дальнейшее развитие
  • Обработка конфига программы переписана с использованием библиотеки betterconf. Это сделано для более удобной работы с конфигурационными файлами .env и bot_settings.json
  • Прикреплённые YouTube видео стали обрабатываться как запрос, не содержащий ссылку, следовательно, будет вызываться ошибка об отсутствии в запросе ссылки

v1.3.0

01 Sep 13:04
Compare
Choose a tag to compare

Fixed

  • Обработка Вк видео

v1.2.9

30 Aug 20:02
Compare
Choose a tag to compare

Added

  • Отсеивание запросов без ссылки
  • Обработка YouTube Shorts

Changed

  • Обработка сообщений от пользователя

v1.2.8

29 Aug 15:53
Compare
Choose a tag to compare

Changed

  • Структура проекта для улучшения отказоустойчивости

v1.2.7

27 Aug 15:11
8cad22f
Compare
Choose a tag to compare

Added

Changed

  • Модель ведения проекта для улучшения эффективности разработки

Removed

  • Возможность запуска в debug режиме
  • Переключение между версиями