Hi all,
after this thread i started to expand the existing soundcloud backend to Support Playlists. I added a Playlist Provider with the as_list Definition.
This is working quiet well. At the Moment my Playlists from soundcloud backend showing up at mopidy
/home/mopidy/mopidy-soundcloud# mpc lsplaylists
MyTest123
test_soundcloud
soundcloud
LOG mopidy:
INFO Get playlists from soundcloud
But i am not able to load the Playlist in mopidy.
# mpc add test_soundcloud
error adding test_soundcloud: directory or file not found
LOG mopidy:
DEBUG 2017-01-01 11:14:54,927 [26109:MpdSession-11] mopidy.mpd.session
Response to [::ffff:127.0.0.1]:37644: ACK [50@0] {add} directory or file not found
the playlistprovider function “lookup” is not called if the Playlist is loaded.
can someone tell me what function is required to handle that request?
What functions Needs to be modified/added.
i were not able to find the informations in backend api
It is mpc load test_soundcloud as @tkem says. You need to pass a URI if using add, for example, mpc add soundcloud:some_user:playlists:test_soundcloud (or however the Soundcloud URIs work). The mpc manual could definitely be clearer.
If your lookup function isn’t being executed then perhaps Mopidy doesn’t know how to route the playlist’s URI to the Soundcloud backend? I suggest you read Mopidy’s source if you have specific questions, just trace what the MPD frontend’s load command does. Or look at what other backends do.
It is not working if the uri for a Playlist is "soundcloud:ID"
i have to use something like “soundcloud:folder:ID”. in this way my backend lookup function in the Playlist Provider is used to get the Playlist
ty for you Support!
note: why should i use the “Folder” structure? is it “important” or is it possible to use somehting generic like: soundcloud:playlist:ID
the soundcloud api Returns a unique id for each playlist
There is noting special about using “Folder”, you should be able to do use “playlist” or whatever you want, just as the other backends do. It just needs to be a Unique Resource Identifier that your particular backend can understand.