diff options
| author | salmonik <raisersoft@proton.me> | 2026-05-16 11:43:32 +0200 |
|---|---|---|
| committer | salmonik <raisersoft@proton.me> | 2026-05-16 11:43:32 +0200 |
| commit | 04add15691578316ff3da5b5a07d05b314488370 (patch) | |
| tree | 458b1066001697faa75466d51c7dfd9008ccac16 /tests/queue.rs | |
| parent | aesthetic changes (diff) | |
| download | rsplayer-04add15691578316ff3da5b5a07d05b314488370.tar.gz rsplayer-04add15691578316ff3da5b5a07d05b314488370.zip | |
Add scrobbling support (Last.fm + ListenBrainz) and rsp settings reload
- Full Last.fm API implementation with MD5 signing (track.updateNowPlaying, track.scrobble)
- Full ListenBrainz API implementation (/1/submit-listens for playing_now and single)
- ScrobbleState in daemon tracking track, start time, and unix timestamp per play
- Scrobble threshold: ≥30s play AND (≥half duration OR ≥4 min)
- Duration extraction from symphonia codec params into AudioMetadata and Track
- Token validation at daemon startup and on config change
- ListenBrainz token valid (user: Salmonium) command to re-read config from disk (avoids token in shell history)
- Desktop notifications for token validation results
- Empty-credential filtering (empty string = no-op)
Diffstat (limited to 'tests/queue.rs')
| -rw-r--r-- | tests/queue.rs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/tests/queue.rs b/tests/queue.rs index a73c312..ccc6e54 100644 --- a/tests/queue.rs +++ b/tests/queue.rs | |||
| @@ -7,6 +7,7 @@ fn track(path: &str, title: Option<&str>, artist: Option<&str>, album: Option<&s | |||
| 7 | title: title.map(|s| s.to_string()), | 7 | title: title.map(|s| s.to_string()), |
| 8 | artist: artist.map(|s| s.to_string()), | 8 | artist: artist.map(|s| s.to_string()), |
| 9 | album: album.map(|s| s.to_string()), | 9 | album: album.map(|s| s.to_string()), |
| 10 | duration_secs: None, | ||
| 10 | } | 11 | } |
| 11 | } | 12 | } |
| 12 | 13 | ||
| @@ -16,6 +17,7 @@ fn track_no_meta(path: &str) -> Track { | |||
| 16 | title: None, | 17 | title: None, |
| 17 | artist: None, | 18 | artist: None, |
| 18 | album: None, | 19 | album: None, |
| 20 | duration_secs: None, | ||
| 19 | } | 21 | } |
| 20 | } | 22 | } |
| 21 | 23 | ||
