[GH-ISSUE #913] Songs not showing up in Recently Played #452

Open
opened 2026-02-27 19:30:42 +03:00 by kerem · 20 comments
Owner

Originally created by @agneevX on GitHub (Dec 22, 2021).
Original GitHub issue: https://github.com/librespot-org/librespot/issues/913

Originally assigned to: @roderickvd on GitHub.

When playing songs via Librespot, songs don't show up in Spotify's Recently Played.

This is with the following options:

--disable-discovery --username=xxx --password=xxx

Is this a known issue by any chance?

Originally created by @agneevX on GitHub (Dec 22, 2021). Original GitHub issue: https://github.com/librespot-org/librespot/issues/913 Originally assigned to: @roderickvd on GitHub. When playing songs via Librespot, songs don't show up in Spotify's Recently Played. This is with the following options: ``` --disable-discovery --username=xxx --password=xxx ``` Is this a known issue by any chance?
Author
Owner

@roderickvd commented on GitHub (Dec 22, 2021):

Yes, this is a known issue that I intend to fix as part of the new-api efforts. At this point librespot does not report played tracks back to Spotify.

<!-- gh-comment-id:999369886 --> @roderickvd commented on GitHub (Dec 22, 2021): Yes, this is a known issue that I intend to fix as part of the `new-api` efforts. At this point `librespot` does not report played tracks back to Spotify.
Author
Owner

@agneevX commented on GitHub (Dec 22, 2021):

I created this issue as a last resort, I've been engaging with the supports teams over Twitter DM and emailing Spotify Privacy because of missing data, trying to convince them its their issue to solve 😅.

Are there related issues like this?

<!-- gh-comment-id:999374147 --> @agneevX commented on GitHub (Dec 22, 2021): I created this issue as a last resort, I've been engaging with the supports teams over Twitter DM and emailing Spotify Privacy because of missing data, trying to convince them its their issue to solve 😅. Are there related issues like this?
Author
Owner

@michaelherger commented on GitHub (Dec 22, 2021):

See https://github.com/librespot-org/librespot/discussions/626

<!-- gh-comment-id:999377846 --> @michaelherger commented on GitHub (Dec 22, 2021): See https://github.com/librespot-org/librespot/discussions/626
Author
Owner

@roderickvd commented on GitHub (Dec 22, 2021):

😆 well you can tell them to move on to other things.

librespot-java found it out here: https://github.com/librespot-org/librespot/discussions/626

<!-- gh-comment-id:999378993 --> @roderickvd commented on GitHub (Dec 22, 2021): 😆 well you can tell them to move on to other things. `librespot-java` found it out here: https://github.com/librespot-org/librespot/discussions/626
Author
Owner

@agneevX commented on GitHub (Dec 27, 2021):

So I compiled a recent release of spotifyd and it seems to push tracks to Spotify's Recently Played. Isn't spotifyd a fork of librespot?

<!-- gh-comment-id:1001622707 --> @agneevX commented on GitHub (Dec 27, 2021): So I compiled a recent release of spotifyd and it seems to push tracks to Spotify's Recently Played. Isn't spotifyd a fork of librespot?
Author
Owner

@roderickvd commented on GitHub (Dec 27, 2021):

Are you sure? There is no mention of "event-service" in Spotifyd's repository, which is the endpoint that's known to report played tracks back to Spotify.

Spotifyd isn't a fork, but a downstream application that pulls in librespot as a library and builds a *nix daemon and MPRIS interface on top.

<!-- gh-comment-id:1001648596 --> @roderickvd commented on GitHub (Dec 27, 2021): Are you sure? There is no mention of "event-service" in Spotifyd's repository, which is the endpoint that's known to report played tracks back to Spotify. Spotifyd isn't a fork, but a downstream application that pulls in `librespot` as a library and builds a *nix daemon and MPRIS interface on top.
Author
Owner

@agneevX commented on GitHub (Dec 27, 2021):

Yep, I spoke too soon. Turns out it added a song to Recently Played that I played for a couple of secs before selecting the Spotify Connect device.

<!-- gh-comment-id:1001668111 --> @agneevX commented on GitHub (Dec 27, 2021): Yep, I spoke too soon. Turns out it added a song to Recently Played that I played for a couple of secs before selecting the Spotify Connect device.
Author
Owner

@devgianlu commented on GitHub (Dec 27, 2021):

By the way, I think they moved events to the HTTP API so that should be easier to reverse.

<!-- gh-comment-id:1001670021 --> @devgianlu commented on GitHub (Dec 27, 2021): By the way, I think they moved events to the HTTP API so that should be easier to reverse.
Author
Owner

@agneevX commented on GitHub (Dec 27, 2021):

@devgianlu does this work with librespot-java?

<!-- gh-comment-id:1001672928 --> @agneevX commented on GitHub (Dec 27, 2021): @devgianlu does this work with `librespot-java`?
Author
Owner

@devgianlu commented on GitHub (Dec 27, 2021):

It works as long as you don't skip the song, if it ends normally it's fine.

<!-- gh-comment-id:1001673520 --> @devgianlu commented on GitHub (Dec 27, 2021): It works as long as you don't skip the song, if it ends normally it's fine.
Author
Owner

@roderickvd commented on GitHub (Dec 27, 2021):

By the way, I think they moved events to the HTTP API so that should be easier to reverse.

If someone can do the man-in-the-middle and sniffing work I'd be more than happy to implement it. I'm in coding mode right now 😄 and I was planning on implementing the Mercury endpoint soon, but if anyone can figure out the HTTP one soon I'm all game to do that endpoint instead.

It works as long as you don't skip the song, if it ends normally it's fine.

Is that due to the inner workings of your player thread or some part of the message we still need to figure out?

<!-- gh-comment-id:1001692141 --> @roderickvd commented on GitHub (Dec 27, 2021): > By the way, I think they moved events to the HTTP API so that should be easier to reverse. If someone can do the man-in-the-middle and sniffing work I'd be more than happy to implement it. I'm in coding mode right now 😄 and I was planning on implementing the Mercury endpoint soon, but if anyone can figure out the HTTP one soon I'm all game to do that endpoint instead. > It works as long as you don't skip the song, if it ends normally it's fine. Is that due to the inner workings of your player thread or some part of the message we still need to figure out?
Author
Owner

@devgianlu commented on GitHub (Dec 27, 2021):

Is that due to the inner workings of your player thread or some part of the message we still need to figure out?

I've never figured out why, but that's something with the message being sent, there are different keywords for why the track started and why it ended. Ending with anything other than trackdone doesn't work. I remember I explained this somewhere.

Anyway I had a quick look at the new API some time ago and it didn't have those, might be wrong.

<!-- gh-comment-id:1001714097 --> @devgianlu commented on GitHub (Dec 27, 2021): > Is that due to the inner workings of your player thread or some part of the message we still need to figure out? I've never figured out why, but that's something with the message being sent, there are different keywords for why the track started and why it ended. Ending with anything other than `trackdone` doesn't work. I remember I explained this somewhere. Anyway I had a quick look at the new API some time ago and it didn't have those, might be wrong.
Author
Owner

@roderickvd commented on GitHub (Dec 27, 2021):

I've never figured out why, but that's something with the message being sent, there are different keywords for why the track started and why it ended. Ending with anything other than trackdone doesn't work. I remember I explained this somewhere.

I'll read through the conversation over at librespot-java some more.

Anyway I had a quick look at the new API some time ago and it didn't have those, might be wrong.

I've got some time on my hands these weeks, so if you've got too, let me know if you would want to tackle this together.

<!-- gh-comment-id:1001760446 --> @roderickvd commented on GitHub (Dec 27, 2021): > I've never figured out why, but that's something with the message being sent, there are different keywords for why the track started and why it ended. Ending with anything other than `trackdone` doesn't work. I remember I explained this somewhere. I'll read through the conversation over at `librespot-java` some more. > Anyway I had a quick look at the new API some time ago and it didn't have those, might be wrong. I've got some time on my hands these weeks, so if you've got too, let me know if you would want to tackle this together.
Author
Owner

@devgianlu commented on GitHub (Dec 28, 2021):

I've got some time on my hands these weeks, so if you've got too, let me know if you would want to tackle this together.

Don't really have the time to investigate myself, but I can comment/help. Do you prefer a faster messaging platform?

<!-- gh-comment-id:1002226794 --> @devgianlu commented on GitHub (Dec 28, 2021): > I've got some time on my hands these weeks, so if you've got too, let me know if you would want to tackle this together. Don't really have the time to investigate myself, but I can comment/help. Do you prefer a faster messaging platform?
Author
Owner

@roderickvd commented on GitHub (Dec 30, 2021):

Let me get the "old" one you already reverse engineered in first. But once I get to this I suggest we can continue on Gitter?

<!-- gh-comment-id:1003142882 --> @roderickvd commented on GitHub (Dec 30, 2021): Let me get the "old" one you already reverse engineered in first. But once I get to this I suggest we can continue on Gitter?
Author
Owner

@devgianlu commented on GitHub (Dec 30, 2021):

But once I get to this I suggest we can continue on Gitter?

Sure

<!-- gh-comment-id:1003146030 --> @devgianlu commented on GitHub (Dec 30, 2021): > But once I get to this I suggest we can continue on Gitter? Sure
Author
Owner

@noelhibbard commented on GitHub (Apr 7, 2022):

I've got the opposite concern. I would like a private listening session option so that listening to kids music via librespot doesn't effect my profile. I obviously still want artists to get their credit but surely the API has a private session boolean that when enabled will still give artists their credit but doesn't run the tracks through the listening algorithms.

<!-- gh-comment-id:1092112727 --> @noelhibbard commented on GitHub (Apr 7, 2022): I've got the opposite concern. I would like a private listening session option so that listening to kids music via librespot doesn't effect my profile. I obviously still want artists to get their credit but surely the API has a private session boolean that when enabled will still give artists their credit but doesn't run the tracks through the listening algorithms.
Author
Owner

@roderickvd commented on GitHub (Apr 7, 2022):

I've got the opposite concern. I would like a private listening session option so that listening to kids music via librespot doesn't effect my profile. I obviously still want artists to get their credit but surely the API has a private session boolean that when enabled will still give artists their credit but doesn't run the tracks through the listening algorithms.

Yes, it's on the list for new-api. I haven't had much time lately, but very much intend to pick up development again.

<!-- gh-comment-id:1092116881 --> @roderickvd commented on GitHub (Apr 7, 2022): > I've got the opposite concern. I would like a private listening session option so that listening to kids music via librespot doesn't effect my profile. I obviously still want artists to get their credit but surely the API has a private session boolean that when enabled will still give artists their credit but doesn't run the tracks through the listening algorithms. Yes, it's on the list for `new-api`. I haven't had much time lately, but very much intend to pick up development again.
Author
Owner

@itpropro commented on GitHub (Sep 1, 2025):

Any news on the recent functionality? Last update is from 2022.

<!-- gh-comment-id:3243032633 --> @itpropro commented on GitHub (Sep 1, 2025): Any news on the recent functionality? Last update is from 2022.
Author
Owner

@xbl4z3r commented on GitHub (Dec 19, 2025):

i would also like to know if there is any update on this.. librespot-java doesnt seem to do this and neither does go-librespot which was supposed to be the new replacement for the java version

<!-- gh-comment-id:3675003474 --> @xbl4z3r commented on GitHub (Dec 19, 2025): i would also like to know if there is any update on this.. librespot-java doesnt seem to do this and neither does go-librespot which was supposed to be the new replacement for the java version
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/librespot#452
No description provided.