Plugin submitted to Volumio 3 plugin store. If you do not see it there, enable “Plugins Test Mode” in http://<volumio_address>/dev. If you still do not see it, that means the plugin has not yet been accepted and you are advised to wait.
Volumio 2.x
The plugin requires manual installation, instructions for which you can find in the volumio-2.x branch of the Github repo:
Follow the instructions there to install it (also go through the rest of the readme for a better understanding of what to expect from this plugin). For Volumio 2.x, it is also recommended that you update your MPD. Otherwise, you may encounter seeking issues for some tracks.
EDIT: note that this plugin does not support user login, for reasons stated in the readme.
You can raise issues here as you find them, and feedback is of course welcome.
I have also the same feeling that volumio becomes more and more a complete streaming solution… I just ordered some pieces to build a another streamer. Sory for oftoppic
I’ve had a brief look at Mixcloud and I must say they did a good job at obfuscating almost everything that makes scraping close to impossible (given my current coding skills). Their site is heavily driven by Javascript with non-human readable function names and variables. I am not confident in doing this
So it appears they do have an API, BUT as you read further down the documentation:
The audio streams are not available through the Mixcloud API. There are two reasons for this.
Firstly, we need to know what has been listened to so that we can report usage, pay royalties and provide features such as ‘Suggested Shows’.Secondly, Mixcloud needs to pay the bills! We can’t give away the audio for free outside of mixcloud.com simply because it costs us to host and stream the files and pay royalties.
So the API lets you browse resources but not play them. I always wonder what purpose this kind of API serves…
I did a throw at it once, but was stuck on the authentication part, as I didn’t want to share my API key. For all the right reasons, reading your readme I seem to be able to authenticate, but requesting e.g. /me doesn’t work anymore. At least… not like it did before (saved everything in Postman).
Volumio uses a delegate for authentication. That means that particular delegate is the only component in need of API keys and secrets. Maybe Volumio already grabbed an API key before the lockdown (pun intended ).
I believe there’s some advantage to gain in logging in; e.g. own playlists and maybe some statistics (just thinking out loud here). I was unable to get search working from the API documentation at the time, but I see they’ve revamped the API docs (now OpenAPI).
Am I correct in understanding that this implementation uses scraping to gather data? I so, then you’ve done one hell of a job (and it probably took ages). Well done sir!
Also the plugin itself looks neatly coded, I’m liking the view more (pagination) option and entity ‘homepage’. All in all you did an awesome job. It integrates perfectly, you’ve done your homework on using the available framework options.
When observing the network traffic on SC, I found that almost everything was fetched via an ‘API v2’. Understandably, since they have already shut down app registrations, you won’t find the new API in their developer docs. But it’s quite easy to find out the endpoints and the query params needed to get the correct data - you just have to look at the network requests when browsing the SC pages. This means the data-fetching part is really simple. If you’re interested, you can have a look at the soundcloud-fetch library I’ve written for the purpose. The harder part, really, is deciding how to put everything together and present them sensibly within the constraints of Volumio’s UI.
this was easily #1 on my volumio wishlist. so many thanks! already listening to my favourite radio show. i had to use bluetooth from my phone before that.