blurp BluRP
Last update
Introduction
BluRP is short for BLUos Random Player and is currently available as a web page for controlling your BluOS player at home. Its main function is to select and play random albums from your local NAS (and a few basis functions).

The official BluOS Controller app (check on Google Play) doesn't yet offer such an "album shuffle" function, while users with large music collections on their NAS (like me) would like this (see here).

My first stupid idea was to let a software program (that had access to my NAS) feed the BluOS app. A little later I discovered that there was an actual API for the BluOS system: here you will find the latest specification of the BluOS Custom Integration API.

BluRP was initially developed as a Python script as a proof of concept. The next step was to develop a more flexible or mobile solution. While a mobile (Android/IOS) app seems like the best approach, it has some drawbacks. The main reason is that the Controller app might get such a feature in the future (making my attempt somewhat pointless), while the Controller app is of course the best app to manage your BluOS player.

A better and easier idea was to create an html page (with some javascript), because most NAS systems also offer a web server? And aren't they 7x24 up? The idea (or challenge) was born, and the development and design took a few days in June 2025.

Download
The BluRP resources are available as a zip file and contain the html pages, the css and some graphics files. Check my download page for the current version and checksum.

Local web server
The BluRP page (blurp.html) can be called directly with your web browser, but unfortunately cannot retrieve your csv file for security reasons (CORS, more info can be found here). You must call the BluRP page via a web server in your local network. You can use perhaps the web server of your NAS. Otherwise you must set one up yourself (Windows offers a free IIS option).

Csv file (with artists)
BluRP requires a csv file with your artists on your NAS. Importing a file will give you a better and faster response (and it doesn't need to be updated often if you have already a large collection). Another advantage is that you can also make just a selection of your artists and play random albums from them. And in case the csv load fails, a single artist is used (from the track in your current playlist or - if empty - 'Beatles').

Perhaps it can be replaced with a lean API request in the future, but for now, you'll have to create one yourself. A sample file (blurp-sample.csv) is part of the installation-zip (just rename it to blurp.csv).

Adapting it
To communicate with your BluOS-player three technical parameters are important:

  • IP-address of your BluOS player within your local network (you can find the address by choosing diagnostic info in your Controller app)
  • Portnumber to which the API of BluOS-player listens to (default 11000)
  • Servicename of your music library on your NAS (default LocalMusic)
In the html-source edit these constants when appropiate (with notepad):

const BluOShost = "http://192.168.0.111";
const BluOSport = "11000";
const NASservice = "LocalMusic";

Furthermore, you can customize the layout of the BluRP page to your liking, by simply editing the css file (if you dare). You can even modify the javascript code, no problem! Please note, however, that using BluRP is at your own risk. PhD Software is not liable for any damage resulting from its use.

Parameters
You can call the BluRP page with some parameters:

  • exclude filters artist names out for blurping by their category name
  • include filters artist names only for blurping by their category name
  • artist overrules artist names loaded by a single artist name (in case the artist name holds a space, replace the space by a +)
  • ip overrules the hard-coded IP address of your BluOS player
Examples (address of web-server dependant of your situation):

http://192.168.x.y/blurp.html?exclude=Jazz,Classical
http://192.168.x.y/blurp.html?artist=Rolling+Stones
http://192.168.x.y/blurp.html?include=World

Suprise mode?
One expected feature (of course) of the placement of the buttons in the top portion of the screen is that you can use them when using the screen in landscape mode without seeing the selected album (and having to guess which artist and album you hear ;-).

Summary
With BluRP you can randomly play or 'blurp' an album from your NAS on your BluOS player. First, an artist is randomly selected, so that every artist on your NAS has an equal chance. Second, an album is randomly selected and played (which you can repeat).

When requesting or refreshing the page, BluRP loads a csv file provided by you with your artist names.

For this page (and its resources, including the csv) to work properly, it should be uploaded to your local web server (a feature of your NAS?).

Your csv must contain rows existing out of some category name and the artist name, separated by a semicolon. This allows artists to be included or excluded from all artists by BluRP based on their category in the url!

This player is an album player, so track names are not updated while playing. You can use the State-function to display the actual state and tracklist of your player.

Happy blurping!

Donate
You may support my work by donating via paypal.me. If you have specific wishes, I may be able to help you.

Contact
Any questions or suggestions? Send me an email at info@phdsoftware.nl.

Examples:

blurp example1 blurp example2 blurp example3