mirror of
https://github.com/jpochyla/psst.git
synced 2026-04-27 07:25:52 +03:00
[GH-ISSUE #84] Reporting played tracks to Spotify servers #63
Labels
No labels
api
bug
build
documentation
duplicate
enhancement
good first issue
help wanted
idea
invalid
linux
lowprio
macos
pull-request
upstream
windows
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/psst#63
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Sinono3 on GitHub (Aug 6, 2021).
Original GitHub issue: https://github.com/jpochyla/psst/issues/84
Since Spotify tracks user listening and makes charts, song playlists and algorithms according to it, I think this feature is important, lots of people care about this.
The discussion about this on librespot isn't active, but it seems the folks over at librespot-java had success with the reporting. Maybe we could take inspiration from their implementation.
@violoncelloCH commented on GitHub (Aug 24, 2021):
I'm not sure if that is a feature everyone would want to have.
I'm using psst exactly because it doesn't track and report everything I do in it to Spotify.
So I'd at least vote for a settings option to disable tracking and reporting.
@boxdot commented on GitHub (Aug 27, 2021):
Spotify reporting is also useful for forwarding reports to other applications like Last.fm. I agree that this should be opt-in/opt-out.
@confact commented on GitHub (Sep 3, 2021):
I would love to have this because I do really use the generated playlists they make for me, so I would like them to make it more accurate with the songs I play in Psst. As Spotify has, we could have private sessions, like in #154, to solve the worry of tracking it. But maybe have it as a permanent setting instead of being a "session."
@bbbbbr commented on GitHub (Oct 26, 2021):
I too would like to turn on reporting (for last.fm purposes), but strongly agree that such a feature should have a permanent setting (either opt-in or opt-out) for those who do not wish to, or when one wants to temporarily turn it off.
@boxdot commented on GitHub (Oct 28, 2021):
I see that the API used by psst is the official Spotify API. Is it reversed engineered? I would like to implement this feature behind an opt-in flag, but I am not entirely sure how to do it. Do I have to send play/stop/pause events via the API? Any help with the API is appreciated.
@bbbbbr commented on GitHub (Nov 3, 2021):
Looks like librespot-java maybe supports this?
Original Issue
https://github.com/librespot-org/librespot/issues/342#issuecomment-613425917
Implementation:
https://github.com/librespot-org/librespot-java/pull/155
Callstack-ish overview of what's used to do that:
trackPlayed()
github.com/librespot-org/librespot-java@88149a2b55/player/src/main/java/xyz/gianlu/librespot/player/Player.java (L415)endMetrics()
github.com/librespot-org/librespot-java@88149a2b55/player/src/main/java/xyz/gianlu/librespot/player/Player.java (L731)sendEvents()
github.com/librespot-org/librespot-java@802ecf8cca/player/src/main/java/xyz/gianlu/librespot/player/metrics/PlaybackMetrics.javaTrackTransitionEvent()
github.com/librespot-org/librespot-java@802ecf8cca/player/src/main/java/xyz/gianlu/librespot/player/metrics/TrackTransitionEvent.javaWhen using the web client and watching the network traffic, it looks like it may be using a json equivalent for some of the above (state changes and events).
@bbbbbr commented on GitHub (Aug 4, 2022):
In theory this might be an option:
https://github.com/InputUsername/rescrobbled
Haven't been able to test it yet since my system doesn't appear to have the required GLIBC version, and I haven't tried building it from source.
In the config file would include a line like this for psst: