Offline-cached songs not all scrobbled to lastfm

Transmitting a timestamp, tracknumber, title, artist, album, album artist and play duration + credentials (I might have forgotten something here) sounds pretty basic to me. Otherwise I wonder how every other player I’ve used managed to master the task.

Not for locally stored files. These are not scrobbled at all as they have no source server. Symfonium literally cannot scrobble these plays without a 3rd party app currently. I was very confused when I first found out that it can’t, because every player I’ve used in the past could.

That would actually fit my needs perfectly fine. I’d disable the multi-scrobbler webhook in jellyfin (I only use jellyfin as a source for Symfonium anyways) and simply use the lastfm scrobbling done in Symfonium both for jellyfin and plays of local files.

I’ve also configured my lastfm account as a source in multi-scrobbler so once the scrobbles end up in lastfm, multi-scrobbler detects them and carries them over to my maloja instance.

That’s the neat thing about multi-scrobbler. I did not change a single thing about my current scrobbling setup (musicbee and plex natively scrobble to lastfm and once the scrobbles are there, multi-scrobbler detects them and adds them to maloja for me).

And I only found out about multi-scrobbler after failing to get scrobbling working in Symfonium. So I guess I have to thank you for that as I would not have had the need to look into multi-scrobbler to solve the problem of Symfonium lacking a scrobbling function otherwise.

Using a different source where the scrobbling on the server side works is sadly not an option for me either as both plex and navidrome do not properly use multi value album artist tags and cover art, which render them useless to me. At that point I can just as well use plexamp and be done with it.

Not really. I just want a fallback to get correct scrobble data to one source (lastfm is probably the most popular one), whichever it might be, so I can let multi-scrobbler do the rest.

I’d be perfectly happy with a global toggle just for lastfm and a warning beside it that having lastfm configured both in Symfonium and in the servers (Plex for example) will lead to duplicate scrobbles.

That way people who do need it can activate it (knowing the risks) and for everyone else nothing has changed.

I don’t see how. Jellyfin (pretty much randomly) sends
a) the wrong timezone OR the right timezone
and
b) sometimes duplicate scrobbles (one with correct timezone and one with wrong timezone, 2 with correct timezone or 2 with wrong timezone)

If you globally shift all timezones by -2 (in my case), the scrobbles where it did send the correct timezone are off by 2 hours.
If you check if the scrobble time is in the future and only correct those scrobbles, only scrobbles within the last 2 hours (for me) will be corrected properly, then there’s a timeframe where scrobbles of multiple hours overlap and everything further in the past is simply off by 2 hours or not, depending on if jellyfin did send the correct or wrong timezone.

If you know a way to sort out that mess, let FoxxMD know, he’s put way too much time and effort into trying to resolve the issue.

Again you over simplify and ignore what I write, I’ll end this discussion.

But again no: We are talking about sending that to many different possible servers and configurable depending on where the files are from to avoid duplicates and issues due to servers already handling this. And also keeping the data in memory to be able to send the data to last.fm even when fully offline. So duplicate status of the scrobbling state to ensure it’s properly send to the music server and the scrobbler server when online again. None of your tons of apps you named support half what Symfonium support as source. The only one “similar” would be plexamp and as explained THIS IS SCROBBLED BY THE SERVER not the app.

just want a fallback

This is the definition of a workaround, you want me to workaround Jellyfin issues …

For the Jellyfin workaround this is a workaround, so yes it would not be perfect and in rare occasion the time would be off by 2 hours. Now I don’t know what you do with the scrobble data, but if some scrobble being off by 2 hours make scrobbling unusable then you are maybe not using the proper tool to fit your need.

TL;DR; I won’t write a workaround for a bug that should be fixed by Jellyfin. Jellyfin have many contributors and a support forum, you can report issues and they can fix them. Don’t know why you want me to do that while it’s an hundred time more work on my side …

True, which in this case is a disadvantage of Symfonium.

It does not cover the basic use case of scrobbling only local plays without relying on a 3rd party app.
It also does not cover the use case of using only 1 source which does not support scrobbling.
The jellyfin lastfm plugin does not work as it’s not maintained and the webhook delivers unreliable data to multi-scrobbler.
Therefore, jellyfin currently simply does not have the ability to scrobble reliable data.
Data which your player has access to and could reliably submit to lastfm.

