Skip to content
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

Syncing kasts results in all episodes being marked as played #76

Closed
Uatschitchun opened this issue May 29, 2022 · 6 comments
Closed

Syncing kasts results in all episodes being marked as played #76

Uatschitchun opened this issue May 29, 2022 · 6 comments

Comments

@Uatschitchun
Copy link

I'm syncing AntennaPod nicely.
I tried kasts and entered my credentials. After initial sync, all episoded are marked as played, so play stated do not get synced correctly!?

https://bugs.kde.org/show_bug.cgi?id=454553

@JonOfUs
Copy link
Collaborator

JonOfUs commented May 29, 2022

I don't know how Kasts handles marking episodes as played. I just tested it and it seems like Kasts marks all episodes as played that were published before the podcast got subscribed. If I subscribe to a random podcast, all episodes are instantly marked/displayed as played.
Does this happen on your device as well?

If so, the error probably is a feature of Kasts and so we cannot do something about it over here. To resolve this issue, maybe an option to disable this feature in Kasts would be good.

kasts
Just subscribed to this show using kasts, all episodes are marked as played. Then started listening to one episode.

antennapod
Synced with Antennapod, there no episode is marked as played. Listening timestamp is correctly synced.

@mogwa1
Copy link

mogwa1 commented May 29, 2022

(Kasts developer here)

The submitter also opened a similar bug report for kasts: https://bugs.kde.org/show_bug.cgi?id=454553

Kasts does indeed mark all episodes on new feeds as played when importing them. However, the inital "mark as played" statuses will never be synced; they're only for internal bookkeeping to not overwhelm the user with hundreds of new episodes in the queue. Actually, Antennapod does the same thing: it marks all episodes (except the latest) of a new feed as played. It also doesn't sync this state to other devices.

Anyway, to come back to the issue: I suspect that it's based on a misunderstanding of what syncing in Antennapod and Kasts does. Both apps will only sync episodes states that have changed after the sync has been set up. None of the pre-existing play positions will be synced. In fact, that would be a disaster waiting to happen because there would be no way to correctly resolve conflicts without having the state-change timestamps.

@Uatschitchun
Copy link
Author

Uatschitchun commented May 30, 2022

@mogwa1 Yes, I opened the issue here and also on bugs.kde.org as I did not know which one is the correct to address.

Thx for you explanation which I'm able to follow. I first only used AntennaPod and just started to also use Kasts as I stumbled upon the possibility to sync over my NC.
I wondered as podcasts I've subscribed to in AntennaPod and listened already some episodes, the play-states do not reflect back in Kasts.
So my thinking was, the subscribed podcasts will get synced to Kasts with correct play-states of already listened episodes having a 1:1 state within Kasts after initial sync.
That's quite sad, as when syncing Kasts I'm unable to differentiate what episodes I've already listened to in AntennaPod ;(
So if I read and understand you correctly, this isn't possible?
Only thing possible is to get a 1:1 state of what I've listened to after initial sync, correct?

So only way to resolve this is to start fresh and anew:

  • Subscribe to podcasts (in AntennaPod or Kasts),
  • do initial sync
  • mark episodes already listened to either in AntennaPod or Kasts
  • sync again
  • go on from this state?

What if, after I've done the initial sync, mark an already played episode in AntennaPod (or kasts) as unplayed, sync, mark it as played again and do another sync? Will I get the 1:1 state with this?

@Uatschitchun
Copy link
Author

Uatschitchun commented May 30, 2022

@mogwa1 At https://bugs.kde.org/show_bug.cgi?id=454553 you state:

PS: If I recall correctly, you can force AntennaPod to upload all existing episode states to the server, but I'm not entirely sure.

Is that true for AntennaPod? Is there something AntennaPod could do to improve the initial sync?

@JonOfUs
Copy link
Collaborator

JonOfUs commented May 30, 2022

Kasts does indeed mark all episodes on new feeds as played when importing them

Thanks for clarifying :)

Actually, Antennapod does the same thing: it marks all episodes (except the latest) of a new feed as played.

I never witnessed this in Antennapod, is this maybe Opt-In? In the screenshot above old episodes were not marked as played in AntennaPod after adding the feed.

Since this repository has nothing to do with the issues/misunderstandings, we should probably close this issue and discuss this elsewhere - since this sounds like a question regarding Kasts' synchronization behaviour, probably in the mentioned issue on bugs.kde.org?

@mogwa1
Copy link

mogwa1 commented May 30, 2022

Actually, Antennapod does the same thing: it marks all episodes (except the latest) of a new feed as played.

I never witnessed this in Antennapod, is this maybe Opt-In? In the screenshot above old episodes were not marked as played in AntennaPod after adding the feed.

Mmm, looks like you're right. I must have misremembered this. Sorry for that.

Since this repository has nothing to do with the issues/misunderstandings, we should probably close this issue and discuss this elsewhere - since this sounds like a question regarding Kasts' synchronization behaviour, probably in the mentioned issue on bugs.kde.org?

I agree. Let's close it here.
Just for reference for anyone who might still look at this issue in the future: this gpodder-sync API does not have "played" attribute. It will just sync the current play position. This means that apps have to guess the "played" state anyway for episodes that have never been touched. In its current state, it will never be able to reliably sync the "played" state between apps. I've tried my best to implement something that makes sense for the "played" state in Kasts for episodes that have been touched since the sync was set up.

@JonOfUs JonOfUs closed this as completed Jun 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants