diff --git a/docsite/docs/configuration/clients/koito.mdx b/docsite/docs/configuration/clients/koito.mdx
index 78e440d4..5c9d93e1 100644
--- a/docsite/docs/configuration/clients/koito.mdx
+++ b/docsite/docs/configuration/clients/koito.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/koito.json.example';
+import ENVConfig from "@site/docs/configuration/clients/_env_configs/_koito.md"
:::tip[Other Uses]
@@ -52,11 +53,5 @@ For Koito versions `<=0.1.7`, you must have the environment variable `KOITO_ALLO
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | --------- | ------- | --------------------------------- |
- | `KOITO_ID` | Yes | | A unique id |
- | `KOITO_TOKEN` | Yes | | API Key from your Koito Account |
- | `KOITO_USER` | Yes | | Your Koito username |
- | `KOITO_URL` | No | | The base URL for the Koito server |
- | `KOITO_NAME` | No | | A vanity name, different than ID |
+
diff --git a/docsite/docs/configuration/clients/lastfm.mdx b/docsite/docs/configuration/clients/lastfm.mdx
index 4f3df2d1..0c1f2103 100644
--- a/docsite/docs/configuration/clients/lastfm.mdx
+++ b/docsite/docs/configuration/clients/lastfm.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/lastfm.json.example';
+import ENVConfig from "@site/docs/configuration/clients/_env_configs/_lastfm.md"
:::tip[Other Users]
@@ -63,12 +64,5 @@ The Redirect URL can be explicitly specified in the configuration below, or by u
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | --------------------------------------- | ----------------------------------------------------------------------------- |
- | `LASTFM_ID` | Yes | | A unique id |
- | `LASTFM_API_KEY` | Yes | | Api Key from your API Account |
- | `LASTFM_SECRET` | Yes | | Shared secret from your API Account |
- | `LASTFM_REDIRECT_URI` | No | `http://localhost:9078/lastfm/callback` | Url to use for authentication. Must include `lastfm/callback` somewhere in it |
- | `LASTFM_SESSION` | No | | Session id. Will be generated by authentication flow if not provided. |
- | `LASTFM_NAME` | No | | A vanity name, different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/clients/librefm.mdx b/docsite/docs/configuration/clients/librefm.mdx
index 3c5b2e26..a3e37a82 100644
--- a/docsite/docs/configuration/clients/librefm.mdx
+++ b/docsite/docs/configuration/clients/librefm.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/librefm.json.example';
+import ENVConfig from "@site/docs/configuration/clients/_env_configs/_librefm.md"
:::tip[Other Users]
@@ -54,14 +55,5 @@ https://my.cool.libre.com/2.0/
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ---------------------------------------- | ------------------------------------------------------------------------------------------------ |
- | `LIBREFM_ID` | Yes | | A unique ID |
- | `LIBREFM_ENABLE` | No | | Set to `true` to enable Libre.fm, if not using any of the below variables |
- | `LIBREFM_API_KEY` | No | `anything` | Optional API Key |
- | `LIBREFM_SECRET` | No | `anything` | Optional shared secret |
- | `LIBREFM_REDIRECT_URI` | No | `http://localhost:9078/librefm/callback` | Url to use for authentication. Must include `librefm/callback` somewhere in it |
- | `LIBREFM_SESSION` | No | | Session id. Will be generated by authentication flow if not provided. |
- | `LIBREFM_URLBASE` | No | | Use for custom Libre.fm instance only. The host + path prefix EX `https://my.libre.example/2.0/` |
- | `LIBREFM_NAME` | No | | A vanity name different than ID |
+
diff --git a/docsite/docs/configuration/clients/listenbrainz.mdx b/docsite/docs/configuration/clients/listenbrainz.mdx
index 9629d208..7360300e 100644
--- a/docsite/docs/configuration/clients/listenbrainz.mdx
+++ b/docsite/docs/configuration/clients/listenbrainz.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/listenbrainz.json.example';
+import ENVConfig from "@site/docs/configuration/clients/_env_configs/_listenbrainz.md"
:::tip[Other Users]
@@ -23,11 +24,5 @@ On your [profile page](https://listenbrainz.org/profile/) find your **User Token
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ----------------------------- | ------------------------------- |
- | `LZE_ID` | Yes | | A unique ID |
- | `LZ_TOKEN` | Yes | | User token from your LZ profile |
- | `LZ_USER` | Yes | | Your LZ username |
- | `LZ_URL` | No | https://api.listenbrainz.org/ | The base URL for the LZ server |
- | `LZ_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/clients/tealfm.mdx b/docsite/docs/configuration/clients/tealfm.mdx
index f1879d6a..6ce725b9 100644
--- a/docsite/docs/configuration/clients/tealfm.mdx
+++ b/docsite/docs/configuration/clients/tealfm.mdx
@@ -9,6 +9,7 @@ import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/tealfm.json.example';
import Bluesky from "@site/src/components/snippets/_bluesky.mdx";
+import ENVConfig from "@site/docs/configuration/clients/_env_configs/_tealfm.md"
:::tip[Other Uses]
@@ -78,10 +79,5 @@ If using a handle:
If your identifier does not look like a DID and does not include a TLD then multi-scrobbler will automatically append `.bsky.social` to your handle value.
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | --------- | ------- | ------------------------------------------------------------------------------------------ |
- | `TEAMFM_ID` | Yes | | A unique ID |
- | `TEALFM_IDENTIFIER` | Yes | | Your **full** ATProto handle or DID. For Bluesky account this is like `myUser.bsky.social` |
- | `TEALFM_APP_PW` | Yes | | Bluesky/ATProto network App Password |
- | `TEALFM_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/applemusic.mdx b/docsite/docs/configuration/sources/applemusic.mdx
index e3758c13..6cb6a23e 100644
--- a/docsite/docs/configuration/sources/applemusic.mdx
+++ b/docsite/docs/configuration/sources/applemusic.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import AppleMusicConfig from '!!raw-loader!@site/../config/applemusic.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_applemusic.md"
This Source **monitors your Apple Music listening history** via the official Apple Music API and scrobbles new activity to your configured [Clients](/configuration/clients).
@@ -246,17 +247,5 @@ Here is an example of creating a User Stage to only strip suffixes for a specifi
## Configuration Reference
- | Environment Variable | Required? | Default | Description |
- | ------------------------------------------ | --------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
- | `APPLEMUSIC_ID` | Yes | | A unique ID for this source. |
- | `APPLEMUSIC_MEDIA_USER_TOKEN` | Yes | | The media-user-token extracted from the browser. |
- | `APPLEMUSIC_KEY_ID` | No | | Key ID from your MusicKit key. |
- | `APPLEMUSIC_TEAM_ID` | No | | Team ID from your Apple Developer account. |
- | `APPLEMUSIC_KEY_P8` | No | | The contents of your MusicKit `.p8` private key file. |
- | `APPLEMUSIC_TOKEN` | No | | The authentication JWT extracted from the browser. |
- | `APPLEMUSIC_INTERVAL` | No | `60` | Polling interval in seconds. |
- | `APPLEMUSIC_ORIGIN_HEADER` | No | | Origin header for API requests, e.g. `https://music.apple.com`. Required when using a browser token. |
- | `APPLEMUSIC_RECOVER_UNCHANGED_TOP_HISTORY` | No | `true` | Apple Music deduplicates its history by bumping re-played tracks to the top. If you listen to Song A → Song B → Song A, the history changes from `[A]` to `[A, B]` (bumping A). MS detects this "top-rebound" to recover the intermediate play (B) and the re-listen (A). Disable this only if you see incorrect duplicate scrobbles. |
- | `APPLEMUSIC_NORMALIZE_ALBUM` | No | `true` | Strips extraneous `- EP` and `- Single` suffixes from album names |
- | `APPLEMUSIC_NAME` | No | | A vanity name different than the ID. |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/azuracast.mdx b/docsite/docs/configuration/sources/azuracast.mdx
index 7138317c..7a012cfa 100644
--- a/docsite/docs/configuration/sources/azuracast.mdx
+++ b/docsite/docs/configuration/sources/azuracast.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import AzuracastConfig from '!!raw-loader!@site/../config/azuracast.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_azuracast.md"
import ShouldScrobble from "@site/src/components/snippets/_should-scrobble-details.mdx"
:::tip[Scrobbling Threshold]
@@ -112,12 +113,5 @@ For users who aren't administrators of Azuracast: if you can access the station
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | :-------- | :------ | ---------------------------------------------------------------------------------------------- |
- | `AZURA_ID` | Yes | | A unique ID |
- | `AZURA_URL` | Yes | | Azuracast URL *without station name* |
- | `AZURA_STATION` | Yes | | The station URL Stub or shortcode |
- | `AZURA_LIVE` | No | Yes | Only scrobble when station status is ONLINE |
- | `AZURA_LISTENERS_NUM` | No | `true` | Only scrobble if station has any listeners (`true`) or listeners are equal-to/greater-than `X` |
- | `AZURA_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/deezer.mdx b/docsite/docs/configuration/sources/deezer.mdx
index 51acedda..a690833e 100644
--- a/docsite/docs/configuration/sources/deezer.mdx
+++ b/docsite/docs/configuration/sources/deezer.mdx
@@ -9,6 +9,7 @@ import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import DeezerConfig from '!!raw-loader!@site/../config/deezer.json.example';
import DeezerDeprecatedConfig from '!!raw-loader!@site/../config/deezer-deprecated.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_deezer.md"
@@ -134,9 +135,7 @@ import DeezerDeprecatedConfig from '!!raw-loader!@site/../config/deezer-deprecat
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | --------- | ------- | ------------------------------------------------ |
- | `DEEZER_ARL` | Yes | | The ARL cookie value retrieved from your browser |
+
diff --git a/docsite/docs/configuration/sources/google-cast.mdx b/docsite/docs/configuration/sources/google-cast.mdx
index 346e1f98..72622cfb 100644
--- a/docsite/docs/configuration/sources/google-cast.mdx
+++ b/docsite/docs/configuration/sources/google-cast.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import ChromecastConfig from '!!raw-loader!@site/../config/chromecast.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_chromecast.md"
If your media device can be **Cast** to using this button  on your phone/computer then multi-scrobbler can monitor it in order to scrobble music you play.
@@ -149,13 +150,5 @@ To diagnose bad/incomplete track information or strange MS player behavior pleas
[Manually configuring cast device connections](#connecting-devices) is only available through file-based config.
:::
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ------- | ------------------------------------------------------------------------------------ |
- | `CC_ID` | Yes | | A unique ID |
- | `CC_ENABLE` | No | | Set to 'true' to enable Cast monitoring without needing to define other ENVs |
- | `CC_WHITELIST_DEVICES` | No | | Only scrobble from these Cast devices. Comma-delimited list. EX mini-home, family-tv |
- | `CC_BLACKLIST_DEVICES` | No | | Do not scrobble from these Cast devices. Comma-delimited list |
- | `CC_WHITELIST_APPS` | No | | Only scrobble from these casted Apps. Comma-delimited list. EX spotify, pandora |
- | `CC_BLACKLIST_APPS` | No | | Do not scrobble from these casted Apps. Comma-delimited list |
- | `CC_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/icecast.mdx b/docsite/docs/configuration/sources/icecast.mdx
index 94f72462..5f4dfbab 100644
--- a/docsite/docs/configuration/sources/icecast.mdx
+++ b/docsite/docs/configuration/sources/icecast.mdx
@@ -9,6 +9,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import IcecastConfig from '!!raw-loader!@site/../config/icecast.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_icecast.md"
import ShouldScrobble from "@site/src/components/snippets/_should-scrobble-details.mdx"
Parse metadata from any Icecast Station (streams) to use for scrobbling.
@@ -64,9 +65,5 @@ If no `sources` are configured for multi-scrobbler it will automatically try to
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | :-------- | :------ | ------------------------------- |
- | `ICECAST_ID` | Yes | | A unique ID |
- | `ICECAST_URL` | Yes | | Icecast URL |
- | `ICECAST_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/jellyfin.mdx b/docsite/docs/configuration/sources/jellyfin.mdx
index 376b4dd9..8b9ff1b2 100644
--- a/docsite/docs/configuration/sources/jellyfin.mdx
+++ b/docsite/docs/configuration/sources/jellyfin.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JellyfinConfig from '!!raw-loader!@site/../config/jellyfin.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_jellyfin.md"
Must be using Jellyfin 10.7 or greater
@@ -52,20 +53,5 @@ Use `JELLYFIN_FRONTEND_URL_OVERRIDE=https://jellyfin.mydomain.com` in order for
#### Configuration
- | Environmental Variable | Required? | Default | Description |
- | -------------------------------- | --------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
- | `JELLYFIN_ID` | **Yes** | | A unique ID |
- | `JELLYFIN_URL` | **Yes** | | The URL of the Jellyfin server IE `http://localhost:8096` |
- | `JELLYFIN_USER` | **Yes** | | The user to authenticate with the API |
- | `JELLYFIN_APIKEY` | No | | The API Key to use for authentication **(Must provide either apikey or password)** |
- | `JELLYFIN_PASSWORD` | No | | The password of the user to authenticate for. **(Must provide either apikey or password)** |
- | `JELLYFIN_USERS_ALLOW` | No | | Comma-separated list of usernames (from Jellyfin) to scrobble for |
- | `JELLYFIN_USERS_BLOCK` | No | | Comma-separated list of usernames (from Jellyfin) to disallow scrobble for |
- | `JELLYFIN_DEVICES_ALLOW` | No | | Comma-separated list of devices to scrobble from |
- | `JELLYFIN_DEVICES_BLOCK` | No | | Comma-separated list of devices to disallow scrobbles from |
- | `JELLYFIN_LIBRARIES_ALLOW` | No | | Comma-separated list of libraries to allow scrobbles from |
- | `JELLYFIN_LIBRARIES_BLOCK` | No | | Comma-separated list of libraries to disallow scrobbles from |
- | `JELLYFIN_MEDIATYPES_ALLOW` | No | | Comma-separated list of [media types](https://github.com/jellyfin/jellyfin-sdk-typescript/blob/master/src/generated-client/models/media-type.ts#L22) to allow scrobbling. Defaults to `audio` |
- | `JELLYFIN_FRONTEND_URL_OVERRIDE` | No | | The external URL to use for album art assets instead of `JELLYFIN_URL` |
- | `JELLYFIN_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/jriver.mdx b/docsite/docs/configuration/sources/jriver.mdx
index 69168e82..e811094d 100644
--- a/docsite/docs/configuration/sources/jriver.mdx
+++ b/docsite/docs/configuration/sources/jriver.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JriverConfig from '!!raw-loader!@site/../config/jriver.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_jriver.md"
In order for multi-scrobbler to communicate with JRiver you must have [Web Server Interface](https://wiki.jriver.com/index.php/Web_Service_Interface#Documentation_of_Functions) enabled. This can be found in the JRiver GUI:
@@ -50,11 +51,5 @@ If any part of this URL is missing multi-scrobbler will use a default value. Thi
## Configuration
- | Environmental Variable | Required | Default | Description |
- | ---------------------- | -------- | ------------------------------- | ---------------------------------------------- |
- | JRIVER_ID | Yes | | A unique ID |
- | JRIVER_URL | Yes | http://localhost:52199/MCWS/v1/ | The URL of the JRiver server |
- | JRIVER_USERNAME | No | | If authentication is enabled, the username set |
- | JRIVER_PASSWORD | No | | If authenticated is enabled, the password set |
- | JRIVER_NAME | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/kodi.mdx b/docsite/docs/configuration/sources/kodi.mdx
index 1dba71d5..68771b85 100644
--- a/docsite/docs/configuration/sources/kodi.mdx
+++ b/docsite/docs/configuration/sources/kodi.mdx
@@ -9,6 +9,7 @@ import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import KodiConfig from '!!raw-loader!@site/../config/kodi.json.example';
import Config from '@site/src/components/GenericConfiguration.mdx';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_kodi.md"
In order for multi-scrobbler to communicate with Kodi you must have the [Web Interface](https://kodi.wiki/view/Web_interface) enabled. This can be done in the Kodi GUI:
@@ -51,11 +52,5 @@ If any part of this URL is missing multi-scrobbler will use a default value. Thi
## Configuration
- | Environmental Variable | Required | Default | Description |
- | ---------------------- | -------- | ----------------------------- | ------------------------------- |
- | KODI_ID | Yes | | A unique ID |
- | KODI_URL | Yes | http://localhost:8080/jsonrpc | The URL of the Kodi server |
- | KODI_USERNAME | No | | The username set |
- | KODI_PASSWORD | No | | The password set |
- | KODI_NAME | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/koito-source.mdx b/docsite/docs/configuration/sources/koito-source.mdx
index 4e724d21..7c8df031 100644
--- a/docsite/docs/configuration/sources/koito-source.mdx
+++ b/docsite/docs/configuration/sources/koito-source.mdx
@@ -9,6 +9,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import KoitoConfig from '!!raw-loader!@site/../config/koito.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_koito.md"
This Source monitors a Koito account's scrobble history and then re-scrobbles discovered tracks to configured [Clients.](/configuration/clients)
@@ -25,11 +26,5 @@ See the [Koito (Client)](/configuration/clients/koito) configuration for general
#### Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | --------- | ------- | --------------------------------- |
- | `SOURCE_KOITO_ID` | Yes | | A unique ID |
- | `SOURCE_KOITO_TOKEN` | Yes | | API Key from your Koito Account |
- | `SOURCE_KOITO_USER` | Yes | | Your Koito username |
- | `SOURCE_KOITO_URL` | No | | The base URL for the Koito server |
- | `SOURCE_KOITO_NAME` | No | | A vanity name differen than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/lastfm-endpoint.mdx b/docsite/docs/configuration/sources/lastfm-endpoint.mdx
index f532f5f8..dc2e77cb 100644
--- a/docsite/docs/configuration/sources/lastfm-endpoint.mdx
+++ b/docsite/docs/configuration/sources/lastfm-endpoint.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import LastfmEndpointConfig from '!!raw-loader!@site/../config/endpointlfm.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_endpointlfm.md"
This Source enables multi-scrobbler to accept scrobbles from outside applications as if it was a Last.fm server.
@@ -39,10 +40,5 @@ http://localhost:9078/api/lastfm/mySlug
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | :-------- | ------- | ------------------------------------------------------------------------------------------------------------------ |
- | `LFM_ID` | Yes | | A unique ID |
- | `LFM_ENABLE` | No | | Use LFM Endpoint as a Source without any other configuration. Only required if slug/token are not provided as ENVs |
- | `LFM_SLUG` | No | | (Optional) The URL suffix to use for accepting LFM scrobbles |
- | `LFM_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/lastfm-source.mdx b/docsite/docs/configuration/sources/lastfm-source.mdx
index ad8d809b..c83077a1 100644
--- a/docsite/docs/configuration/sources/lastfm-source.mdx
+++ b/docsite/docs/configuration/sources/lastfm-source.mdx
@@ -9,6 +9,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import LastfmConfig from '!!raw-loader!@site/../config/lastfm.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_lastfm.md"
This Source **monitors your Last.fm scrobble history** and re-scrobbles new activity to configured [Clients.](/configuration/clients)
@@ -24,12 +25,5 @@ To configure this Source use the same registration instructions and configuratio
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------------- | --------- | --------------------------------------- | ----------------------------------------------------------------------------- |
- | `SOURCE_LASTFM_ID` | Yes | | A unique ID |
- | `SOURCE_LASTFM_API_KEY` | Yes | | Api Key from your API Account |
- | `SOURCE_LASTFM_SECRET` | Yes | | Shared secret from your API Account |
- | `SOURCE_LASTFM_REDIRECT_URI` | No | `http://localhost:9078/lastfm/callback` | Url to use for authentication. Must include `lastfm/callback` somewhere in it |
- | `SOURCE_LASTFM_SESSION` | No | | Session id. Will be generated by authentication flow if not provided. |
- | `SOURCE_LASTFM_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/librefm-source.mdx b/docsite/docs/configuration/sources/librefm-source.mdx
index 33da1d75..563d13c8 100644
--- a/docsite/docs/configuration/sources/librefm-source.mdx
+++ b/docsite/docs/configuration/sources/librefm-source.mdx
@@ -9,6 +9,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/librefm.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_librefm.md"
This Source **monitors your Libre.fm scrobble history** and re-scrobbles new activity to configured [Clients.](/configuration/clients)
@@ -23,14 +24,5 @@ To configure this Source use the same registration instructions and configuratio
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ----------------------------- | --------- | ---------------------------------------- | ------------------------------------------------------------------------------------------------ |
- | `SOURCE_LIBREFM_ID` | Yes | | A unique ID |
- | `SOURCE_LIBREFM_ENABLE` | No | | Set to `true` to enable Libre.fm, if not using any of the below variables |
- | `SOURCE_LIBREFM_API_KEY` | No | `anything` | Optional API Key |
- | `SOURCE_LIBREFM_SECRET` | No | `anything` | Optional shared secret |
- | `SOURCE_LIBREFM_REDIRECT_URI` | No | `http://localhost:9078/librefm/callback` | Url to use for authentication. Must include `librefm/callback` somewhere in it |
- | `SOURCE_LIBREFM_SESSION` | No | | Session id. Will be generated by authentication flow if not provided. |
- | `SOURCE_LIBREFM_URLBASE` | No | | Use for custom Libre.fm instance only. The host + path prefix EX `https://my.libre.example/2.0/` |
- | `SOURCE_LIBREFM_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/listenbrainz-endpoint.mdx b/docsite/docs/configuration/sources/listenbrainz-endpoint.mdx
index 93306ab7..1aa54eec 100644
--- a/docsite/docs/configuration/sources/listenbrainz-endpoint.mdx
+++ b/docsite/docs/configuration/sources/listenbrainz-endpoint.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import ListenbrainzEndpointConfig from '!!raw-loader!@site/../config/endpointlz.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_endpointlz.md"
This Source enables multi-scrobbler to accept scrobbles from outside applications **as if it was a Listenbrainz server.**
@@ -109,12 +110,5 @@ To troubleshoot any errors, and assuming you are using Home Assistant, view the
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | :-------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
- | `LZE_ID` | Yes | | A unique ID |
- | `LZE_ENABLE` | No | | Use LZ Endpoint as a Source without any other configuration. Only required if slug/token are not provided as ENVs |
- | `LZE_TOKEN` | No | | LZ "Authentication Token" you provided to the scrobbling application |
- | `LZE_SLUG` | No | | (Optional) The URL suffix to use for accepting LZ scrobbles |
- | `LZE_USERNAME` | No | | (Optional) A fake username that will be returned for token validation and on now-playing responses. If none is provided the Source's name is used instead. |
- | `LZE_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/listenbrainz-source.mdx b/docsite/docs/configuration/sources/listenbrainz-source.mdx
index a79c3f8d..44c0d26a 100644
--- a/docsite/docs/configuration/sources/listenbrainz-source.mdx
+++ b/docsite/docs/configuration/sources/listenbrainz-source.mdx
@@ -9,6 +9,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import ListenbrainzConfig from '!!raw-loader!@site/../config/listenbrainz.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_listenbrainz.md"
This Source monitors a Listenbrainz account's scrobble history and then re-scrobbles discovered tracks to configured clients.
@@ -26,11 +27,5 @@ On your [profile page](https://listenbrainz.org/profile/) find your **User Token
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ----------------------------- | ------------------------------- |
- | `SOURCE_LZ_ID` | Yes | | A unique ID |
- | `SOURCE_LZ_TOKEN` | Yes | | User token from your LZ profile |
- | `SOURCE_LZ_USER` | Yes | | Your LZ username |
- | `SOURCE_LZ_URL` | No | https://api.listenbrainz.org/ | The base URL for the LZ server |
- | `SOURCE_LZ_NAME` | No | | A vanity name different than ID |d
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/maloja.mdx b/docsite/docs/configuration/sources/maloja.mdx
index 5c2bacd1..db259ee5 100644
--- a/docsite/docs/configuration/sources/maloja.mdx
+++ b/docsite/docs/configuration/sources/maloja.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import MalojaConfig from '!!raw-loader!@site/../config/maloja.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_maloja.md"
:::tip[Other Uses]
@@ -22,10 +23,5 @@ See the [Maloja (Client)](/configuration/clients/maloja) configuration for gener
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ----------------------- | --------- | ------- | ------------------------------- |
- | `SOURCE_MALOJA_ID` | Yes | | A unique ID |
- | `SOURCE_MALOJA_URL` | Yes | | Base URL of your installation |
- | `SOURCE_MALOJA_API_KEY` | Yes | | Api Key |
- | `SOURCE_MALOJA_NAME` | Yes | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/mopidy.mdx b/docsite/docs/configuration/sources/mopidy.mdx
index 6763ec77..43044c52 100644
--- a/docsite/docs/configuration/sources/mopidy.mdx
+++ b/docsite/docs/configuration/sources/mopidy.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import MopidyConfig from '!!raw-loader!@site/../config/mopidy.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_mopidy.md"
Mopidy is a headless music server that supports playing music from many [standard and non-standard sources such as Pandora, Bandcamp, and Tunein.](https://mopidy.com/ext/)
@@ -98,5 +99,5 @@ For certain sources (Soundcloud) Mopidy does not have all track info (Album) and
## Configuration
-No ENV support
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/mpd.mdx b/docsite/docs/configuration/sources/mpd.mdx
index 79a865d6..07a72b20 100644
--- a/docsite/docs/configuration/sources/mpd.mdx
+++ b/docsite/docs/configuration/sources/mpd.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import MPDConfig from '!!raw-loader!@site/../config/mpd.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_mpd.md"
MS communicates with MPD using the [TCP client connection.](https://mpd.readthedocs.io/en/stable/user.html#client-connections)
@@ -23,10 +24,5 @@ Multi-scrobbler requires only the [`read`](https://mpd.readthedocs.io/en/stable/
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ---------------- | ------------------------------- |
- | `MPD_ID` | Yes | | A unique ID |
- | `MPD_URL` | No | `localhost:6600` | |
- | `MPD_PASSWORD` | No | | |
- | `MPD_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/mpris.mdx b/docsite/docs/configuration/sources/mpris.mdx
index b65b153c..f4eaea46 100644
--- a/docsite/docs/configuration/sources/mpris.mdx
+++ b/docsite/docs/configuration/sources/mpris.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import MPRISConfig from '!!raw-loader!@site/../config/mpris.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_mpris.md"
[MPRIS](https://specifications.freedesktop.org/mpris-spec/latest) is a standard interface for communicating with Music Players on **linux operating systems.**
@@ -71,11 +72,5 @@ MPRIS communication requires multi-scrobbler to have access to the host's dbus-d
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ------- | -------------------------------------------------------------------------------- |
- | MPRIS_ID | Yes | | A unique ID |
- | MPRIS_ENABLE | No | | Use MPRIS as a Source (useful when you don't need any other options) |
- | MPRIS_BLACKLIST | No | | Comma-delimited list of player names not to scrobble from |
- | MPRIS_WHITELIST | No | | Comma-delimited list of players names to ONLY scrobble from. Overrides blacklist |
- | MPRIS_NAME | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/musikcube.mdx b/docsite/docs/configuration/sources/musikcube.mdx
index 1804236e..abd280a8 100644
--- a/docsite/docs/configuration/sources/musikcube.mdx
+++ b/docsite/docs/configuration/sources/musikcube.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import MusikcubeConfig from '!!raw-loader!@site/../config/musikcube.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_musikcube.md"
In order to use [Musikcube](https://musikcube.com) configure it to accept [websocket connections](https://github.com/clangen/musikcube/wiki/remote-api-documentation) in **server setup**:
@@ -31,10 +32,5 @@ If no URL is provided to MS it will try to use `ws://localhost:7905`
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | --------------------- | ------------------------------------ |
- | `MC_ID` | Yes | | A unique ID |
- | `MC_URL` | No | `ws://localhost:7905` | Use port set for **metadata server** |
- | `MC_PASSWORD` | Yes | | |
- | `MC_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/plex.mdx b/docsite/docs/configuration/sources/plex.mdx
index 272bab7b..a860daee 100644
--- a/docsite/docs/configuration/sources/plex.mdx
+++ b/docsite/docs/configuration/sources/plex.mdx
@@ -9,6 +9,7 @@ import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import AzuracastConfig from '!!raw-loader!@site/../config/azuracast.json.example';
import PlexConfig from '!!raw-loader!@site/../config/plex.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_plex.md"
Find your [**Plex Token**](https://support.plex.tv/articles/204059436-finding-an-authentication-token-x-plex-token/) and make note of the **URL** and **Port** used to connect to your Plex instance.
@@ -194,16 +195,5 @@ To configure MS to use Musicbrainz with your Plex metadata use one of the method
#### Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ------- | ---------------------------------------------------------------------- |
- | `PLEX_ID` | **Yes** | | A unique ID |
- | `PLEX_URL` | **Yes** | | The URL of the Plex server IE `http://localhost:32400` |
- | `PLEX_TOKEN` | **Yes** | | The **Plex Token** to use with the API |
- | `PLEX_USERS_ALLOW` | No | | Comma-separated list of usernames (from Plex) to scrobble for |
- | `PLEX_USERS_BLOCK` | No | | Comma-separated list of usernames (from Plex) to disallow scrobble for |
- | `PLEX_DEVICES_ALLOW` | No | | Comma-separated list of devices to scrobble from |
- | `PLEX_DEVICES_BLOCK` | No | | Comma-separated list of devices to disallow scrobbles from |
- | `PLEX_LIBRARIES_ALLOW` | No | | Comma-separated list of libraries to allow scrobbles from |
- | `PLEX_LIBRARIES_BLOCK` | No | | Comma-separated list of libraries to disallow scrobbles from |
- | `PLEX_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/rocksky-source.mdx b/docsite/docs/configuration/sources/rocksky-source.mdx
index ec654c38..f036920a 100644
--- a/docsite/docs/configuration/sources/rocksky-source.mdx
+++ b/docsite/docs/configuration/sources/rocksky-source.mdx
@@ -9,6 +9,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/rocksky.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_rocksky.md"
:::tip[Other Uses]
@@ -33,10 +34,5 @@ See the [Rocksky (Client)](/configuration/clients/rocksky#setup) configuration f
* [File/AIO config](/configuration?configType=file#configuration-types) must include `"configureAs": "source"`
- | Environmental Variable | Required? | Default | Description |
- | :---------------------- | --------- | ------- | ----------------------------------------------------------------------------------- |
- | `SOURCE_ROCKSKY_ID` | Yes | | A unique ID |
- | `SOURCE_ROCKSKY_HANDLE` | Yes | | Your **full** ATProto handle. For Bluesky account this is like `myUser.bsky.social` |
- | `SOURCE_ROCKSKY_KEY` | Yes | | API Key obtained from Rocksky developer dashboard |
- | `SOURCE_ROCKSKY_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/sonos.mdx b/docsite/docs/configuration/sources/sonos.mdx
index 56bf0b8a..e46e1d23 100644
--- a/docsite/docs/configuration/sources/sonos.mdx
+++ b/docsite/docs/configuration/sources/sonos.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/sonos.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_sonos.md"
Multi-scrobbler can use the [Sonos](https://www.sonos.com) [local API](https://docs.sonos.com/docs/control) to monitor what your Sonos system is playing.
@@ -90,13 +91,5 @@ The **optional** `devices` and `groups` related properties found in the config b
You **must** define the IP address of at least one Sonos/accessory in order for Multi-scrobbler to connect to your Sonos system.
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ------- | :--------------------------------------------------------------------- |
- | `SONOS_ID` | Yes | | A unique ID |
- | `SONOS_HOST` | Yes | | The IP address of any active Sonos device/accessory EX `192.168.0.150` |
- | `SONOS_DEVICES_ALLOW` | No | | Comma-separated list of Sonos device names to scrobble from |
- | `SONOS_DEVICES_BLOCK` | No | | Comma-separated list of Sonos device names to disallow scrobbles from |
- | `SONOS_GROUPS_ALLOW` | No | | Comma-separated list of device group names to scrobble from |
- | `SONOS_GROUPS_BLOCK` | No | | Comma-separated list of devices group names to disallow scrobbles from |
- | `SONOS_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/spotify.mdx b/docsite/docs/configuration/sources/spotify.mdx
index a7f5dfd1..b0746e48 100644
--- a/docsite/docs/configuration/sources/spotify.mdx
+++ b/docsite/docs/configuration/sources/spotify.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import SpotifyConfig from '!!raw-loader!@site/../config/spotify.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_spotify.md"
import IconWarning from '@theme/Admonition/Icon/Warning';
@@ -111,11 +112,5 @@ Use **one** of the following methods to specify a valid Redirect URI and complet
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ----------------------- | --------- | -------------------------------- | ------------------------------- |
- | `SPOTIFY_ID` | Yes | | A unique ID |
- | `SPOTIFY_CLIENT_ID` | Yes | | |
- | `SPOTIFY_CLIENT_SECRET` | Yes | | |
- | `SPOTIFY_REDIRECT_URI` | No | `http://localhost:9078/callback` | URI must end in `callback` |
- | `SPOTIFY_NAME` | No | | A vantiy name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/subsonic.mdx b/docsite/docs/configuration/sources/subsonic.mdx
index ddeaddc0..b632a7a9 100644
--- a/docsite/docs/configuration/sources/subsonic.mdx
+++ b/docsite/docs/configuration/sources/subsonic.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import SubsonicConfig from '!!raw-loader!@site/../config/subsonic.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_subsonic.md"
This Source can be used for any application that implements the [Subsonic API](http://www.subsonic.org/pages/api.jsp) and supports the [`getNowPlaying`](http://www.subsonic.org/pages/api.jsp#getNowPlaying) endpoint (such as [Airsonic](https://airsonic.github.io/) and [Navidrome](https://www.navidrome.org/))
@@ -47,11 +48,5 @@ If the server properly reports no playing song when playback has stopped or this
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ------- | ------------------------------------ |
- | `SUBSONIC_ID` | Yes | | A unique ID |
- | `SUBSONIC_USER` | Yes | | |
- | `SUBSONIC_PASSWORD` | Yes | | |
- | `SUBSONIC_URL` | Yes | | Base url of your subsonic-api server |
- | `SUBSONIC_NAME` | No | | A vanity name different than ID |
+
diff --git a/docsite/docs/configuration/sources/tealfm-source.mdx b/docsite/docs/configuration/sources/tealfm-source.mdx
index bd3a7c18..c35ee85a 100644
--- a/docsite/docs/configuration/sources/tealfm-source.mdx
+++ b/docsite/docs/configuration/sources/tealfm-source.mdx
@@ -9,6 +9,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/tealfm.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_tealfm.md"
:::tip[Other Uses]
@@ -104,10 +105,5 @@ Allow scrobbles from plyr.fm and unknown services:
- | Environmental Variable | Required? | Default | Description |
- | :------------------------- | --------- | ------- | ------------------------------------------------------------------------------------------ |
- | `SOURCE_TEALFM_ID` | Yes | | A unique ID |
- | `SOURCE_TEALFM_IDENTIFIER` | Yes | | Your **full** ATProto handle or DID. For Bluesky account this is like `myUser.bsky.social` |
- | `SOURCE_TEALFM_APP_PW` | Yes | | Bluesky/ATProto network App Password |
- | `SORUCE_TEALFM_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/vlc.mdx b/docsite/docs/configuration/sources/vlc.mdx
index 335facdb..49d88bd9 100644
--- a/docsite/docs/configuration/sources/vlc.mdx
+++ b/docsite/docs/configuration/sources/vlc.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/vlc.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_vlc.md"
MS communicates with [VLC](https://www.videolan.org/vlc/) using the [Web (`http`) interface module](https://wiki.videolan.org/VLC_HTTP_requests/)
@@ -99,10 +100,5 @@ If you find that VLC is incorrectly reporting track information (in its interfac
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ---------------- | ------------------------------- |
- | `VLC_ID` | Yes | | A unique ID |
- | `VLC_URL` | No | `localhost:8080` | |
- | `VLC_PASSWORD` | Yes | | |
- | `VLC_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/webscrobbler.mdx b/docsite/docs/configuration/sources/webscrobbler.mdx
index 1a8c54a8..9db16c0b 100644
--- a/docsite/docs/configuration/sources/webscrobbler.mdx
+++ b/docsite/docs/configuration/sources/webscrobbler.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/webscrobbler.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_webscrobbler.md"
After installing the [Webscrobbler extension](https://web-scrobbler.com/) open the preferences/settings for it:
@@ -87,11 +88,5 @@ This affects **only** MS's behavior and does not affect the general connector be
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | ---------------------- | --------- | ------- | ------------------------------------------------------------------------ |
- | WS_ID | Yes | | A unique ID |
- | WS_ENABLE | No | | Set to 'true' to enable WS without needing to define other ENVs |
- | WS_WHITELIST | No | | Only scrobble from these WebScrobbler Connectors. Comma-delimited list |
- | WS_BLACKLIST | No | | Do not scrobble from these WebScrobbler Connectors. Comma-delimited list |
- | WS_NAME | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/yamaha-musiccast.mdx b/docsite/docs/configuration/sources/yamaha-musiccast.mdx
index 272b0463..65542243 100644
--- a/docsite/docs/configuration/sources/yamaha-musiccast.mdx
+++ b/docsite/docs/configuration/sources/yamaha-musiccast.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/musiccast.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_musiccast.md"
Monitor [MusicCast](https://usa.yamaha.com/products/contents/audio_visual/musiccast/index.html) device/receivers for music played on Network/USB/CD inputs.
@@ -31,9 +32,5 @@ EX
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | :-------- | ------- | :------------------------------ |
- | `MCAST_ID` | Yes | | A unique ID |
- | `MCAST_URL` | Yes | | The Musiccast device URL |
- | `MCAST_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/yandex-music.mdx b/docsite/docs/configuration/sources/yandex-music.mdx
index 03255258..fb1bd986 100644
--- a/docsite/docs/configuration/sources/yandex-music.mdx
+++ b/docsite/docs/configuration/sources/yandex-music.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/ymbridge.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_ymbridge.md"
Monitor your [**Yandex Music**](https://music.yandex.com) listening activity in real-time.
@@ -72,10 +73,5 @@ If you have issues specifically with the MS Source please mention [**Druidblack*
## Configuration
- | Environmental Variable | Required? | Default | Description |
- | :--------------------- | :-------- | ------- | :------------------------------------------------------------------------ |
- | `YMBRIDGE_ID` | Yes | | A unique ID |
- | `YMBRIDGE_URL` | Yes | | `http://URL:PORT` for the `yandex-music-bridge` container |
- | `YMBRIDGE_API_KEY` | No | | The same key used for `YM_API_KEY` on the `yandex-music-bridge` container |
- | `YMBRIDGE_NAME` | No | | A vanity name different than ID |
+
\ No newline at end of file
diff --git a/docsite/docs/configuration/sources/youtube-music.mdx b/docsite/docs/configuration/sources/youtube-music.mdx
index f5609dee..ebbdeba5 100644
--- a/docsite/docs/configuration/sources/youtube-music.mdx
+++ b/docsite/docs/configuration/sources/youtube-music.mdx
@@ -8,6 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import CodeBlock from '@theme/CodeBlock';
import JsonConfig from '!!raw-loader!@site/../config/ytmusic.json.example';
+import ENVConfig from "@site/docs/configuration/sources/_env_configs/_ytmusic.md"
:::warning
@@ -179,13 +180,5 @@ Only one of these methods needs to be used.
## Configuration
-| Environmental Variable | Required? | Default | Description |
-| ---------------------- | --------- | ------- | --------------------------------------------- |
-| YTM_ID | Yes | | A unique ID |
-| YTM_COOKIE | No | | Value for Cookie Authentication |
-| YTM_CLIENT_ID | No | | Client ID for OAuth Athentication |
-| YTM_CLIENT_SECRET | No | | Client Secret for OAuth Athentication |
-| YTM_REDIRECT_URI | No | | A custom redirect URI for OAuth Athentication |
-| YTM_LOG_DIFF | No | false | Log YTM history changes |
-| YTM_NAME | No | | A vanity name different than ID |
+
\ No newline at end of file