I accept that you don’t see these use cases as valid and don’t want to add scrobbling support for them.

Those third party apps are dedicated to that and does that perfectly… I don’t have anything better to offer.

Pano is open source, last FM is the last FM app … Your refusal to use the apps that are built to fit your need is the issue here.

Either use the right tool for your need or have Jellyfin fixed, because again that is your issue here. It means you need to configure scrobbling in all the clients of Jellyfin to workaround their bug. Ho yes I know you do not have other clients so don’t care, you don’t need per server configuration so don’t care, you don’t need anything else than last.fm so don’t care. But the thing is that you are not alone and I care about all the cases when adding something…

Like I do not force the server you should use to provide the media I have no reason to force the way to scrobble. Use the tool that for your need.

Well I don’t use alexa or siri etc. either. I value my privacy and only install apps and give permissions to apps that I absolutely have to use.
Having to use a 3rd party app with wide ranging permissions to get a basic music player function to work sounds really dumb to me tbh.

That’s fair.

However I still think that not being able to scrobble local plays without a 3rd party app is a clear lack of basic functionality.

I’ll see if I can get the jellyfin people to fix their side.
To me that feels like the actual workaround tho. Scrobbling in the client is far more versatile than scrobbling per server in my experience.

Plexamp for example:
I can’t put a raspberry pi with plexamp on it in the living room as a univeral player for my family because it’s tied to my plex account and will scrobble anything anyone plays to my lastfm account that’s configured within plex.
If scrobbles were handled on the client side I could either disable it or switch it over to a family account.

The lack of any scrobble functionality in Symfonium does force me to use 3rd party tools or apps tho, doesn’t it?

You can’t stop :wink:
You want to scrobble to Last.FM install the last.FM app that does that … If you don’t trust last.fm to have your last.fm data then you have another issue … https://play.google.com/store/apps/details?id=fm.last.android

Pano is open source.

If scrobbles were handled on the client side I could either disable it or switch it over to a family account

Again this is a wrong vision, scrobbling is also tied to play counts, play counts that serves many other purposes too. So client apps needs to update the server in all case to have up to date play counts. Since the server is the source of truth for all the data it’s it’s job to actually scrobble somewhere else to copy that proper data is you decide that you need that. (And all servers perfectly handle multi user accounts and scrobble to the proper accounts and deal with different playcounts per account)

The lack of any scrobble functionality in Symfonium does force me to use 3rd party tools or apps tho, doesn’t it?

Again wrong vision, Symfonium does everything to be compatible with any scrobbler installed on your phone and does it correctly.
If you have 10 app that can play music, why on earth would you configure your last.fm account in each and every app when you can do it once in a app dedicated to scrobble and doing it well for all your listening whatever the app.

I’ll now stop this discussion, you dot not want to see the big pictures and keep repeating the same stuff now.

That has 3 stars for a reason and is reported to be unreliable. I configure scrobbling in each of my players to AVOID using “universal” apps like that or pano.

Easy: Usually once something is correctly configured I don’t have to touch it again for years at a time. I don’t think I’ve changed the lastfm settings in plex or musicbee in the last 6+ years.

Multiple configurations also means if scrobbling breaks in a single app it doesn’t break in the other 9 unless the source of the breakage is a change to lastfm itself.

By doing everything in one scrobbling app, when that breaks, so do your scrobbles in all your apps. It also needs access to all your apps to be able to scrobble, which I dislike.
I like keeping things nice and separate with as limited permissions as possible for each app. Jellyfin for example also only has read access to my library.

You misunderstood. I know that there has to be communication between client and server for scrobbling, play counts etc. to work.
I just meant that I like to configure the scrobbling (to which service and which account) in the player app (client) instead of globally on the server (in plex).

I’m well aware of how scrobbling works, I’ve used it in plenty of programs since 2009. Most of which simply had a “Username” and “Password” field, then needed to be authorized within lastfm and worked happily ever after.

Not really a wrong vision, just a different opinion. I think a music player should have the functionality to scrobble integrated, not merely have compatibility with 3rd party apps. That’s where we fundamentally disagree.

I think we’ve both made our points clear at this point so there’s little reason to continue.