From cb9dd0fbc550c27c1eb4465e2acc1b535bcf18c3 Mon Sep 17 00:00:00 2001 From: FoxxMD Date: Wed, 25 Mar 2026 20:20:50 +0000 Subject: [PATCH] docs: Add Music Assistant to lz endpoint docs --- .../sources/listenbrainz-endpoint.mdx | 83 +++++++++++++++---- docsite/docs/index.mdx | 1 + 2 files changed, 67 insertions(+), 17 deletions(-) diff --git a/docsite/docs/configuration/sources/listenbrainz-endpoint.mdx b/docsite/docs/configuration/sources/listenbrainz-endpoint.mdx index 4f1ba430..0cbfe5c7 100644 --- a/docsite/docs/configuration/sources/listenbrainz-endpoint.mdx +++ b/docsite/docs/configuration/sources/listenbrainz-endpoint.mdx @@ -9,7 +9,9 @@ import TabItem from '@theme/TabItem'; import CodeBlock from '@theme/CodeBlock'; import ListenbrainzEndpointConfig from '!!raw-loader!@site/../config/endpointlz.json.example'; -This Source enables multi-scrobbler to accept scrobbles from outside applications as if it was a Listenbrainz server. +This Source enables multi-scrobbler to accept scrobbles from outside applications **as if it was a Listenbrainz server.** + +If your service/player has a "Scrobble to Listenbrainz" feature and there is an option to set the Listenbrainz URL then multi-scrobbler can accept scrobbles from that service/player by imitating a real Listenbrainz server. :::tip[Other Uses] @@ -18,44 +20,91 @@ This Source enables multi-scrobbler to accept scrobbles from outside application ::: +## Setup + ### URL -If a **slug** is **not** provided in configuration then multi-scrobbler will accept Listenbrainz scrobbles at +In general, you should use one of the following as the **base URL** when configuring your application to scrobble to multi-scrobbler: + +* `http://myMultiScrobblerIP:9078` +* `http://myMultiScrobblerIP:9078/1/` + + + +If you are not using a [slug for multiple endpoints](#multiple-endpoints) then multi-scrobbler will accept Listenbrainz scrobbles at ``` http://myMultiScrobblerIP:9078/1/submit-listens ``` -which is the "standard" Listenbrainz server path for scrobbling. +which is the **standard** Listenbrainz server path for scrobbling. -In general, you should use `http://myMultiScrobblerIP:9078/1/` as the **base path** when configuring your application to scrobble to multi-scrobbler. + -
+ -URL Setup for Popular Apps +Some services that can scrobble to a custom Listenbrainz URL may require the URL to have a real domain (`example.com`) and/or use SSL (`https://`). In this case you should setup multi-scrobbler behind a reverse proxy to support this functionality. It is out of the scope of this project to do this solely within multi-scrobbler. -##### Navidrome + -Set the [**ListenBrainz.BaseURL**](https://www.navidrome.org/docs/usage/configuration-options/#advanced-configuration) (env `ND_LISTENBRAINZ_BASEURL`) to `http://myMultiScrobblerIP:9078/1/` +### Token -
+Most Listenbrainz clients require a token (Authentication Token) to be provided during setup. This value can be anything you want, just make sure to use the same value for `token` in your multi-scrobbler configuration for the endpoint. -Use a slug only if you need to setup multiple Listenbrainz Endpoint sources and cannot use different tokens. +### Multiple Endpoints -If a slug is used then the URL will be: +If you are setting up multiple [Listenbrainz (Endpoint) Sources](/configuration/sources/listenbrainz-endpoint) MS can differentiate scrobbles based on [Token](#token) so that you can use the same endpoint for many users. + +However, if you cannot configure multiple tokens for your scenario you may also use a URL **Slug** to tell MS which Source belongs to a specific user. + +
+ +Using a Slug + +When a **slug** is defined in ENV/File config MS will listen for listenbrainz routes using the slug as a the route path. Example: ``` -http://myMultiScrobblerIP:9078/api/listenbrainz/mySlug +LZE_SLUG=foobar ``` -:::note - Some Listenbrainz applications may require custom Listenbrainz URLs to be a real domain (`example.com`) and/or use SSL (`https://`). In this case you should setup multi-scrobbler behind a reverse proxy to support this functionality. It is out of the scope of this project to do this solely within multi-scrobbler. -::: +MS will accept calls to -### Token +``` +http://myMultiScrobblerIP:9078/api/listenbrainz/foobar +``` -Most Listenbrainz clients require a token (Authentication Token) to be provided during setup. This value can be anything you want, just make sure to use the same value for `token` in your multi-scrobbler configuration for the endpoint. +for scrobble submission. + +
+ +## Setup for Popular Apps + +### Navidrome + +
+ +Set the [**ListenBrainz.BaseURL**](https://www.navidrome.org/docs/usage/configuration-options/#advanced-configuration) (env `ND_LISTENBRAINZ_BASEURL`) to `http://myMultiScrobblerIP:9078/1/` +
+ +### Music Assistant + +
+ +[Music Assistant Docs](https://www.music-assistant.io/plugins/listenbrainz_scrobble/) + +* In your Music Assistant UI navigate to **Settings** -> **Plugins** +* Click **Add a plugin** + * Add **ListenBrainz Scrobbler** +* In the ListenBrainz Scrobbler configuration screen: + * User Token is the [Token](#token) you configured + * Toggle **Show advanced settings** + * Base URL is the [URL](#url) you can configured, or the equivalent of `http://myMultiScrobblerIP:9078` for your MS instance +* Save the configuration and you are ready to scrobble + +To troubleshoot any errors, and assuming you are using Home Assistant, view the Logs in the Music Assistant Add-ons. Please include these logs in any reported issue. + +
## Configuration diff --git a/docsite/docs/index.mdx b/docsite/docs/index.mdx index 47b64640..19006c42 100644 --- a/docsite/docs/index.mdx +++ b/docsite/docs/index.mdx @@ -31,6 +31,7 @@ A dockerized app that monitors your music listening activity from *everywhere* a * [MPD (Music Player Daemon)](/configuration/sources/mpd) * [MPRIS (Linux Desktop)](/configuration/sources/mpris) * [Musikcube](/configuration/sources/musikcube) + * [Music Assistant](/configuration/sources/listenbrainz-endpoint#setup-for-popular-apps) * [Plex](/configuration/sources/plex) * [Rocksky](/configuration/sources/rocksky-source) * [Sonos](/configuration/sources/sonos) -- 2.51.2