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

[Feature Request] Mark as watched only when x% is actually watched #6

Open
trivarialthea opened this issue Mar 2, 2024 · 7 comments
Assignees
Labels
enhancement New feature or request

Comments

@trivarialthea
Copy link

Instead of marking a movie or episode of a TV show as watched instantly (as is done now), only mark it when a certain threshold is reached or when it is marked as "watched" in streamio.

The current implementation is frustrating because, for instance, if you have to leave in the middle of an episode and turn off your PC, it will already be marked as watched on SIMKL. Which can confuse someone in the long term.

Would it be possible?

@aliyss
Copy link
Owner

aliyss commented Mar 3, 2024

Right. So what I am doing right now is abusing the subtitle handler to check if a stream has been started.

Stremio provides no way to check start or end of an episode.

I have been playing around with the idea to access the stremio user library. So if it has been marked as watched by stremio, then it will go and mark it as watched on simkl. But this has it's own issues with the website basically needing a timer to recheck if an episode has been watched.

@aliyss aliyss added enhancement New feature or request good first issue Good for newcomers labels Mar 3, 2024
@trivarialthea
Copy link
Author

Ah, so streamio does not directly support tracking this? How does the built-in trakt connection/addon work, then, is that like an exception that was made directly from streamio?

@aliyss
Copy link
Owner

aliyss commented Mar 5, 2024

You know I had a look at some trakt addon stuff... but as far as I know there is no direct support to what we are trying to achieve. The other stuff is most likely built in, because I saw some trakt stuff within stremio-core

@aliyss
Copy link
Owner

aliyss commented Mar 5, 2024

Ok, so I am working on some validation option. Basically you will have to then authenticate with Stremio. And the addon can then read your library.

I plan on doing it like this:

  • You start watching.
  • It triggers the Subtitle Handler
  • Server recognizes what is being watched and gets the runtime of the movie/episode
  • Server waits that amount of time + say 5-10mins
  • Server uses your Stremio authentication to check if the movie/episode has been marked as watched on Stremio
  • If true -> Mark as watched
  • If false -> Don't do anything

Now there is one issue, I would like to discuss... I'll anyways add an option for this, but want to discuss the default setting.

If the stremio auth fails for some reason or needs to be regenerated: Do you want it to not do anything or would you prefer it to sync on start again?

@aliyss aliyss self-assigned this Mar 5, 2024
@trivarialthea
Copy link
Author

I suppose if we take the BFU mentality of "Set it and forget it" the 2nd option where it would automatically sync again makes more sense.

The problem is, fresh install of streamio starts with nothing watched, therefore on initial install (if you want to achieve 2 way sync) is to sync SIMKL into streamio first. Or we could leave it as one way and only sync from streamio to SIMKL.

If not, there is a possibility that it would wipe the entire SIMKL list.

At least I think so, in theory...

@aliyss
Copy link
Owner

aliyss commented Mar 5, 2024

Ok... So to clarify, my add-on does not sync complete lists... It only syncs newly watched stuff. So there shouldn't be an issue either way when reinstalling stremio or starting new. Nothing is ever deleted, only added.

@trivarialthea
Copy link
Author

Perfect

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants