/
/
/
1"""Bluesound Player Provider for BluOS players to work with Music Assistant."""
2
3from __future__ import annotations
4
5from typing import TYPE_CHECKING
6
7from music_assistant_models.enums import ProviderFeature
8
9from .provider import BluesoundPlayerProvider
10
11if TYPE_CHECKING:
12 from music_assistant_models.config_entries import ConfigEntry, ConfigValueType, ProviderConfig
13 from music_assistant_models.provider import ProviderManifest
14
15 from music_assistant import MusicAssistant
16 from music_assistant.models import ProviderInstanceType
17
18SUPPORTED_FEATURES = {
19 ProviderFeature.SYNC_PLAYERS,
20}
21
22
23async def setup(
24 mass: MusicAssistant, manifest: ProviderManifest, config: ProviderConfig
25) -> ProviderInstanceType:
26 """Initialize BluOS instance with given configuration."""
27 return BluesoundPlayerProvider(mass, manifest, config, SUPPORTED_FEATURES)
28
29
30async def get_config_entries(
31 mass: MusicAssistant,
32 instance_id: str | None = None,
33 action: str | None = None,
34 values: dict[str, ConfigValueType] | None = None,
35) -> tuple[ConfigEntry, ...]:
36 """Set up legacy BluOS devices."""
37 # ruff: noqa: ARG001
38 return ()
39