Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9ddb77676c | ||
|
|
6a3f82939c | ||
|
|
c594b95bb1 | ||
|
|
bc376d7e05 | ||
|
|
5d2f5125da | ||
|
|
62f148b472 | ||
|
|
396ae41209 | ||
|
|
ad4b634a6d | ||
|
|
a1190cf146 | ||
|
|
6c34564b6e | ||
|
|
d8abf7b794 | ||
|
|
d9cb8b52fc | ||
|
|
d33c6b5a6b | ||
|
|
1ecd37f1b7 | ||
|
|
21ac81e143 | ||
|
|
1000e51202 | ||
|
|
5240c1092b | ||
|
|
085f1accd7 | ||
|
|
6ec8aec181 | ||
|
|
45bc475bff | ||
|
|
d94f773ee3 | ||
|
|
8ac4fdb007 | ||
|
|
c6c071ea64 | ||
|
|
4857055d78 | ||
|
|
8f22b5446a | ||
|
|
f9cbba9df1 | ||
|
|
99e83c6f9c | ||
|
|
ec6b7d1dfd | ||
|
|
6fb3413586 | ||
|
|
335d3b4f1c | ||
|
|
08340633c2 | ||
|
|
b67752fa92 | ||
|
|
330776fe7f | ||
|
|
7c8cdb3dbc | ||
|
|
7331ec911d | ||
|
|
3ecc749ddb | ||
|
|
09f1a497c2 | ||
|
|
0e807b5a56 | ||
|
|
6714bd10f3 | ||
|
|
3fb326ff2e | ||
|
|
38bae9c23c | ||
|
|
a90344b0ea | ||
|
|
380e871320 | ||
|
|
770b4284db | ||
|
|
73281d40d1 | ||
|
|
59ddb79b15 | ||
|
|
cb0c22454b | ||
|
|
6b89b80815 | ||
|
|
d72f72f838 | ||
|
|
ad97ec7de1 | ||
|
|
79ff101cb0 | ||
|
|
474c182fdf | ||
|
|
16bbbbb008 | ||
|
|
22ec97de4e | ||
|
|
381b24ef07 | ||
|
|
12d6861006 | ||
|
|
992084f2b6 | ||
|
|
748d9a164e | ||
|
|
cf1bd32d09 | ||
|
|
4bfbde507a | ||
|
|
5276b57bfe | ||
|
|
f2515a8ecb | ||
|
|
47360033e1 | ||
|
|
a9b7e48a7c | ||
|
|
8f33d28a4e | ||
|
|
809e31a945 | ||
|
|
e4692fee8a | ||
|
|
6f0dd34a75 | ||
|
|
dc2b1e8406 | ||
|
|
2f1896b095 | ||
|
|
e5a22f42cd | ||
|
|
5a0c024a30 | ||
|
|
d84da25d28 | ||
|
|
616bfb9b04 | ||
|
|
fca903cf2a | ||
|
|
3eb54941aa | ||
|
|
d21029380a | ||
|
|
2eab849dd6 | ||
|
|
e98adbb963 | ||
|
|
c2e6915fb1 | ||
|
|
712d5d4f85 | ||
|
|
d21e5f5756 | ||
|
|
5f44dac57e | ||
|
|
7e1d8736c2 | ||
|
|
1fb98a9bae | ||
|
|
5e3cf3e34c | ||
|
|
9e3874c630 | ||
|
|
6ff638536f | ||
|
|
dcb16b869b | ||
|
|
e10671ae6e | ||
|
|
3b1a6c6a2d | ||
|
|
13a22a1f14 | ||
|
|
6c6cf27bd9 | ||
|
|
f3040b8034 | ||
|
|
f56e451803 | ||
|
|
e17c308f91 | ||
|
|
c2f51b3df3 | ||
|
|
f646297b96 | ||
|
|
17e8ddc7b4 | ||
|
|
846ffb583e | ||
|
|
5174e03636 | ||
|
|
d3f3adea8b | ||
|
|
c52237cc4c | ||
|
|
67a3681caf | ||
|
|
72985e9eab | ||
|
|
d460317a3d | ||
|
|
7ad5573d7c | ||
|
|
1e8bdd114c | ||
|
|
c24a31b9c6 | ||
|
|
2b119a0622 | ||
|
|
633431175b | ||
|
|
606d12550a | ||
|
|
0d00edce00 | ||
|
|
ef05bd144d | ||
|
|
315057f468 | ||
|
|
cd4715d041 | ||
|
|
7192f2efdb | ||
|
|
c78e29bf2d | ||
|
|
74c2c9afea | ||
|
|
56f64f1f2c | ||
|
|
bb3924a175 | ||
|
|
247124c3ce | ||
|
|
5a9fc18b8d | ||
|
|
582c5f7dc8 | ||
|
|
d85c2d74ca | ||
|
|
d941584bd7 | ||
|
|
fa5d781808 | ||
|
|
878abd3ea7 | ||
|
|
c398dc9e91 | ||
|
|
14de449429 | ||
|
|
3ce6df6c5c | ||
|
|
53040f2dd6 | ||
|
|
eba5a4aec0 | ||
|
|
ecf184fa78 | ||
|
|
e797db8f83 | ||
|
|
689be43e24 | ||
|
|
7e1a776886 | ||
|
|
ad49945ac9 | ||
|
|
8acf6bbdea | ||
|
|
7ac70bc195 | ||
|
|
7f2114794b | ||
|
|
876428fa42 | ||
|
|
d1abbabcab | ||
|
|
42df2ddc5d | ||
|
|
986405955f | ||
|
|
425eba8b2f | ||
|
|
cd053661cd | ||
|
|
f1e854cb5d | ||
|
|
ed7096dacd | ||
|
|
f306200479 | ||
|
|
09de2c7795 | ||
|
|
016f0b81b4 | ||
|
|
990ebaa3b3 | ||
|
|
a1863d2870 | ||
|
|
a746452425 | ||
|
|
7bf64b79be | ||
|
|
4a6934cdbc | ||
|
|
7dc94b8873 | ||
|
|
36c9ced058 |
@@ -1,22 +0,0 @@
|
||||
# Created by .ignore support plugin (hsz.mobi)
|
||||
node_modules
|
||||
npm-debug.log
|
||||
Dockerfile
|
||||
.dockerignore
|
||||
.gitignore
|
||||
.github
|
||||
.git
|
||||
*.log
|
||||
.idea
|
||||
config/*.json
|
||||
config/*.bak
|
||||
/docs
|
||||
/logs
|
||||
.flatpak-builder
|
||||
flatpak/generated-sources.json
|
||||
flatpak/.flatpak-builder
|
||||
docsite/build
|
||||
docsite/node_modules
|
||||
docsite/.docusaurus
|
||||
docsite/.cache-loader
|
||||
build
|
||||
@@ -1,40 +0,0 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
[Please check the FAQ](https://github.com/FoxxMD/multi-scrobbler/blob/master/docsite/docs/FAQ.md) before submitting a bug report.
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
**Logs**
|
||||
If possible reproduce the issue with [debug logging ON](https://github.com/FoxxMD/multi-scrobbler/blob/master/docsite/docs/FAQ.md#turn-on-debug-logging)
|
||||
|
||||
```
|
||||
Copy and paste as much log data as possible related to this issue here.
|
||||
```
|
||||
|
||||
**Versions (please complete the following information):**
|
||||
Provide version information for any related sources/clients.
|
||||
|
||||
- multi-scrobbler: [e.g. 0.4.0 on docker]
|
||||
- maloja [e.g. 3.1.4]
|
||||
- jellyfin [e.g. 10.8.9]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
@@ -1,42 +0,0 @@
|
||||
name: Deploy to GitHub Pages
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
# Review gh actions docs if you want to further define triggers, paths, etc
|
||||
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#on
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
name: Deploy to GitHub Pages
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 18
|
||||
cache: npm
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
working-directory: ./docsite
|
||||
- name: Build website
|
||||
run: npm run build
|
||||
working-directory: ./docsite
|
||||
|
||||
# Popular action to deploy to GitHub Pages:
|
||||
# Docs: https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-docusaurus
|
||||
- name: Deploy to GitHub Pages
|
||||
uses: peaceiris/actions-gh-pages@v3
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
# Build output to publish to the `gh-pages` branch:
|
||||
publish_dir: ./docsite/build
|
||||
# The following lines assign commit authorship to the official
|
||||
# GH-Actions bot for deploys to `gh-pages` branch:
|
||||
# https://github.com/actions/checkout/issues/13#issuecomment-724415212
|
||||
# The GH actions bot is used by default if you didn't specify the two fields.
|
||||
# You can swap them out with your own user credentials.
|
||||
user_name: github-actions[bot]
|
||||
user_email: 41898282+github-actions[bot]@users.noreply.github.com
|
||||
@@ -1,69 +0,0 @@
|
||||
name: Publish Docker image to Dockerhub
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
- 'develop'
|
||||
tags:
|
||||
- '*.*.*'
|
||||
# don't trigger if just updating docs
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
|
||||
jobs:
|
||||
push_to_registry:
|
||||
name: Push Docker image to Docker Hub
|
||||
runs-on: ubuntu-latest
|
||||
# https://docs.github.com/en/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token
|
||||
permissions:
|
||||
packages: write
|
||||
contents: read
|
||||
steps:
|
||||
- name: Check out the repo
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Log in to Docker Hub
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Login to GitHub Container Registry
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Extract metadata (tags, labels) for Docker
|
||||
id: meta
|
||||
uses: docker/metadata-action@v3
|
||||
with:
|
||||
images: |
|
||||
foxxmd/multi-scrobbler
|
||||
ghcr.io/foxxmd/multi-scrobbler
|
||||
# generate Docker tags based on the following events/attributes
|
||||
tags: |
|
||||
type=raw,value=latest,enable=${{ endsWith(github.ref, 'master') }}
|
||||
type=ref,event=branch,enable=${{ !endsWith(github.ref, 'master') }}
|
||||
type=semver,pattern={{version}}
|
||||
flavor: |
|
||||
latest=false
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v2
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2
|
||||
|
||||
- name: Build and push Docker image
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
context: .
|
||||
push: ${{ github.event_name != 'pull_request' && !env.ACT}}
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
platforms: linux/amd64,linux/arm64
|
||||
@@ -1,132 +0,0 @@
|
||||
# Created by .ignore support plugin (hsz.mobi)
|
||||
### Node template
|
||||
# Logs
|
||||
/logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
web_modules/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
.parcel-cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
out
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
||||
|
||||
# Stores VSCode versions used for testing VSCode extensions
|
||||
.vscode-test
|
||||
|
||||
# yarn v2
|
||||
.yarn/cache
|
||||
.yarn/unplugged
|
||||
.yarn/build-state.yml
|
||||
.yarn/install-state.gz
|
||||
.pnp.*
|
||||
|
||||
config/*.json
|
||||
*.txt
|
||||
.idea/
|
||||
|
||||
src/**/**.js
|
||||
src/**/**.js.map
|
||||
|
||||
*.bak
|
||||
.flatpak-builder
|
||||
flatpak/generated-sources.json
|
||||
|
||||
build
|
||||
!setupProxy.js
|
||||
@@ -1,4 +0,0 @@
|
||||
{
|
||||
"require": ["./register.js", "source-map-support/register"],
|
||||
"reporter": "dot"
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
{
|
||||
"extends": "@istanbuljs/nyc-config-typescript",
|
||||
"exclude": [
|
||||
"node_modules/",
|
||||
"**/src/backend/common/schema/**",
|
||||
"**/src/backend/tests/**",
|
||||
"register.js",
|
||||
"**/src/server/**/*.d.ts",
|
||||
"**/src/client/**"
|
||||
],
|
||||
"include": [
|
||||
"**/src/backend/**/*.ts",
|
||||
"**/src/**/backend/*.js",
|
||||
"**/src/**/backend/*.js.map"
|
||||
],
|
||||
"extension": [
|
||||
".ts"
|
||||
],
|
||||
"reporter": [
|
||||
"text-summary",
|
||||
"html"
|
||||
],
|
||||
"report-dir": "./coverage"
|
||||
}
|
||||
@@ -1,82 +0,0 @@
|
||||
FROM lsiobase/alpine:3.17 as base
|
||||
|
||||
ENV TZ=Etc/GMT
|
||||
|
||||
RUN \
|
||||
echo "**** install build packages ****" && \
|
||||
apk add --no-cache \
|
||||
alpine-base \
|
||||
git \
|
||||
nodejs \
|
||||
npm \
|
||||
#yarn \
|
||||
openssh && \
|
||||
echo "**** cleanup ****" && \
|
||||
rm -rf \
|
||||
/root/.cache \
|
||||
/tmp/*
|
||||
|
||||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
||||
|
||||
ARG data_dir=/config
|
||||
VOLUME $data_dir
|
||||
ENV CONFIG_DIR=$data_dir
|
||||
|
||||
COPY docker/root/ /
|
||||
|
||||
RUN npm install -g patch-package
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
FROM base as build
|
||||
|
||||
# would very much like to use YARN for dependency management but its got show-stopping bad design for prod dependencies
|
||||
# https://github.com/yarnpkg/yarn/issues/6323 -- always downloads devDependencies -- and im not about to migrate to v2 since alpine doesn't support it yet
|
||||
|
||||
# copy dep/TS config and install dev dependencies
|
||||
#COPY --chown=abc:abc package.json tsconfig.json yarn.lock ./
|
||||
COPY --chown=abc:abc package*.json tsconfig.json ./
|
||||
COPY --chown=abc:abc patches ./patches
|
||||
|
||||
|
||||
RUN npm install
|
||||
#RUN yarn install
|
||||
|
||||
COPY --chown=abc:abc . /app
|
||||
|
||||
# need to set before build so server/client build is optimized and has constants (if needed)
|
||||
ENV NODE_ENV=production
|
||||
|
||||
RUN npm run build && rm -rf node_modules
|
||||
#RUN yarn run build && rm -rf node_modules
|
||||
|
||||
FROM base as app
|
||||
|
||||
#COPY --chown=abc:abc package.json yarn.lock ./
|
||||
COPY --chown=abc:abc package*.json ./
|
||||
COPY --chown=abc:abc patches ./patches
|
||||
COPY --from=build --chown=abc:abc /app/build /app/build
|
||||
COPY --from=base /usr/local/bin /usr/local/bin
|
||||
COPY --from=base /usr/local/lib /usr/local/lib
|
||||
|
||||
ENV NODE_ENV=production
|
||||
ENV IS_DOCKER=true
|
||||
#
|
||||
#RUN yarn global add patch-package \
|
||||
# && yarn install --production=true \
|
||||
# && yarn global remove patch-package \
|
||||
# && yarn cache clean --mirror \
|
||||
# && chown abc:abc node_modules \
|
||||
# && rm -rf node_modules/ts-node \
|
||||
# && rm -rf node_modules/typescript
|
||||
|
||||
RUN npm install --omit=dev \
|
||||
&& npm cache clean --force \
|
||||
&& chown abc:abc node_modules \
|
||||
&& rm -rf node_modules/ts-node \
|
||||
&& rm -rf node_modules/typescript \
|
||||
&& rm -rf node_modules/@types
|
||||
|
||||
ARG webPort=9078
|
||||
ENV PORT=$webPort
|
||||
EXPOSE $PORT
|
||||
@@ -1,21 +0,0 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2020 FoxxMD
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@@ -1,97 +0,0 @@
|
||||
# multi-scrobbler
|
||||
|
||||
[](https://github.com/FoxxMD/multi-scrobbler/releases)
|
||||
[](https://opensource.org/licenses/MIT)
|
||||
[](https://hub.docker.com/r/foxxmd/multi-scrobbler)
|
||||
|
||||
<img src="/assets/icon.png" align="right"
|
||||
alt="multi-scrobbler logo" width="180" height="180">
|
||||
|
||||
A javascript app to scrobble music you listened to, to [Maloja](https://github.com/krateng/maloja), [Last.fm](https://www.last.fm), and [ListenBrainz](https://listenbrainz.org)
|
||||
|
||||
* Supports scrobbling from many **Sources**
|
||||
* [Spotify](/docsite/docs/configuration/configuration.md#spotify)
|
||||
* [Plex](/docsite/docs/configuration/configuration.md#plex) or [Tautulli](/docsite/docs/configuration/configuration.md#tautulli)
|
||||
* [Subsonic-compatible APIs](/docsite/docs/configuration/configuration.md#subsonic) (like [Airsonic](https://airsonic.github.io/))
|
||||
* [Jellyfin](/docsite/docs/configuration/configuration.md#jellyfin)
|
||||
* [Youtube Music](/docsite/docs/configuration/configuration.md#youtube-music)
|
||||
* [Last.fm](/docsite/docs/configuration/configuration.md#lastfm-source)
|
||||
* [ListenBrainz](/docsite/docs/configuration/configuration.md#listenbrainz--source-)
|
||||
* [Deezer](/docsite/docs/configuration/configuration.md#deezer)
|
||||
* [MPRIS (Linux Desktop)](/docsite/docs/configuration/configuration.md#mpris)
|
||||
* [Mopidy](/docsite/docs/configuration/configuration.md#mopidy)
|
||||
* [JRiver](/docsite/docs/configuration/configuration.md#jriver)
|
||||
* [Kodi](/docsite/docs/configuration/configuration.md#kodi)
|
||||
* Supports scrobbling to many **Clients**
|
||||
* [Maloja](/docsite/docs/configuration/configuration.md#maloja)
|
||||
* [Last.fm](/docsite/docs/configuration/configuration.md#lastfm)
|
||||
* [ListenBrainz](/docsite/docs/configuration/configuration.md#listenbrainz)
|
||||
* Monitor status of Sources and Clients using [webhooks (Gotify or Ntfy)](/docsite/docs/configuration/configuration.md#webhook-configurations) or [healthcheck endpoint](/docsite/docs/configuration/configuration.md#health-endpoint)
|
||||
* Supports configuring for single or multiple users (scrobbling for your friends and family!)
|
||||
* Web server interface for stats, basic control, and detailed logs
|
||||
* Smart handling of credentials (persistent, authorization through app)
|
||||
* Easy configuration through ENVs or JSON
|
||||
* Install using [Docker images for x86/ARM](/docsite/docs/installation/installation.md#docker), [flatpak](/docsite/docs/installation/installation.md#flatpak), or [locally with NodeJS](/docsite/docs/installation/installation.md#nodejs)
|
||||
|
||||
**Why should I use this over a browser extension and/or mobile app scrobbler?**
|
||||
|
||||
* **Platform independent** -- Because multi-scrobbler communicates directly with service APIs it will scrobble everything you play regardless of where you play it. No more need for apps on every platform you use!
|
||||
* **Open-source** -- Get peace of mind knowing exactly how your personal data is being handled.
|
||||
* **Track your activity regardless of where you listen** -- Scrobble from many Sources to one Client with ease and without duplicating tracks.
|
||||
* **Manage scrobbling for others** -- Scrobble for your friends and family without any setup on their part. Easily silo sources to specific clients to keep plays separate.
|
||||
|
||||
**But I already scrobble my music to Last.fm/ListenBrainz, is multi-scrobbler for me?**
|
||||
|
||||
Yes! You can use [Last.fm as a **Source**](/docsite/docs/configuration/configuration.md#lastfm--source-) or [Listenbrainz as a **Source**](/docsite/docs/configuration/configuration.md#listenbrainz--source-) to forward scrobbles from your profile to any other Client! That way you can keep your current scrobble setup as-is but still get the benefit of capturing your data to a self-hosted location.
|
||||
|
||||
<img src="/assets/status-ui.jpg" width="800">
|
||||
|
||||
## How Does multi-scrobbler (MS) Work?
|
||||
|
||||
You set up configurations for one or more **Sources** and one or more **Clients**. MS monitors all of your configured **Sources**. When new tracks are played by a Source it grabs that information and then sends it (scrobbles it) to all **Clients** that Source is configured to scrobble to.
|
||||
|
||||
### Source
|
||||
|
||||
A **Source** is a data source that contains information about tracks you are playing like a music player or platform. Examples are **Spotify, Jellyfin, Plex, Youtube Music, Airsonic**, etc...
|
||||
|
||||
Source configurations consist of:
|
||||
|
||||
* A friendly name.
|
||||
* Any data needed to communicate or authenticate with the Source.
|
||||
* An optional list of Client names that the Source should scrobble to. If omitted the Source also scrobbles to all configured Clients.
|
||||
|
||||
### Client
|
||||
|
||||
A **Client** is an application that stores the historical information about what songs you have played (scrobbles). Examples are **Maloja, Last.fm, Listenbrainz**...
|
||||
|
||||
Client configurations consist of:
|
||||
|
||||
* A friendly name.
|
||||
* Any data needed to communicate or authenticate with the Client.
|
||||
|
||||
## Installation
|
||||
|
||||
[See the **Installation** documentation](/docsite/docs/installation/installation.md)
|
||||
|
||||
## Configuration
|
||||
|
||||
[See the **Configuration** documentation](/docsite/docs/configuration/configuration.md)
|
||||
|
||||
## Usage
|
||||
|
||||
A status page with statistics, recent logs, and some runtime configuration options can be found at
|
||||
|
||||
```
|
||||
http://localhost:9078
|
||||
```
|
||||
Output is also provided to stdout/stderr as well as file if specified in configuration.
|
||||
|
||||
On first startup you may need to authorize Spotify and/or Last.fm by visiting the callback URL (which can also be accessed from the status page). Visit the status page above to find the applicable link to trigger this.
|
||||
|
||||
## Help/FAQ
|
||||
|
||||
Having issues with connections or configuration? Check the [FAQ](/docsite/docs/FAQ.md) before creating an issue!
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
|
Before Width: | Height: | Size: 9.8 KiB |
|
Before Width: | Height: | Size: 421 B |
|
Before Width: | Height: | Size: 862 B |
@@ -0,0 +1,925 @@
|
||||
{
|
||||
"annotations": {
|
||||
"list": [
|
||||
{
|
||||
"builtIn": 1,
|
||||
"datasource": { "type": "grafana", "uid": "-- Grafana --" },
|
||||
"enable": true,
|
||||
"hide": true,
|
||||
"iconColor": "rgba(0, 211, 255, 1)",
|
||||
"name": "Annotations & Alerts",
|
||||
"type": "dashboard"
|
||||
}
|
||||
]
|
||||
},
|
||||
"editable": true,
|
||||
"fiscalYearStartMonth": 0,
|
||||
"graphTooltip": 0,
|
||||
"id": null,
|
||||
"links": [],
|
||||
"liveNow": false,
|
||||
"panels": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "thresholds" },
|
||||
"mappings": [],
|
||||
"thresholds": {
|
||||
"mode": "absolute",
|
||||
"steps": [
|
||||
{ "color": "green", "value": null },
|
||||
{ "color": "red", "value": 1 }
|
||||
]
|
||||
}
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 4, "x": 0, "y": 0 },
|
||||
"id": 1,
|
||||
"options": {
|
||||
"colorMode": "background",
|
||||
"graphMode": "none",
|
||||
"justifyMode": "auto",
|
||||
"orientation": "auto",
|
||||
"reduceOptions": { "values": false, "calcs": ["lastNotNull"], "fields": "" },
|
||||
"textMode": "auto"
|
||||
},
|
||||
"pluginVersion": "10.0.0",
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "sum(multiscrobbler_source_issues)",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Total Source Issues",
|
||||
"type": "stat"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "thresholds" },
|
||||
"mappings": [],
|
||||
"thresholds": {
|
||||
"mode": "absolute",
|
||||
"steps": [
|
||||
{ "color": "green", "value": null },
|
||||
{ "color": "red", "value": 1 }
|
||||
]
|
||||
}
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 4, "x": 4, "y": 0 },
|
||||
"id": 2,
|
||||
"options": {
|
||||
"colorMode": "background",
|
||||
"graphMode": "none",
|
||||
"justifyMode": "auto",
|
||||
"orientation": "auto",
|
||||
"reduceOptions": { "values": false, "calcs": ["lastNotNull"], "fields": "" },
|
||||
"textMode": "auto"
|
||||
},
|
||||
"pluginVersion": "10.0.0",
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "sum(multiscrobbler_client_issues)",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Total Client Issues",
|
||||
"type": "stat"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "thresholds" },
|
||||
"mappings": [],
|
||||
"thresholds": {
|
||||
"mode": "absolute",
|
||||
"steps": [
|
||||
{ "color": "green", "value": null },
|
||||
{ "color": "yellow", "value": 300000000 },
|
||||
{ "color": "red", "value": 500000000 }
|
||||
]
|
||||
},
|
||||
"unit": "decbytes"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 4, "x": 8, "y": 0 },
|
||||
"id": 25,
|
||||
"options": {
|
||||
"colorMode": "value",
|
||||
"graphMode": "area",
|
||||
"justifyMode": "auto",
|
||||
"orientation": "auto",
|
||||
"reduceOptions": { "values": false, "calcs": ["lastNotNull"], "fields": "" },
|
||||
"textMode": "auto"
|
||||
},
|
||||
"pluginVersion": "10.0.0",
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "process_resident_memory_bytes{job=\"multi-scrobbler\"}",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Memory (RSS)",
|
||||
"type": "stat"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "thresholds" },
|
||||
"mappings": [],
|
||||
"max": 1,
|
||||
"min": 0,
|
||||
"thresholds": {
|
||||
"mode": "absolute",
|
||||
"steps": [
|
||||
{ "color": "green", "value": null },
|
||||
{ "color": "yellow", "value": 0.5 },
|
||||
{ "color": "red", "value": 0.8 }
|
||||
]
|
||||
},
|
||||
"unit": "percentunit"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 4, "x": 12, "y": 0 },
|
||||
"id": 26,
|
||||
"options": {
|
||||
"colorMode": "value",
|
||||
"graphMode": "area",
|
||||
"justifyMode": "auto",
|
||||
"orientation": "auto",
|
||||
"reduceOptions": { "values": false, "calcs": ["lastNotNull"], "fields": "" },
|
||||
"textMode": "auto"
|
||||
},
|
||||
"pluginVersion": "10.0.0",
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "rate(process_cpu_seconds_total{job=\"multi-scrobbler\"}[1m])",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "CPU Usage",
|
||||
"type": "stat"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "thresholds" },
|
||||
"mappings": [],
|
||||
"thresholds": {
|
||||
"mode": "absolute",
|
||||
"steps": [
|
||||
{ "color": "green", "value": null },
|
||||
{ "color": "yellow", "value": 0.05 },
|
||||
{ "color": "red", "value": 0.1 }
|
||||
]
|
||||
},
|
||||
"unit": "s"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 4, "x": 16, "y": 0 },
|
||||
"id": 27,
|
||||
"options": {
|
||||
"colorMode": "value",
|
||||
"graphMode": "area",
|
||||
"justifyMode": "auto",
|
||||
"orientation": "auto",
|
||||
"reduceOptions": { "values": false, "calcs": ["lastNotNull"], "fields": "" },
|
||||
"textMode": "auto"
|
||||
},
|
||||
"pluginVersion": "10.0.0",
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "nodejs_eventloop_lag_seconds{job=\"multi-scrobbler\"}",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Event Loop Lag",
|
||||
"type": "stat"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] },
|
||||
"unit": "short"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 4, "x": 20, "y": 0 },
|
||||
"id": 3,
|
||||
"options": {
|
||||
"legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": false },
|
||||
"tooltip": { "mode": "single", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "sum(rate(multiscrobbler_source_discovered[5m]))",
|
||||
"legendFormat": "Discoveries/sec",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Discovery Rate",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"collapsed": false,
|
||||
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 4 },
|
||||
"id": 5,
|
||||
"panels": [],
|
||||
"title": "Sources",
|
||||
"type": "row"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] }
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 5 },
|
||||
"id": 6,
|
||||
"options": {
|
||||
"legend": { "calcs": ["last"], "displayMode": "table", "placement": "right", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "multiscrobbler_source_discovered",
|
||||
"legendFormat": "{{name}} ({{type}})",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Plays Discovered by Source",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": {
|
||||
"mode": "absolute",
|
||||
"steps": [{ "color": "green", "value": null }, { "color": "red", "value": 1 }]
|
||||
}
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 5 },
|
||||
"id": 7,
|
||||
"options": {
|
||||
"legend": { "calcs": ["last"], "displayMode": "table", "placement": "right", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "multiscrobbler_source_issues",
|
||||
"legendFormat": "{{name}} ({{type}})",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Source Issues",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"collapsed": false,
|
||||
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 13 },
|
||||
"id": 8,
|
||||
"panels": [],
|
||||
"title": "Clients",
|
||||
"type": "row"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] }
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 8, "x": 0, "y": 14 },
|
||||
"id": 9,
|
||||
"options": {
|
||||
"legend": { "calcs": ["last"], "displayMode": "table", "placement": "bottom", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "multiscrobbler_client_scrobbled",
|
||||
"legendFormat": "{{name}}",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Total Scrobbles by Client",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "normal" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] }
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 8, "x": 8, "y": 14 },
|
||||
"id": 10,
|
||||
"options": {
|
||||
"legend": { "calcs": ["last"], "displayMode": "table", "placement": "bottom", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "multiscrobbler_client_queued",
|
||||
"legendFormat": "{{name}}",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Queued Plays by Client",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": {
|
||||
"mode": "absolute",
|
||||
"steps": [{ "color": "green", "value": null }, { "color": "red", "value": 1 }]
|
||||
}
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 8, "x": 16, "y": 14 },
|
||||
"id": 11,
|
||||
"options": {
|
||||
"legend": { "calcs": ["last"], "displayMode": "table", "placement": "bottom", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "multiscrobbler_client_issues",
|
||||
"legendFormat": "{{name}}",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Client Issues",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"collapsed": false,
|
||||
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 22 },
|
||||
"id": 12,
|
||||
"panels": [],
|
||||
"title": "Node.js Performance",
|
||||
"type": "row"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] },
|
||||
"unit": "decbytes"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 8, "x": 0, "y": 23 },
|
||||
"id": 17,
|
||||
"options": {
|
||||
"legend": { "calcs": ["last", "max"], "displayMode": "table", "placement": "bottom", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "process_resident_memory_bytes{job=\"multi-scrobbler\"}",
|
||||
"legendFormat": "Resident Memory (RSS)",
|
||||
"refId": "A"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "nodejs_heap_size_total_bytes{job=\"multi-scrobbler\"}",
|
||||
"legendFormat": "Heap Total",
|
||||
"refId": "B"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "nodejs_heap_size_used_bytes{job=\"multi-scrobbler\"}",
|
||||
"legendFormat": "Heap Used",
|
||||
"refId": "C"
|
||||
}
|
||||
],
|
||||
"title": "Memory Usage",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": {
|
||||
"mode": "absolute",
|
||||
"steps": [
|
||||
{ "color": "green", "value": null },
|
||||
{ "color": "yellow", "value": 0.05 },
|
||||
{ "color": "red", "value": 0.1 }
|
||||
]
|
||||
},
|
||||
"unit": "s"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 8, "x": 8, "y": 23 },
|
||||
"id": 18,
|
||||
"options": {
|
||||
"legend": { "calcs": ["mean", "max"], "displayMode": "table", "placement": "bottom", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "nodejs_eventloop_lag_seconds{job=\"multi-scrobbler\"}",
|
||||
"legendFormat": "Current Lag",
|
||||
"refId": "A"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "nodejs_eventloop_lag_mean_seconds{job=\"multi-scrobbler\"}",
|
||||
"legendFormat": "Mean Lag",
|
||||
"refId": "B"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "nodejs_eventloop_lag_p99_seconds{job=\"multi-scrobbler\"}",
|
||||
"legendFormat": "P99 Lag",
|
||||
"refId": "C"
|
||||
}
|
||||
],
|
||||
"title": "Event Loop Lag",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] },
|
||||
"unit": "percentunit"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 8, "x": 16, "y": 23 },
|
||||
"id": 19,
|
||||
"options": {
|
||||
"legend": { "calcs": ["mean", "max"], "displayMode": "table", "placement": "bottom", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "rate(process_cpu_user_seconds_total{job=\"multi-scrobbler\"}[5m])",
|
||||
"legendFormat": "User CPU",
|
||||
"refId": "A"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "rate(process_cpu_system_seconds_total{job=\"multi-scrobbler\"}[5m])",
|
||||
"legendFormat": "System CPU",
|
||||
"refId": "B"
|
||||
}
|
||||
],
|
||||
"title": "CPU Usage",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "thresholds" },
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] }
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 4, "x": 0, "y": 31 },
|
||||
"id": 20,
|
||||
"options": {
|
||||
"colorMode": "value",
|
||||
"graphMode": "none",
|
||||
"justifyMode": "auto",
|
||||
"orientation": "auto",
|
||||
"reduceOptions": { "values": false, "calcs": ["lastNotNull"], "fields": "" },
|
||||
"textMode": "auto"
|
||||
},
|
||||
"pluginVersion": "10.0.0",
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "nodejs_active_handles_total{job=\"multi-scrobbler\"}",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Active Handles",
|
||||
"type": "stat"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "thresholds" },
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] }
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 4, "x": 4, "y": 31 },
|
||||
"id": 21,
|
||||
"options": {
|
||||
"colorMode": "value",
|
||||
"graphMode": "none",
|
||||
"justifyMode": "auto",
|
||||
"orientation": "auto",
|
||||
"reduceOptions": { "values": false, "calcs": ["lastNotNull"], "fields": "" },
|
||||
"textMode": "auto"
|
||||
},
|
||||
"pluginVersion": "10.0.0",
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "process_open_fds{job=\"multi-scrobbler\"}",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Open File Descriptors",
|
||||
"type": "stat"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] },
|
||||
"unit": "s"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 8, "x": 8, "y": 31 },
|
||||
"id": 22,
|
||||
"options": {
|
||||
"legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "rate(nodejs_gc_duration_seconds_sum{job=\"multi-scrobbler\"}[5m])",
|
||||
"legendFormat": "{{kind}} GC",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Garbage Collection Time",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "normal" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] },
|
||||
"unit": "decbytes"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 4, "w": 8, "x": 16, "y": 31 },
|
||||
"id": 23,
|
||||
"options": {
|
||||
"legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "nodejs_heap_space_size_used_bytes{job=\"multi-scrobbler\"}",
|
||||
"legendFormat": "{{space}}",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Heap Space Breakdown",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"collapsed": false,
|
||||
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 35 },
|
||||
"id": 24,
|
||||
"panels": [],
|
||||
"title": "Cache Performance",
|
||||
"type": "row"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"max": 100,
|
||||
"min": 0,
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] },
|
||||
"unit": "percent"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 36 },
|
||||
"id": 13,
|
||||
"options": {
|
||||
"legend": { "calcs": ["mean", "last"], "displayMode": "table", "placement": "right", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "100 * multiscrobbler_cache_hits / (multiscrobbler_cache_hits + multiscrobbler_cache_misses)",
|
||||
"legendFormat": "{{cacheType}} ({{tier}})",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Cache Hit Rate",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] },
|
||||
"unit": "ops"
|
||||
},
|
||||
"overrides": []
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 36 },
|
||||
"id": 14,
|
||||
"options": {
|
||||
"legend": { "calcs": ["mean", "last"], "displayMode": "table", "placement": "right", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "rate(multiscrobbler_cache_sets[5m])",
|
||||
"legendFormat": "{{cacheType}} ({{tier}})",
|
||||
"refId": "A"
|
||||
}
|
||||
],
|
||||
"title": "Cache Set Rate",
|
||||
"type": "timeseries"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"fieldConfig": {
|
||||
"defaults": {
|
||||
"color": { "mode": "palette-classic" },
|
||||
"custom": {
|
||||
"axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "",
|
||||
"axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line",
|
||||
"fillOpacity": 10, "gradientMode": "none",
|
||||
"hideFrom": { "tooltip": false, "viz": false, "legend": false },
|
||||
"lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5,
|
||||
"scaleDistribution": { "type": "linear" }, "showPoints": "auto",
|
||||
"spanNulls": false, "stacking": { "group": "A", "mode": "none" },
|
||||
"thresholdsStyle": { "mode": "off" }
|
||||
},
|
||||
"mappings": [],
|
||||
"thresholds": { "mode": "absolute", "steps": [{ "color": "green", "value": null }] }
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"matcher": { "id": "byRegexp", "options": ".*hits.*" },
|
||||
"properties": [{ "id": "color", "value": { "fixedColor": "green", "mode": "fixed" } }]
|
||||
},
|
||||
{
|
||||
"matcher": { "id": "byRegexp", "options": ".*misses.*" },
|
||||
"properties": [{ "id": "color", "value": { "fixedColor": "red", "mode": "fixed" } }]
|
||||
}
|
||||
]
|
||||
},
|
||||
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 44 },
|
||||
"id": 16,
|
||||
"options": {
|
||||
"legend": { "calcs": ["last"], "displayMode": "table", "placement": "right", "showLegend": true },
|
||||
"tooltip": { "mode": "multi", "sort": "none" }
|
||||
},
|
||||
"targets": [
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "multiscrobbler_cache_hits",
|
||||
"legendFormat": "{{cacheType}} hits ({{tier}})",
|
||||
"refId": "A"
|
||||
},
|
||||
{
|
||||
"datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" },
|
||||
"expr": "multiscrobbler_cache_misses",
|
||||
"legendFormat": "{{cacheType}} misses ({{tier}})",
|
||||
"refId": "B"
|
||||
}
|
||||
],
|
||||
"title": "Cache Hits vs Misses",
|
||||
"type": "timeseries"
|
||||
}
|
||||
],
|
||||
"refresh": "10s",
|
||||
"schemaVersion": 38,
|
||||
"style": "dark",
|
||||
"tags": ["multiscrobbler", "scrobbling", "music"],
|
||||
"templating": {
|
||||
"list": [
|
||||
{
|
||||
"current": { "selected": false, "text": "Prometheus", "value": "Prometheus" },
|
||||
"hide": 0,
|
||||
"includeAll": false,
|
||||
"label": "Datasource",
|
||||
"multi": false,
|
||||
"name": "DS_PROMETHEUS",
|
||||
"options": [],
|
||||
"query": "prometheus",
|
||||
"refresh": 1,
|
||||
"regex": "",
|
||||
"skipUrlSync": false,
|
||||
"type": "datasource"
|
||||
}
|
||||
]
|
||||
},
|
||||
"time": { "from": "now-6h", "to": "now" },
|
||||
"timepicker": {},
|
||||
"timezone": "",
|
||||
"title": "Multiscrobbler Dashboard",
|
||||
"uid": "multiscrobbler",
|
||||
"version": 1,
|
||||
"weekStart": ""
|
||||
}
|
||||
|
Before Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 1.9 MiB |
|
After Width: | Height: | Size: 1.4 MiB |
|
After Width: | Height: | Size: 501 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 56 KiB |
|
After Width: | Height: | Size: 934 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 240 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 77 KiB |
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 134 KiB |
|
After Width: | Height: | Size: 304 KiB |
|
After Width: | Height: | Size: 133 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 63 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 45 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 550 KiB |
|
After Width: | Height: | Size: 40 KiB |
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["6606"],{40969(e,t,a){a.r(t),a.d(t,{metadata:()=>s,default:()=>q,frontMatter:()=>m,contentTitle:()=>b,toc:()=>g,assets:()=>f});var s=JSON.parse('{"id":"api/dequeue-a-play","title":"Dequeue a Play","description":"Dequeue a Play","source":"@site/docs/api/dequeue-a-play.api.mdx","sourceDirName":"api","slug":"/api/dequeue-a-play","permalink":"/multi-scrobbler/api/dequeue-a-play","draft":false,"unlisted":false,"editUrl":null,"tags":[],"version":"current","frontMatter":{"id":"dequeue-a-play","title":"Dequeue a Play","description":"Dequeue a Play","sidebar_label":"Dequeue a Play","hide_title":true,"hide_table_of_contents":true,"api":"eJy9VE2P3DYM/SsEe0kM78y2RwNFESR7WKBBg2562h0gHIkzViNLjkhNagz83wvas0mzm1uAnvRB6fE9fp1R6SjY3eO7SJPgrsWRCg2sXOz6jIkGxg6DxxZDwg5H0h5bLPyphsIeOy2VWxTX80DYnVGn0X6IlpCOOM/tF5D6Ayg7eyxjTsJi9l+ur23xLK6EUUM21LvqHIuY0yeWN/ypcmUgMKHY4sDaZ48deo6sjO1KqcMtjWHr8jDmxEllew5+3o4Wne252n4BWnQc8sI0aDSqb2vUcHXnSt7vIxd49e4WWzxxkZXC9ebnzTU+Jfa+Z3j6U7icVgAIAj67OnBS9hASNM0fIyczHXIZSJsGKJnFxepZHhInP+aQVKAKH2q0dzCWfCw0kAZHMU4QknIhpyEd4XPQHqZcC3yw2HwAT0oLqPYMJyohV4Gmucu1OJam2TbN6xgsOE3zkKZcoacTg8vpEI61sN88pIf0yvtgGs1fu0A1zW06FhZpGnCkfMxlgq90H3Uub/fZTxbpMoH0NDI8VgpohoE+WiZlzbZppDGAKVvE3l/cXO1J2MOF92b3YvtIkYzYVlbD9rd18zoPw69h/frTfrpyeRhqCm55fLXWy0tT1nWdhtF2twcLHKSsUMVi+V3PkAtomcyuGT6XoAyUgMYxXtDtvgovyt/eWeLbBdhnw35I5iDxKn59t9aFgLAzgM2F12UJw5iLUlI7W4U9jzJ76LlwC1l7LqA9JdA+C1uRXWQ8ZimwtEDFMih1/zc7NSKup3RkqElDBILCkUkYPLtIhcXEDCBK+8gbK5SFGc4tjll0oGS9cxkMz7rzmx75MgyU/1FrxZAMppZotrVt75HGgC1+bVxssVvmzdK7dlrHz9q+uxb7LGofz2fL1l8lzrNdL0WH3f2uRat9o78MQh/E9h67A0XhZxxdTspJscMXf15q9SVg+33ul0tKJvZEsdoJW/zI0zpsbWr+jx4tNPNu/s9YfHPz+837G5znfwHDWyJw","sidebar_class_name":"delete api-method","info_path":"api/multi-scrobbler-api","custom_edit_url":null,"mask_credentials":false},"sidebar":"tutorialSidebar","previous":{"title":"Requeue a Play","permalink":"/multi-scrobbler/api/requeue-a-play"},"next":{"title":"Mark Dead Play as Completed","permalink":"/multi-scrobbler/api/mark-dead-play-as-completed"}}'),l=a(74848),i=a(28453),u=a(57742),r=a.n(u),n=a(78178),p=a.n(n),d=a(19624),o=a.n(d),c=a(96226),h=a.n(c);a(77675),a(74070);var x=a(44608),y=a(17856);let m={id:"dequeue-a-play",title:"Dequeue a Play",description:"Dequeue a Play",sidebar_label:"Dequeue a Play",hide_title:!0,hide_table_of_contents:!0,api:"eJy9VE2P3DYM/SsEe0kM78y2RwNFESR7WKBBg2562h0gHIkzViNLjkhNagz83wvas0mzm1uAnvRB6fE9fp1R6SjY3eO7SJPgrsWRCg2sXOz6jIkGxg6DxxZDwg5H0h5bLPyphsIeOy2VWxTX80DYnVGn0X6IlpCOOM/tF5D6Ayg7eyxjTsJi9l+ur23xLK6EUUM21LvqHIuY0yeWN/ypcmUgMKHY4sDaZ48deo6sjO1KqcMtjWHr8jDmxEllew5+3o4Wne252n4BWnQc8sI0aDSqb2vUcHXnSt7vIxd49e4WWzxxkZXC9ebnzTU+Jfa+Z3j6U7icVgAIAj67OnBS9hASNM0fIyczHXIZSJsGKJnFxepZHhInP+aQVKAKH2q0dzCWfCw0kAZHMU4QknIhpyEd4XPQHqZcC3yw2HwAT0oLqPYMJyohV4Gmucu1OJam2TbN6xgsOE3zkKZcoacTg8vpEI61sN88pIf0yvtgGs1fu0A1zW06FhZpGnCkfMxlgq90H3Uub/fZTxbpMoH0NDI8VgpohoE+WiZlzbZppDGAKVvE3l/cXO1J2MOF92b3YvtIkYzYVlbD9rd18zoPw69h/frTfrpyeRhqCm55fLXWy0tT1nWdhtF2twcLHKSsUMVi+V3PkAtomcyuGT6XoAyUgMYxXtDtvgovyt/eWeLbBdhnw35I5iDxKn59t9aFgLAzgM2F12UJw5iLUlI7W4U9jzJ76LlwC1l7LqA9JdA+C1uRXWQ8ZimwtEDFMih1/zc7NSKup3RkqElDBILCkUkYPLtIhcXEDCBK+8gbK5SFGc4tjll0oGS9cxkMz7rzmx75MgyU/1FrxZAMppZotrVt75HGgC1+bVxssVvmzdK7dlrHz9q+uxb7LGofz2fL1l8lzrNdL0WH3f2uRat9o78MQh/E9h67A0XhZxxdTspJscMXf15q9SVg+33ul0tKJvZEsdoJW/zI0zpsbWr+jx4tNPNu/s9YfHPz+837G5znfwHDWyJw",sidebar_class_name:"delete api-method",info_path:"api/multi-scrobbler-api",custom_edit_url:null,mask_credentials:!1},b,f={},g=[];function z(e){let t={p:"p",...(0,i.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(x.default,{as:"h1",className:"openapi__heading",children:"Dequeue a Play"}),"\n",(0,l.jsx)(r(),{method:"delete",path:"/api/components/{id}/plays/{uid}/queue",context:"endpoint"}),"\n",(0,l.jsx)(t.p,{children:"Dequeue a Play"}),"\n",(0,l.jsx)(x.default,{id:"request",as:"h2",className:"openapi-tabs__heading",children:(0,l.jsx)(y.default,{id:"theme.openapi.request.title",children:"Request"})}),"\n",(0,l.jsx)(p(),{...a(23832)}),"\n",(0,l.jsx)(o(),{...a(70234)}),"\n",(0,l.jsx)(h(),{...a(56208)})]})}function q(e={}){let{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,l.jsx)(t,{...e,children:(0,l.jsx)(z,{...e})}):z(e)}},23832(e){e.exports=JSON.parse('{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"uid","in":"path","required":true,"schema":{"type":"string"}}]}')},70234(e){e.exports={title:"Body"}},56208(e){e.exports=JSON.parse('{"responses":{"200":{"description":"Success"}}}')}}]);
|
||||
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["4512"],{32190(e,t,i){i.r(t),i.d(t,{metadata:()=>r,default:()=>G,frontMatter:()=>b,contentTitle:()=>f,toc:()=>O,assets:()=>y});var r=JSON.parse('{"id":"api/get-specific-source-client-player","title":"Get Specific Source/Client Player","description":"Get Specific Source/Client Player","source":"@site/docs/api/get-specific-source-client-player.api.mdx","sourceDirName":"api","slug":"/api/get-specific-source-client-player","permalink":"/multi-scrobbler/api/get-specific-source-client-player","draft":false,"unlisted":false,"editUrl":null,"tags":[],"version":"current","frontMatter":{"id":"get-specific-source-client-player","title":"Get Specific Source/Client Player","description":"Get Specific Source/Client Player","sidebar_label":"Get Specific Source/Client Player","hide_title":true,"hide_table_of_contents":true,"api":"eJy9VE2P3DYM/SsEe0kM73jbo4EiCIIi2EPQoJOedgcIR+aM1diSIlKbGgP/94K2N7vZ5FD00JM+SD2+R5G8oNJZsL3FfSzZcfNm8BwUDzUmyjSycjbzBQONjC36Dmv0AVtMpD3WmPlz8Zk7bDUXrlFczyNhe0Gdkr0QzT6ccZ7rryBpID3FPN78d7CDOUuKQVjM/sv1tS0di8s+qY+Gui/OsYjFfmZ5ywr7xM6fvINvpMP7gSbOWOPI2scOWzyzYr1SbLGh5BsXxxQDB5Xm4ru5ScsbaS6PyuZF2iku5L0Oxv5dGdRf7V2Ox+PAGV6/v8Ea7znLyup69/PuGp9z/dAzPH8pnO9XAPACXXRl5KDcgQ9QVb8nDmYyJqRVBRTM4obSsdwFDl2KPqhAET6Vwfwg5XjONJJ6R8MwgQ/KmZz6cIYvXnuYYsnw0bLzETpSWkC1Z7in7GMRqKo1kVJVTVWt2ZSqugtTLNDTPYOL4eTPJXO3uwt34XXXedNo8eoFqqpuwjmzSFWBI+VzzBM80n3QufgeYzc1nwvnCaSnxPBQPKARRvrEQCBrAZhGSh5M2SL2dgtzdSThbisA2R1eNA8UyYg1shqaV+vmTRzHX/369KfjdOXiOJbg3eJ8tdbLS1PWtq36ZLubkyUOQlQoYrn8YWSIGTRPZtcIX7JXBgpAKQ0but0X4UX5u719fL0Ad9Gw74IFCLyKX/3WuhAQdgaw23htix9TzEpB7WwV9n2WuYOeM9cQtecM2lMA7aOwFdkm4+GXPEsNlO0HpRz/YqdGxPUUzgwlqB+AIPPAJAwdu4Eyi4kZQZSOA++sUBZmONeYouhIwXpnGxn/pmG/aZuvI0P5b7UG9cGQSx7MtjbzLVLyWONjO2ON7TLito6285Npdaixj6L28nKxH/wzD/Ns10shYnt7qNH6wSQtY7PzYvsO2xMNwt+RdDGoDdwWX/yx1e9LwPrH5LdLCpONDRqKnbDGTzyto9lm7P8Y8Ulm5sP8ZGK+/e0DzvM/LTA5fw==","sidebar_class_name":"get api-method","info_path":"api/multi-scrobbler-api","custom_edit_url":null,"mask_credentials":false},"sidebar":"tutorialSidebar","previous":{"title":"Get Source/Client Players","permalink":"/multi-scrobbler/api/get-source-client-players"},"next":{"title":"Get Source/Client","permalink":"/multi-scrobbler/api/get-source-client"}}'),s=i(74848),c=i(28453),l=i(57742),n=i.n(l),a=i(78178),p=i.n(a),u=i(19624),d=i.n(u),o=i(96226),S=i.n(o);i(77675),i(74070);var P=i(44608),m=i(17856);let b={id:"get-specific-source-client-player",title:"Get Specific Source/Client Player",description:"Get Specific Source/Client Player",sidebar_label:"Get Specific Source/Client Player",hide_title:!0,hide_table_of_contents:!0,api:"eJy9VE2P3DYM/SsEe0kM73jbo4EiCIIi2EPQoJOedgcIR+aM1diSIlKbGgP/94K2N7vZ5FD00JM+SD2+R5G8oNJZsL3FfSzZcfNm8BwUDzUmyjSycjbzBQONjC36Dmv0AVtMpD3WmPlz8Zk7bDUXrlFczyNhe0Gdkr0QzT6ccZ7rryBpID3FPN78d7CDOUuKQVjM/sv1tS0di8s+qY+Gui/OsYjFfmZ5ywr7xM6fvINvpMP7gSbOWOPI2scOWzyzYr1SbLGh5BsXxxQDB5Xm4ru5ScsbaS6PyuZF2iku5L0Oxv5dGdRf7V2Ox+PAGV6/v8Ea7znLyup69/PuGp9z/dAzPH8pnO9XAPACXXRl5KDcgQ9QVb8nDmYyJqRVBRTM4obSsdwFDl2KPqhAET6Vwfwg5XjONJJ6R8MwgQ/KmZz6cIYvXnuYYsnw0bLzETpSWkC1Z7in7GMRqKo1kVJVTVWt2ZSqugtTLNDTPYOL4eTPJXO3uwt34XXXedNo8eoFqqpuwjmzSFWBI+VzzBM80n3QufgeYzc1nwvnCaSnxPBQPKARRvrEQCBrAZhGSh5M2SL2dgtzdSThbisA2R1eNA8UyYg1shqaV+vmTRzHX/369KfjdOXiOJbg3eJ8tdbLS1PWtq36ZLubkyUOQlQoYrn8YWSIGTRPZtcIX7JXBgpAKQ0but0X4UX5u719fL0Ad9Gw74IFCLyKX/3WuhAQdgaw23htix9TzEpB7WwV9n2WuYOeM9cQtecM2lMA7aOwFdkm4+GXPEsNlO0HpRz/YqdGxPUUzgwlqB+AIPPAJAwdu4Eyi4kZQZSOA++sUBZmONeYouhIwXpnGxn/pmG/aZuvI0P5b7UG9cGQSx7MtjbzLVLyWONjO2ON7TLito6285Npdaixj6L28nKxH/wzD/Ns10shYnt7qNH6wSQtY7PzYvsO2xMNwt+RdDGoDdwWX/yx1e9LwPrH5LdLCpONDRqKnbDGTzyto9lm7P8Y8Ulm5sP8ZGK+/e0DzvM/LTA5fw==",sidebar_class_name:"get api-method",info_path:"api/multi-scrobbler-api",custom_edit_url:null,mask_credentials:!1},f,y={},O=[];function z(e){let t={p:"p",...(0,c.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(P.default,{as:"h1",className:"openapi__heading",children:"Get Specific Source/Client Player"}),"\n",(0,s.jsx)(n(),{method:"get",path:"/api/components/{id}/players/{platformId}",context:"endpoint"}),"\n",(0,s.jsx)(t.p,{children:"Get Specific Source/Client Player"}),"\n",(0,s.jsx)(P.default,{id:"request",as:"h2",className:"openapi-tabs__heading",children:(0,s.jsx)(m.default,{id:"theme.openapi.request.title",children:"Request"})}),"\n",(0,s.jsx)(p(),{...i(7638)}),"\n",(0,s.jsx)(d(),{...i(78132)}),"\n",(0,s.jsx)(S(),{...i(79470)})]})}function G(e={}){let{wrapper:t}={...(0,c.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(z,{...e})}):z(e)}},7638(e){e.exports=JSON.parse('{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"platformId","in":"path","required":true,"schema":{"type":"string"}}]}')},78132(e){e.exports={title:"Body"}},79470(e){e.exports=JSON.parse('{"responses":{"200":{"description":"Success"}}}')}}]);
|
||||
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["415"],{60439(e,t,a){a.r(t),a.d(t,{metadata:()=>s,default:()=>y,frontMatter:()=>k,contentTitle:()=>g,toc:()=>T,assets:()=>h});var s=JSON.parse('{"id":"api/validate-token","title":"Validate Token","description":"Always returns valid as long as any endpointlz source is configured.","source":"@site/docs/api/validate-token.api.mdx","sourceDirName":"api","slug":"/api/validate-token","permalink":"/multi-scrobbler/api/validate-token","draft":false,"unlisted":false,"editUrl":null,"tags":[],"version":"current","frontMatter":{"id":"validate-token","title":"Validate Token","description":"Always returns valid as long as any endpointlz source is configured.","sidebar_label":"Validate Token","hide_title":true,"hide_table_of_contents":true,"api":"eJzlVcFu40YM/RViethWkO2kRwFFESy2RYAuukDSXuIApiVammbE0Q45TrWG/31BSUY26f5BTyNpOI98j4+jk1NsxVUP7g8vSrxP6PkL3HKbSMQ9lm7AhD0pJYt6LF1DUic/qI/sKncTnnEUSKQ5scARg28ABULk1lbkEYibIXrW8AUk5lQTeIE68sG3OVGz3vKWf4sJdlkoMfa0A8+gHUEiGSILgVd49iEseaa9uxlqNwOtG1RcvwDEBAcMYY/1E2j85sA7gd13Q3Yfc1C/uqtT3O8DpR34A3BcKM2HZe1KdylKXHVyP19d2fJalLtc16be+Vy6nrSLjatcS+pMTe1c5TbXmwkXlVYan4hd6TwfomGp10Cucm/qgZtPt650R0oyZ7laX6+v3NuG3HcEb08KpeMMYMo3sc49sVJjMhfFnwOxbR1i6lGLApBtpw65IdnypXsCWeiQg8XBkGKbsEf1NYYwgmelhLV6buHZawdjzAl2nwKOO7DWTKDWhSMmH7NAUSySFsWmKN4HT6xSFFseY4YOj/TWITdN442j5SsnqKJYbFoUUKNSG9OL2V54TrH72Iybz5nSCNLhYNb6nH2ixlrf4xMBgsxtM444eDBmE9mHJc1qj0IvVnj8cXMpEa2wzWxu2fw6P7yPff+Ln4/+sB9Xdez7zL6eglezL34yZlVVqR/s6fZgwgFHhSym5Xczm3M1jbavEZ6TVwJkwGEIC7p9z0IT84931vhyAm6iYW/ZEjDN5Oe42RcCQrUBrJe6lsX3Q0yKrPZuDvuvytRAR4lKiNpRAu3QxjTa7PKFxqVLnqQETNZByft/qFYrpO6QW4LM6gMgJAqEQtBQHTCRGJkeRHEfaG1GmSpz59INUbRHttmxyXaV+3uZLbhfZuvVjJxcHVmJ9f95f+k4mEZK/+pmCOjZNMwpmDDz9fTgru2meX1BPZaui6K2ezqZH/9K4Xy2z9NYzT8Hm25rkL19e/n9/uHenc9fAfPITEU=","sidebar_class_name":"get api-method","info_path":"api/multi-scrobbler-api","custom_edit_url":null,"mask_credentials":false},"sidebar":"tutorialSidebar","previous":{"title":"Get Playing Now","permalink":"/multi-scrobbler/api/get-playing-now"},"next":{"title":"Accept a Last.fm Scrobble (Slug)","permalink":"/multi-scrobbler/api/accept-a-last-fm-scrobble-slug"}}'),l=a(74848),i=a(28453),n=a(57742),r=a.n(n),c=a(78178),o=a.n(c),d=a(19624),u=a.n(d),p=a(96226),m=a.n(p);a(77675),a(74070);var f=a(44608),b=a(17856);let k={id:"validate-token",title:"Validate Token",description:"Always returns valid as long as any endpointlz source is configured.",sidebar_label:"Validate Token",hide_title:!0,hide_table_of_contents:!0,api:"eJzlVcFu40YM/RViethWkO2kRwFFESy2RYAuukDSXuIApiVammbE0Q45TrWG/31BSUY26f5BTyNpOI98j4+jk1NsxVUP7g8vSrxP6PkL3HKbSMQ9lm7AhD0pJYt6LF1DUic/qI/sKncTnnEUSKQ5scARg28ABULk1lbkEYibIXrW8AUk5lQTeIE68sG3OVGz3vKWf4sJdlkoMfa0A8+gHUEiGSILgVd49iEseaa9uxlqNwOtG1RcvwDEBAcMYY/1E2j85sA7gd13Q3Yfc1C/uqtT3O8DpR34A3BcKM2HZe1KdylKXHVyP19d2fJalLtc16be+Vy6nrSLjatcS+pMTe1c5TbXmwkXlVYan4hd6TwfomGp10Cucm/qgZtPt650R0oyZ7laX6+v3NuG3HcEb08KpeMMYMo3sc49sVJjMhfFnwOxbR1i6lGLApBtpw65IdnypXsCWeiQg8XBkGKbsEf1NYYwgmelhLV6buHZawdjzAl2nwKOO7DWTKDWhSMmH7NAUSySFsWmKN4HT6xSFFseY4YOj/TWITdN442j5SsnqKJYbFoUUKNSG9OL2V54TrH72Iybz5nSCNLhYNb6nH2ixlrf4xMBgsxtM444eDBmE9mHJc1qj0IvVnj8cXMpEa2wzWxu2fw6P7yPff+Ln4/+sB9Xdez7zL6eglezL34yZlVVqR/s6fZgwgFHhSym5Xczm3M1jbavEZ6TVwJkwGEIC7p9z0IT84931vhyAm6iYW/ZEjDN5Oe42RcCQrUBrJe6lsX3Q0yKrPZuDvuvytRAR4lKiNpRAu3QxjTa7PKFxqVLnqQETNZByft/qFYrpO6QW4LM6gMgJAqEQtBQHTCRGJkeRHEfaG1GmSpz59INUbRHttmxyXaV+3uZLbhfZuvVjJxcHVmJ9f95f+k4mEZK/+pmCOjZNMwpmDDz9fTgru2meX1BPZaui6K2ezqZH/9K4Xy2z9NYzT8Hm25rkL19e/n9/uHenc9fAfPITEU=",sidebar_class_name:"get api-method",info_path:"api/multi-scrobbler-api",custom_edit_url:null,mask_credentials:!1},g,h={},T=[];function x(e){let t={code:"code",p:"p",...(0,i.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(f.default,{as:"h1",className:"openapi__heading",children:"Validate Token"}),"\n",(0,l.jsx)(r(),{method:"get",path:"/1/validate-token",context:"endpoint"}),"\n",(0,l.jsx)(t.p,{children:"Always returns valid as long as any endpointlz source is configured."}),"\n",(0,l.jsxs)(t.p,{children:["For ",(0,l.jsx)(t.code,{children:"username"})," in the response it will return the Source ",(0,l.jsx)(t.code,{children:"config.data.username"})," or fallback to the Source's ",(0,l.jsx)(t.code,{children:"name"})," or fallback to ",(0,l.jsx)(t.code,{children:"Multi-Scrobbler"})," if no valid Sources."]}),"\n",(0,l.jsx)(f.default,{id:"request",as:"h2",className:"openapi-tabs__heading",children:(0,l.jsx)(b.default,{id:"theme.openapi.request.title",children:"Request"})}),"\n",(0,l.jsx)(o(),{...a(65487)}),"\n",(0,l.jsx)(u(),{...a(20133)}),"\n",(0,l.jsx)(m(),{...a(39211)})]})}function y(e={}){let{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,l.jsx)(t,{...e,children:(0,l.jsx)(x,{...e})}):x(e)}},65487(e){e.exports={parameters:[]}},20133(e){e.exports={title:"Body"}},39211(e){e.exports=JSON.parse('{"responses":{"200":{"description":"Success"}}}')}}]);
|
||||
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["9984"],{59015(e,t,s){s.r(t),s.d(t,{metadata:()=>l,default:()=>x,frontMatter:()=>D,contentTitle:()=>N,toc:()=>f,assets:()=>j});var l=JSON.parse('{"id":"api/delete-cache-by-type","title":"Delete Cache By Type","description":"Delete Cache By Type","source":"@site/docs/api/delete-cache-by-type.api.mdx","sourceDirName":"api","slug":"/api/delete-cache-by-type","permalink":"/multi-scrobbler/api/delete-cache-by-type","draft":false,"unlisted":false,"editUrl":null,"tags":[],"version":"current","frontMatter":{"id":"delete-cache-by-type","title":"Delete Cache By Type","description":"Delete Cache By Type","sidebar_label":"Delete Cache By Type","hide_title":true,"hide_table_of_contents":true,"api":"eJx1lFGP1DgMx7+K5XuBqjuzx2OlE4JlH1Y6dOh2edoZCU/qmQbSpMTOQjXqd0duu3As3FPT2LF//9jxGZVOgs09XpHrGPc1DpSpZ+Vs22eM1DM26Mx8Nw6MNfqIDQ6kHdaY+XPxmVtsNBeuUVzHPWFzRjXnBkWzjyecpr05y5CisJj9xeWlfVoWl/2gPlnU2+Ici+A01U8sbziwMsyY8HqElaVn7VKLDbazHesFrMEtDX47U2/P3+Gnmf6YZj6vwQDflqD+4tbldDgEzvDq3Q3W+MBZlsSXmz83l/gU565jeHpSOD8sAcALtMmVnqNyCz5CVf0zcDTTMeWetKqAollcKC3LLnJsh+SjChThYwnmB0NOp0w9qXcUwgg+Kmdy6uMJvnjtYEwlw4d3gcYP0JLSHFQ7hgfKPhWBqrpNJTuWqtpW1VXwHFWqahfHVKCjBwaX4tGfSuZ2s4u7+KptvWm0fPUcqqpu4imzSFWBI+VTyiP8wH3UOfseUjtuPxfOI0hHA8Njf4Am6OkTA4EsNTaNNHgwZbPY+zXNxYGEW1i5N/tn20dEMrCtLIbty2Vxlfr+L78c/eMwXrjU9yV6NztfLP3x3JQ1TaN+sNXN0S4OYlIoYnf528yQMmgeza4JvmSvDBSBhiGs0W2/CM/K395a4es5cJss9i5agsiL+MVv6QsBYWcBNivX+vH9kLJSVPu3Dvv1lrmFjjPXkLTjDNpRBO2SsDXZKuOxSp6lBspWQSmHj+zUQFxH8cRQovoABJkDkzC07AJlFhPTgygdAm+sUWYynGockmhP0d7OOhT+503+9FK+DwLlr7odAvlowUoOZlse6z3S4LFehgzW2PyYNvsauyRqPuezled9DtNk23OXYXO/r9Ga3XjngdV6sXWLzZGC8C84LkXlqNjgs3/X5nwOWP8ec92kONpMoFDsD2v8xONPQ3HaT/+ZRW+u/76+u8Zp+gbllOE5","sidebar_class_name":"delete api-method","info_path":"api/multi-scrobbler-api","custom_edit_url":null,"mask_credentials":false},"sidebar":"tutorialSidebar","previous":{"title":"Mark Dead Play as Completed","permalink":"/multi-scrobbler/api/mark-dead-play-as-completed"},"next":{"title":"Get health","permalink":"/multi-scrobbler/api/get-health"}}'),a=s(74848),i=s(28453),p=s(57742),c=s.n(p),r=s(78178),n=s.n(r),d=s(19624),h=s.n(d),u=s(96226),o=s.n(u);s(77675),s(74070);var m=s(44608),y=s(17856);let D={id:"delete-cache-by-type",title:"Delete Cache By Type",description:"Delete Cache By Type",sidebar_label:"Delete Cache By Type",hide_title:!0,hide_table_of_contents:!0,api:"eJx1lFGP1DgMx7+K5XuBqjuzx2OlE4JlH1Y6dOh2edoZCU/qmQbSpMTOQjXqd0duu3As3FPT2LF//9jxGZVOgs09XpHrGPc1DpSpZ+Vs22eM1DM26Mx8Nw6MNfqIDQ6kHdaY+XPxmVtsNBeuUVzHPWFzRjXnBkWzjyecpr05y5CisJj9xeWlfVoWl/2gPlnU2+Ici+A01U8sbziwMsyY8HqElaVn7VKLDbazHesFrMEtDX47U2/P3+Gnmf6YZj6vwQDflqD+4tbldDgEzvDq3Q3W+MBZlsSXmz83l/gU565jeHpSOD8sAcALtMmVnqNyCz5CVf0zcDTTMeWetKqAollcKC3LLnJsh+SjChThYwnmB0NOp0w9qXcUwgg+Kmdy6uMJvnjtYEwlw4d3gcYP0JLSHFQ7hgfKPhWBqrpNJTuWqtpW1VXwHFWqahfHVKCjBwaX4tGfSuZ2s4u7+KptvWm0fPUcqqpu4imzSFWBI+VTyiP8wH3UOfseUjtuPxfOI0hHA8Njf4Am6OkTA4EsNTaNNHgwZbPY+zXNxYGEW1i5N/tn20dEMrCtLIbty2Vxlfr+L78c/eMwXrjU9yV6NztfLP3x3JQ1TaN+sNXN0S4OYlIoYnf528yQMmgeza4JvmSvDBSBhiGs0W2/CM/K395a4es5cJss9i5agsiL+MVv6QsBYWcBNivX+vH9kLJSVPu3Dvv1lrmFjjPXkLTjDNpRBO2SsDXZKuOxSp6lBspWQSmHj+zUQFxH8cRQovoABJkDkzC07AJlFhPTgygdAm+sUWYynGockmhP0d7OOhT+503+9FK+DwLlr7odAvlowUoOZlse6z3S4LFehgzW2PyYNvsauyRqPuezled9DtNk23OXYXO/r9Ga3XjngdV6sXWLzZGC8C84LkXlqNjgs3/X5nwOWP8ec92kONpMoFDsD2v8xONPQ3HaT/+ZRW+u/76+u8Zp+gbllOE5",sidebar_class_name:"delete api-method",info_path:"api/multi-scrobbler-api",custom_edit_url:null,mask_credentials:!1},N,j={},f=[];function b(e){let t={p:"p",...(0,i.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(m.default,{as:"h1",className:"openapi__heading",children:"Delete Cache By Type"}),"\n",(0,a.jsx)(c(),{method:"delete",path:"/api/cache/{cacheType}",context:"endpoint"}),"\n",(0,a.jsx)(t.p,{children:"Delete Cache By Type"}),"\n",(0,a.jsx)(m.default,{id:"request",as:"h2",className:"openapi-tabs__heading",children:(0,a.jsx)(y.default,{id:"theme.openapi.request.title",children:"Request"})}),"\n",(0,a.jsx)(n(),{...s(65512)}),"\n",(0,a.jsx)(h(),{...s(73066)}),"\n",(0,a.jsx)(o(),{...s(79712)})]})}function x(e={}){let{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(b,{...e})}):b(e)}},65512(e){e.exports=JSON.parse('{"parameters":[{"name":"cacheType","in":"path","required":true,"schema":{"type":"string"}}]}')},73066(e){e.exports={title:"Body"}},79712(e){e.exports=JSON.parse('{"responses":{"200":{"description":"Success"}}}')}}]);
|
||||
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["1234"],{41597(s){s.exports=JSON.parse('{"name":"@easyops-cn/docusaurus-search-local","id":"default"}')}}]);
|
||||
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["8522"],{19299(e,t,i){i.r(t),i.d(t,{metadata:()=>s,default:()=>P,frontMatter:()=>b,contentTitle:()=>j,toc:()=>N,assets:()=>q});var s=JSON.parse('{"id":"api/get-source-client-players","title":"Get Source/Client Players","description":"Get Source/Client Players","source":"@site/docs/api/get-source-client-players.api.mdx","sourceDirName":"api","slug":"/api/get-source-client-players","permalink":"/multi-scrobbler/api/get-source-client-players","draft":false,"unlisted":false,"editUrl":null,"tags":[],"version":"current","frontMatter":{"id":"get-source-client-players","title":"Get Source/Client Players","description":"Get Source/Client Players","sidebar_label":"Get Source/Client Players","hide_title":true,"hide_table_of_contents":true,"api":"eJx9VE2P3DYM/SsEe0kM73jbo4GiCIIi2EPQoJuedgcIR+KM1diSIlKbGgP/94L2TNJsgp70QYp6j3zkGZVOgv0D3qdaHHevx8BRcd9ipkITKxcznzHSxNhj8NhiiNhjJh2wxcKfaijssddSuUVxA0+E/Rl1zvZCtIR4wmXZm7PkFIXF7L/c3triWVwJWUOyqPfVORbBZWmfWd6wwjcg4d1Is8FrcWIdksceT6zYbtB67CiHzqUpp8hRpTsHv3T5y6MQj2nFGXQ0oG/rqOHm3pV0OIxc4NW7O2zxiYtsAG53P+9u8Tms9wPD85fC5WkLAEHAJ1cnjsoeQoSm+SNzNNMxlYm0aYCiWdxYPctj5OhzClEFqvCxjuYHuaRToYk0OBrHGUJULuQ0xBN8DjrAnGqBD5aRD+BJaQ2qA8MTlZCqQNNsyZOm6Zpmy6A0zWOcU4WBnhhcisdwqoX97jE+xlfeB+No/7VrqKa5i6fCIk0DjpRPqczwFe6V5+p7SH7uPlUuM8hAmeGqE9AEE31kIJCt1saRcgBjtpJ9uHxzcyBhfym67PYvuitEMmCdbIbut23zOk3Tr2F7+tNhvnFpmmoMbnW+2STy0pj1fa8h2+7uaImDmBSqWC5/+DOkAlpms2uCzyUoA0WgnMdLdLuvwivzt/dW+HYN7JPFfoz2QeSN/Oa36UJA2FmA3QXXZQlTTkUpqp1NYd9nmT0MXLiFpAMX0IEi6JCETWQXGtcqBZYWqFgFpR7+ZqcGxA0UTww1ahiBoPDIJAye3UiFxchMIEqHkXcmlBUZLi3mJDpRtN65TIX/681v2uXLVFD+R60XQ7SItYxm2/r2ASkHbPFr52KL/Tp4rs27b3FIouZ7Plut/irjstj1KjnsH/YtmvIN/Dq+fBDbe+yPNAp/B8ulqDb4enzx50WpLwHbH8O9XFKcbUDQWO2ELX7keRuRy375z1B68/t7XJZ/AZxU5zM=","sidebar_class_name":"get api-method","info_path":"api/multi-scrobbler-api","custom_edit_url":null,"mask_credentials":false},"sidebar":"tutorialSidebar","previous":{"title":"Get All Sources/Clients","permalink":"/multi-scrobbler/api/get-all-sources-clients"},"next":{"title":"Get Specific Source/Client Player","permalink":"/multi-scrobbler/api/get-specific-source-client-player"}}'),r=i(74848),l=i(28453),a=i(57742),c=i.n(a),n=i(78178),p=i.n(n),u=i(19624),o=i.n(u),d=i(96226),m=i.n(d);i(77675),i(74070);var x=i(44608),h=i(17856);let b={id:"get-source-client-players",title:"Get Source/Client Players",description:"Get Source/Client Players",sidebar_label:"Get Source/Client Players",hide_title:!0,hide_table_of_contents:!0,api:"eJx9VE2P3DYM/SsEe0kM73jbo4GiCIIi2EPQoJuedgcIR+KM1diSIlKbGgP/94L2TNJsgp70QYp6j3zkGZVOgv0D3qdaHHevx8BRcd9ipkITKxcznzHSxNhj8NhiiNhjJh2wxcKfaijssddSuUVxA0+E/Rl1zvZCtIR4wmXZm7PkFIXF7L/c3triWVwJWUOyqPfVORbBZWmfWd6wwjcg4d1Is8FrcWIdksceT6zYbtB67CiHzqUpp8hRpTsHv3T5y6MQj2nFGXQ0oG/rqOHm3pV0OIxc4NW7O2zxiYtsAG53P+9u8Tms9wPD85fC5WkLAEHAJ1cnjsoeQoSm+SNzNNMxlYm0aYCiWdxYPctj5OhzClEFqvCxjuYHuaRToYk0OBrHGUJULuQ0xBN8DjrAnGqBD5aRD+BJaQ2qA8MTlZCqQNNsyZOm6Zpmy6A0zWOcU4WBnhhcisdwqoX97jE+xlfeB+No/7VrqKa5i6fCIk0DjpRPqczwFe6V5+p7SH7uPlUuM8hAmeGqE9AEE31kIJCt1saRcgBjtpJ9uHxzcyBhfym67PYvuitEMmCdbIbut23zOk3Tr2F7+tNhvnFpmmoMbnW+2STy0pj1fa8h2+7uaImDmBSqWC5/+DOkAlpms2uCzyUoA0WgnMdLdLuvwivzt/dW+HYN7JPFfoz2QeSN/Oa36UJA2FmA3QXXZQlTTkUpqp1NYd9nmT0MXLiFpAMX0IEi6JCETWQXGtcqBZYWqFgFpR7+ZqcGxA0UTww1ahiBoPDIJAye3UiFxchMIEqHkXcmlBUZLi3mJDpRtN65TIX/681v2uXLVFD+R60XQ7SItYxm2/r2ASkHbPFr52KL/Tp4rs27b3FIouZ7Plut/irjstj1KjnsH/YtmvIN/Dq+fBDbe+yPNAp/B8ulqDb4enzx50WpLwHbH8O9XFKcbUDQWO2ELX7keRuRy375z1B68/t7XJZ/AZxU5zM=",sidebar_class_name:"get api-method",info_path:"api/multi-scrobbler-api",custom_edit_url:null,mask_credentials:!1},j,q={},N=[];function y(e){let t={p:"p",...(0,l.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(x.default,{as:"h1",className:"openapi__heading",children:"Get Source/Client Players"}),"\n",(0,r.jsx)(c(),{method:"get",path:"/api/components/{id}/players",context:"endpoint"}),"\n",(0,r.jsx)(t.p,{children:"Get Source/Client Players"}),"\n",(0,r.jsx)(x.default,{id:"request",as:"h2",className:"openapi-tabs__heading",children:(0,r.jsx)(h.default,{id:"theme.openapi.request.title",children:"Request"})}),"\n",(0,r.jsx)(p(),{...i(7206)}),"\n",(0,r.jsx)(o(),{...i(66404)}),"\n",(0,r.jsx)(m(),{...i(22558)})]})}function P(e={}){let{wrapper:t}={...(0,l.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(y,{...e})}):y(e)}},7206(e){e.exports=JSON.parse('{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}]}')},66404(e){e.exports={title:"Body"}},22558(e){e.exports=JSON.parse('{"responses":{"200":{"description":"Success"}}}')}}]);
|
||||
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["1932"],{80567(r,s,o){o.r(s),o.d(s,{MarkdownAsync:()=>a.a,MarkdownHooks:()=>a.cj,default:()=>a.oz,defaultUrlTransform:()=>a.Lv});var a=o(8667)}}]);
|
||||
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["5847"],{9272(e,t,r){r.r(t),r.d(t,{default:()=>w});var a=r(96540),s=r(44586),l=r(83333),n=r(5260),c=r(28774),u=r(17856),o=r(53465),i=r(34164),h=r(56347),d=r(92303);let m=function(){let e=(0,d.default)(),t=(0,h.W6)(),r=(0,h.zy)(),{siteConfig:{baseUrl:a}}=(0,s.default)(),l=e?new URLSearchParams(r.search):null,n=l?.get("q")||"",c=l?.get("ctx")||"",u=l?.get("version")||"",o=e=>{let t=new URLSearchParams(r.search);return e?t.set("q",e):t.delete("q"),t};return{searchValue:n,searchContext:c&&Array.isArray(null)&&null.some(e=>"string"==typeof e?e===c:e.path===c)?c:"",searchVersion:u,updateSearchPath:e=>{let r=o(e);t.replace({search:r.toString()})},updateSearchContext:e=>{let a=new URLSearchParams(r.search);a.set("ctx",e),t.replace({search:a.toString()})},generateSearchPageLink:e=>{let t=o(e);return`${a}search?${t.toString()}`}}};var p=r(5148),g=r(69913),x=r(86841),f=r(68677),y=r(27674),j=r(37426),S=r(4471),A=r(43385),C=r(74848);function _(){let{siteConfig:{baseUrl:e},i18n:{currentLocale:t}}=(0,s.default)(),{selectMessage:r}=(0,o.W)(),{searchValue:l,searchContext:c,searchVersion:h,updateSearchPath:d,updateSearchContext:g}=m(),[x,f]=(0,a.useState)(l),[y,S]=(0,a.useState)(),_=`${e}${h}`,w=(0,a.useMemo)(()=>x?(0,u.translate)({id:"theme.SearchPage.existingResultsTitle",message:'Search results for "{query}"',description:"The search page title for non-empty query"},{query:x}):(0,u.translate)({id:"theme.SearchPage.emptyResultsTitle",message:"Search the documentation",description:"The search page title for empty query"}),[x]);(0,a.useEffect)(()=>{d(x),x?(async()=>{S(await (0,p.w)(_,c,x,100))})():S(void 0)},[x,_,c]);let b=(0,a.useCallback)(e=>{f(e.target.value)},[]);(0,a.useEffect)(()=>{l&&l!==x&&f(l)},[l]);let[P,R]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{!async function(){(!Array.isArray(null)||c)&&await (0,p.k)(_,c),R(!0)}()},[c,_]),(0,C.jsxs)(a.Fragment,{children:[(0,C.jsxs)(n.A,{children:[(0,C.jsx)("meta",{property:"robots",content:"noindex, follow"}),(0,C.jsx)("title",{children:w})]}),(0,C.jsxs)("div",{className:"container margin-vert--lg",children:[(0,C.jsx)("h1",{children:w}),(0,C.jsxs)("div",{className:"row",children:[(0,C.jsx)("div",{className:(0,i.A)("col",{searchQueryColumn_q7nx:Array.isArray(null),"col--9":Array.isArray(null),"col--12":!Array.isArray(null)}),children:(0,C.jsx)("input",{type:"search",name:"q",className:"searchQueryInput_CFBF","aria-label":"Search",onChange:b,value:x,autoComplete:"off",autoFocus:!0})}),Array.isArray(null)?(0,C.jsx)("div",{className:(0,i.A)("col","col--3","padding-left--none","searchContextColumn_oWAF"),children:(0,C.jsxs)("select",{name:"search-context",className:"searchContextInput_mXoe",id:"context-selector",value:c,onChange:e=>g(e.target.value),children:[!1,null.map(e=>{let{label:r,path:a}=(0,A.p)(e,t);return(0,C.jsx)("option",{value:a,children:r},a)})]})}):null]}),!P&&x&&(0,C.jsx)("div",{children:(0,C.jsx)(j.A,{})}),y&&(y.length>0?(0,C.jsx)("p",{children:r(y.length,(0,u.translate)({id:"theme.SearchPage.documentsFound.plurals",message:"1 document found|{count} documents found",description:'Pluralized label for "{count} documents found". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)'},{count:y.length}))}):(0,C.jsx)("p",{children:(0,u.translate)({id:"theme.SearchPage.noResultsText",message:"No documents were found",description:"The paragraph for empty search result"})})),(0,C.jsx)("section",{children:y&&y.map(e=>(0,C.jsx)(v,{searchResult:e},e.document.i))})]})]})}function v({searchResult:{document:e,type:t,page:r,tokens:a,metadata:s}}){let l=t===g.i.Title,n=t===g.i.Keywords,u=t===g.i.Description,o=u||n,i=l||o,h=t===g.i.Content,d=(l?e.b:r.b).slice(),m=h||o?e.s:e.t;return i||d.push(r.t),(0,C.jsxs)("article",{className:"searchResultItem_U687",children:[(0,C.jsx)("h2",{children:(0,C.jsx)(c.default,{to:e.u+""+(e.h||""),dangerouslySetInnerHTML:{__html:h||o?(0,x.Z)(m,a):(0,f.C)(m,(0,y.g)(s,"t"),a,100)}})}),d.length>0&&(0,C.jsx)("p",{className:"searchResultItemPath_uIbk",children:(0,S.$)(d)}),(h||u)&&(0,C.jsx)("p",{className:"searchResultItemSummary_oZHr",dangerouslySetInnerHTML:{__html:(0,f.C)(e.t,(0,y.g)(s,"t"),a,100)}})]})}let w=function(){return(0,C.jsx)(l.A,{children:(0,C.jsx)(_,{})})}}}]);
|
||||
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkmulti_scrobbler_docs=self.webpackChunkmulti_scrobbler_docs||[]).push([["7597"],{8906(e,t,r){r.r(t),r.d(t,{metadata:()=>s,default:()=>M,frontMatter:()=>b,contentTitle:()=>k,toc:()=>S,assets:()=>H});var s=JSON.parse('{"id":"api/get-metrics","title":"Get metrics","description":"Get metrics","source":"@site/docs/api/get-metrics.api.mdx","sourceDirName":"api","slug":"/api/get-metrics","permalink":"/multi-scrobbler/api/get-metrics","draft":false,"unlisted":false,"editUrl":null,"tags":[],"version":"current","frontMatter":{"id":"get-metrics","title":"Get metrics","description":"Get metrics","sidebar_label":"Get metrics","hide_title":true,"hide_table_of_contents":true,"api":"eJxtVMFuFDEM/RUrXGA03S0cR0KoQgj1UIHUcupWwpvx7gQySbCdltFq/x15ZqtCyymZPOf5vdieg1Pci+tu3UUpcEWK7q51BRlHUmJD7lrHJCUnIXHdwb07P7elJ/EcioacXOeuq/ck4o7H9hnymRRGUg5eXOtG0iH3rnN7UmeJdHCdW2MJ66egkHbZUmjQSK5zVzVqOLv2nLfbSAwXXy9d6+6JZUlxvnq7OnfPE98MBM9vCvH9QgBBoM++jpSUeggJmuZLoWTQLvOI2jSAyRAfa0+ySZT6kkNSgSq0q9HioHDeM46owWOME4SkxOg1pD08BB1gypXh+9eI03foUXEm1YHgHjnkKtA017myJ2maddN8jIGSStNs0pQrDHhP4HPahX1l6lebtEkXfR/Mo+VrZ6qmuUx7JpGmAY9K+8wTPMl99DnHbnM/rX9V4glkwELA9KsGph40w4g/CRBkqaZ5xBLAnM1mb09pzrYo1MNJ9+ru9fpRIpqwtSzA+sOy+ZjH8X1Yrr7aTmc+j2NNwc/BZ0tLvDFnXddpKLa73NnDQcoKVewt/5sZMoPyZLhmeOCgBJgAS4kndjuvQrPzq2srfDsT99m4N8kSJFrML3FLXwgIeSNYnXSdljCWzIpJ7ds67OUrUw8DMbWQdSAGHTCBDlnImuxk47FKgaQFZKug1O0P8mpC/IBpT1CThggITJFQCHryEZnEzIwgittIK2uUWZk7tq5k0RGTzU7CkV5M3z8DcnA6FYtR+q3rEjEk46gcDVsm89ZhCcvYzhR3rRuyqAGHg5XiG8fj0Y7njlr+FtbYps2+jn+N/OdPN+54/AMvuZKE","sidebar_class_name":"get api-method","info_path":"api/multi-scrobbler-api","custom_edit_url":null,"mask_credentials":false},"sidebar":"tutorialSidebar","previous":{"title":"Get health","permalink":"/multi-scrobbler/api/get-health"},"next":{"title":"Get version","permalink":"/multi-scrobbler/api/get-version"}}'),i=r(74848),n=r(28453),a=r(57742),l=r.n(a),c=r(78178),p=r.n(c),m=r(19624),d=r.n(m),o=r(96226),u=r.n(o);r(77675),r(74070);var g=r(44608),h=r(17856);let b={id:"get-metrics",title:"Get metrics",description:"Get metrics",sidebar_label:"Get metrics",hide_title:!0,hide_table_of_contents:!0,api:"eJxtVMFuFDEM/RUrXGA03S0cR0KoQgj1UIHUcupWwpvx7gQySbCdltFq/x15ZqtCyymZPOf5vdieg1Pci+tu3UUpcEWK7q51BRlHUmJD7lrHJCUnIXHdwb07P7elJ/EcioacXOeuq/ck4o7H9hnymRRGUg5eXOtG0iH3rnN7UmeJdHCdW2MJ66egkHbZUmjQSK5zVzVqOLv2nLfbSAwXXy9d6+6JZUlxvnq7OnfPE98MBM9vCvH9QgBBoM++jpSUeggJmuZLoWTQLvOI2jSAyRAfa0+ySZT6kkNSgSq0q9HioHDeM46owWOME4SkxOg1pD08BB1gypXh+9eI03foUXEm1YHgHjnkKtA017myJ2maddN8jIGSStNs0pQrDHhP4HPahX1l6lebtEkXfR/Mo+VrZ6qmuUx7JpGmAY9K+8wTPMl99DnHbnM/rX9V4glkwELA9KsGph40w4g/CRBkqaZ5xBLAnM1mb09pzrYo1MNJ9+ru9fpRIpqwtSzA+sOy+ZjH8X1Yrr7aTmc+j2NNwc/BZ0tLvDFnXddpKLa73NnDQcoKVewt/5sZMoPyZLhmeOCgBJgAS4kndjuvQrPzq2srfDsT99m4N8kSJFrML3FLXwgIeSNYnXSdljCWzIpJ7ds67OUrUw8DMbWQdSAGHTCBDlnImuxk47FKgaQFZKug1O0P8mpC/IBpT1CThggITJFQCHryEZnEzIwgittIK2uUWZk7tq5k0RGTzU7CkV5M3z8DcnA6FYtR+q3rEjEk46gcDVsm89ZhCcvYzhR3rRuyqAGHg5XiG8fj0Y7njlr+FtbYps2+jn+N/OdPN+54/AMvuZKE",sidebar_class_name:"get api-method",info_path:"api/multi-scrobbler-api",custom_edit_url:null,mask_credentials:!1},k,H={},S=[];function j(e){let t={p:"p",...(0,n.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(g.default,{as:"h1",className:"openapi__heading",children:"Get metrics"}),"\n",(0,i.jsx)(l(),{method:"get",path:"/api/metrics",context:"endpoint"}),"\n",(0,i.jsx)(t.p,{children:"Get metrics"}),"\n",(0,i.jsx)(g.default,{id:"request",as:"h2",className:"openapi-tabs__heading",children:(0,i.jsx)(h.default,{id:"theme.openapi.request.title",children:"Request"})}),"\n",(0,i.jsx)(p(),{...r(23743)}),"\n",(0,i.jsx)(d(),{...r(2165)}),"\n",(0,i.jsx)(u(),{...r(77147)})]})}function M(e={}){let{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(j,{...e})}):j(e)}},23743(e){e.exports={parameters:[]}},2165(e){e.exports={title:"Body"}},77147(e){e.exports=JSON.parse('{"responses":{"200":{"description":"Success"}}}')}}]);
|
||||