Библиотека и синхронизация
Провайдер синхронизирует библиотеку пользователя между Zvuk Music и Music Assistant в обоих направлениях.
Что синхронизируется
Заголовок раздела «Что синхронизируется»| Тип | Из Zvuk → MA | Из MA → Zvuk |
|---|---|---|
| Треки | ✅ | ✅ |
| Альбомы | ✅ | ✅ |
| Исполнители | ✅ | ✅ |
| Плейлисты | ✅ | ✅ |
Как работает синхронизация
Заголовок раздела «Как работает синхронизация»Zvuk → MA (загрузка библиотеки)
Заголовок раздела «Zvuk → MA (загрузка библиотеки)»При первом подключении и при каждом обновлении библиотеки MA:
- Провайдер запрашивает коллекцию пользователя: списки ID треков, альбомов, исполнителей, плейлистов
- ID разбиваются на батчи по 50 (лимит API)
- Для каждого батча выполняется полный запрос данных
- Объекты парсятся и добавляются в библиотеку MA
MA → Zvuk (добавление/удаление)
Заголовок раздела «MA → Zvuk (добавление/удаление)»| Действие в MA | Что происходит в Zvuk |
|---|---|
| Добавить трек в библиотеку | like_track() |
| Удалить трек | unlike_track() |
| Добавить альбом | like_release() |
| Удалить альбом | unlike_release() |
| Добавить исполнителя | like_artist() |
| Удалить исполнителя | unlike_artist() |
| Добавить плейлист | like_playlist() |
| Удалить плейлист | unlike_playlist() |
Управление плейлистами
Заголовок раздела «Управление плейлистами»Помимо синхронизации, поддерживается полное управление плейлистами:
| Операция | Поддержка |
|---|---|
| Создать плейлист | ✅ |
| Добавить треки в плейлист | ✅ |
| Удалить треки из плейлиста | ✅ |
Примечания
Заголовок раздела «Примечания»- Ошибки при добавлении/удалении из библиотеки возвращают
Falseвместо исключения (не прерывают работу MA) - Синхронизация библиотеки не кэшируется — каждый запрос MA возвращает актуальные данные из Zvuk