Об этом проекте
Music Bot — это Telegram-компаньон для вашей библиотеки Navidrome. Он позволяет вставить ссылку из таких сервисов, как Tidal, Spotify, Apple Music, Deezer, YouTube Music, SoundCloud, Amazon Music или Shazam, автоматически определяет трек или альбом, находит копию без потерь в P2P-сети Soulseek через slskd, тегирует её полными метаданными (артист, альбом, номера треков, жанры, ReplayGain, обложка, синхронизированные тексты) и помещает файлы в вашу библиотеку. Через минуту музыка становится доступной для воспроизведения в Navidrome.
Основные возможности включают:
• Загрузка альбомов/треков в FLAC с опциональным резервным вариантом mp3 (≥320 кбит/с), если доступных пиров без потерь нет.
• Тщательный выбор источника: каждый кандидат проверяется по длительности с данными Deezer и оценивается на уверенность и надежность пира.
• Богатое тегирование: метаданные Deezer в сочетании с пользовательскими тегами Last.fm для нюансированных жанров.
• Управление библиотекой: `/retag` обновляет теги во всей коллекции, `/scan` пересканирует Navidrome, `/stats` показывает размер, а `/help` перечисляет команды.
• Инлайн-поиск: введите `@yourbot <запрос>`, чтобы искать в Deezer, вашей библиотеке Navidrome или вызывать команды, такие как `np` (отправить текущий трек), `s` (поделиться ссылкой), `l` (тексты), `del <название>` (удалить альбом).
• Локальная загрузка: поместите zip-архив или папку на страницу загрузки бота или в `./bot-data/uploads/` для той же обработки тегирования и дедупликации.
• Конфиденциальность: взаимодействовать могут только ID пользователей Telegram, указанные в `ALLOWED_USERS`.
Настройка представляет собой Docker Compose стек из двух сервисов (slskd и music-bot) с конфигурацией в `.env`. Бот взаимодействует со slskd через его REST API, использует бесплатный API Deezer для метаданных и соблюдает ограничения качества (`MAX_BIT_DEPTH`, `MAX_SAMPLE_RATE_HZ`, `MAX_FILE_BYTES`). Доступны опциональная поддержка прокси и локальный HTTP-порт для загрузки.
Использование интуитивно понятно: вставьте ссылку на музыку, чтобы начать загрузку, добавьте `re` для повторной загрузки существующего элемента или используйте инлайн-режим для быстрого поиска и действий воспроизведения. Бот предоставляет обновления статуса в реальном времени в Telegram, показывая выбранного пира, прогресс трека и окончательные результаты.
В целом, Music Bot автоматизирует процесс получения, тегирования и интеграции новой музыки в Navidrome, предоставляя вам элементы управления воспроизведением и тексты песен прямо из Telegram.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.