Skip to content

bug: Incorrect Scrobble Modification Documentation #258

@PierreSenpai

Description

@PierreSenpai

Please check existing knowledge before opening an issue

Describe the Bug

I was following the documentation on how to modify the artists field before the scrobble gets send to last.fm. I changed my config.json to this

...
"sources": [
    {
	"type": "vlc",
	"enable": true,
	"name": "MyVlc",
	"data": {
	    "url": "localhost:8080",
	    "password": "123"
	},
	"options": {
	    "playTransform": {
		"preCompare": {
		    "artists": [
			[
			    "/(?<!^K)/[^ ].*/"
			]
		    ]
	        },
	    }
	}
    }
],
...

but starting multi-scrobbler gives multiple schema errors (see log).
To fix this, I asked ChatGPT and changed this part to the following, which works fine.

"sources": [
    {
	"type": "vlc",
	"enable": true,
	"name": "MyVlc",
	"data": {
	    "url": "localhost:8080",
	    "password": "123"
	},
	"options": {
	    "playTransform": {
		"preCompare": [
                    {
		        "artists": [
			    "/(?<!^K)/[^ ].*/"
			]
		    }
	        ]
	    }
	}
    }
],

Platform

Local (NodeJS)

Versions

  • multi-scrobbler 0.9.1
  • nodejs 22.13.1

Logs

[2025-01-26 13:34:01.326 +0100] ERROR  : [App] [Sources] Source config 1 (vlc - MyVlc) in config.json is invalid and will not be used.
Error: Source config 1 (vlc - MyVlc) in config.json is invalid and will not be used.
    at ScrobbleSources.buildSourcesFromConfig (CWD\src\backend\sources\ScrobbleSources.ts:213:33)
    at async <anonymous> (CWD\src\backend\index.ts:121:9)
caused by: Error: Json config was not valid. Please use schema to check validity.

Schema Error:
At: /options/playTransform/preCompare
type: #/type => must be array

Schema Error:
At: /options/playTransform/preCompare/artists/0
type: #/anyOf/0/type => must be string

Schema Error:
At: /options/playTransform/preCompare/artists/0
type: #/type => must be object

Schema Error:
At: /options/playTransform/preCompare/artists/0
anyOf: #/anyOf => must match a schema in anyOf

Schema Error:
At: /options/playTransform/preCompare
anyOf: #/anyOf => must match a schema in anyOf
    at validateJson (CWD\src\backend\utils\ValidationUtils.ts:59:15)
    at ScrobbleSources.buildSourcesFromConfig (CWD\src\backend\sources\ScrobbleSources.ts:211:21)
    at async <anonymous> (CWD\src\backend\index.ts:121:9)

Additional Context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions