[READ-ONLY] Mirror of https://github.com/FoxxMD/multi-scrobbler. Scrobble plays from multiple sources to multiple clients docs.multi-scrobbler.app
deezer docker jellyfin koito lastfm listenbrainz maloja mopidy mpris music music-assistant plex scrobble self-hosted spotify subsonic tautulli youtube-music
0

Configure Feed

Select the types of activity you want to include in your feed.

refactor(config)!: Move scrobble thresholds to options

FoxxMD (May 10, 2024, 12:01 PM EDT) c79f0458 7170b095

+11 -9
+5 -5
config/config.json.example
··· 5 5 "maxPollRetries": 1, 6 6 "maxRequestRetries": 1, 7 7 "retryMultiplier": 1.5, 8 - "scrobbleThresholds": { 9 - "duration": 30, 10 - "percent": 50 11 - }, 12 8 "options": { 13 9 "logPayload": false, 14 10 "logFilterFailure": "warn", 15 - "logPlayerState": false 11 + "logPlayerState": false, 12 + "scrobbleThresholds": { 13 + "duration": 30, 14 + "percent": 50 15 + } 16 16 } 17 17 }, 18 18 "clientDefaults": {
+2 -2
src/backend/sources/MemorySource.ts
··· 113 113 processRecentPlays = (datas: (PlayObject | PlayerStateData)[]) => { 114 114 115 115 const { 116 - data: { 116 + options: { 117 117 scrobbleThresholds = {} 118 - } = {} 118 + } 119 119 } = this.config; 120 120 121 121 const newStatefulPlays: PlayObject[] = [];
+4 -2
src/backend/common/infrastructure/config/source/index.ts
··· 83 83 * @examples [true, false] 84 84 * */ 85 85 scrobbleBacklog?: boolean 86 - } 87 86 88 - export interface CommonSourceData extends CommonData, SourceRetryOptions { 89 87 /** 90 88 * Set thresholds for when multi-scrobbler should consider a tracked play to be "scrobbable". If both duration and percent are defined then if either condition is met the track is scrobbled. 91 89 * */ 92 90 scrobbleThresholds?: ScrobbleThresholds 91 + } 92 + 93 + export interface CommonSourceData extends CommonData, SourceRetryOptions { 94 + 93 95 } 94 96 95 97 export interface CommonSourceConfig extends CommonConfig {