-
-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Major player rewrite + event service implementation #155
Conversation
Just a wild guess. Following this doc, |
Doesn't look like the values are usually even higher than the playlist size. |
# Conflicts: # core/src/main/java/xyz/gianlu/librespot/player/Player.java # core/src/main/java/xyz/gianlu/librespot/player/StateWrapper.java
# Conflicts: # core/src/main/java/xyz/gianlu/librespot/player/StateWrapper.java
This is finally working!! Except when the "ended how" field is different from |
# Conflicts: # core/src/main/java/xyz/gianlu/librespot/connectstate/DeviceStateHandler.java # core/src/main/java/xyz/gianlu/librespot/core/Session.java # core/src/main/java/xyz/gianlu/librespot/player/Player.java # core/src/main/java/xyz/gianlu/librespot/player/PlayerRunner.java
Hello, Is there currently any way to report back to spotify that you listened to a song using the API that this daemon provides? Right now I'm switching song because it should send the tracking stuff to spotify but it doesn't seem to register on spotify's side. Thank you, |
Yes, when this is going to be merged the client will have complete reporting functionalities. |
Any ETA? Is there any way to do this with the current branch? |
@Yuhanun No idea when this will be finished. The protocol right know is under development. |
@devgianlu So right now there is absolutely no way to do the listen reports? |
There is, but why would you need it outside of the player? |
Because I'm building my own CLI tool and I'd like to contribute to the artist their stream count. |
…tput + minor logging changes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like you've got some infinite recursion going
edit: nevermind, nto the same class.
Heyo this doesn't work for me, it doesn't report back "audio streams" (like the listens counters) to spotify, it never gest updated on their end even when listening for 60 seconds+ |
+1 @Yuhanun |
+1 still not fixed? anywhere to figure out and help to retrieve how the original workflow works? |
It kind of works, but it's not perfect. If you want to try and analyze the request chain you need to hookup spotify-analyze and dump the Mercury requests. |
This PR wants to implement the
event-service
framework because of librespot-org/librespot#342, in order to accomodate the required metrics a major player rewrite has also been done.All requests are sent to
hm://event-service/v1/events
via aPOST
request. The request has three headers:X-ClientTimeStamp
,Accept-Language
,X-Offset
. I'm yet to figure out what the last one does. The body of the request is generally as follows: some chars to identify the type of message and the actual data. The0x09
character is used to separate various fields.I have also enhanced the Wireshark scripts to parse event service requests: https://github.com/devgianlu/spotify-analyze
List of client events: https://gist.github.com/devgianlu/8371de4449e90fc18e9bef1a0745bd18
TODO:
trackdone