2020-03-08 12:31:00 +01:00
|
|
|
import pykka
|
|
|
|
|
2017-08-13 03:17:03 -04:00
|
|
|
import mopidy_subidy
|
2016-09-18 04:33:46 +02:00
|
|
|
from mopidy import backend
|
2020-03-08 12:31:00 +01:00
|
|
|
from mopidy_subidy import library, playback, playlists, subsonic_api
|
2016-09-18 04:33:46 +02:00
|
|
|
|
2020-03-08 12:30:34 +01:00
|
|
|
|
2016-09-18 04:33:46 +02:00
|
|
|
class SubidyBackend(pykka.ThreadingActor, backend.Backend):
|
|
|
|
def __init__(self, config, audio):
|
2020-03-08 12:30:14 +01:00
|
|
|
super().__init__()
|
2020-03-08 12:30:34 +01:00
|
|
|
subidy_config = config["subidy"]
|
2016-09-18 04:33:46 +02:00
|
|
|
self.subsonic_api = subsonic_api.SubsonicApi(
|
2020-03-08 12:30:34 +01:00
|
|
|
url=subidy_config["url"],
|
|
|
|
username=subidy_config["username"],
|
|
|
|
password=subidy_config["password"],
|
2017-08-13 03:17:03 -04:00
|
|
|
app_name=mopidy_subidy.SubidyExtension.dist_name,
|
2020-03-08 12:30:34 +01:00
|
|
|
legacy_auth=subidy_config["legacy_auth"],
|
|
|
|
api_version=subidy_config["api_version"],
|
|
|
|
)
|
2016-09-18 04:33:46 +02:00
|
|
|
self.library = library.SubidyLibraryProvider(backend=self)
|
2020-03-08 12:30:34 +01:00
|
|
|
self.playback = playback.SubidyPlaybackProvider(
|
|
|
|
audio=audio, backend=self
|
|
|
|
)
|
2016-09-18 18:19:08 +02:00
|
|
|
self.playlists = playlists.SubidyPlaylistsProvider(backend=self)
|
2020-03-08 12:30:34 +01:00
|
|
|
self.uri_schemes = ["subidy"]
|