-
Notifications
You must be signed in to change notification settings - Fork 109
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
Watched status is always taking precedence over Unwatched #1080
Comments
The origin status of a video is unwatched.
So when you watch a Plex movie, you want the script to mark it as unwatched ? That makes no sense. |
I really appreciate all you guys do to maintain this script, but I'm being as polite and thorough as possible, do I really deserve this kind of answer? What's the "mark as unwatched" option even for then, if human beings are never supposed to unwatch something? There are not-so-rare cases in which the user might want to unwatch something:
If there's a technical limitation behind this, then you are free to be open about it. Technology is meant to help where humans fail, so I wouldn't use human behavior as an explanation for this.
Please read my issue again because it's absolutely not what I said. Thanks anyway |
There is no "unwatched at 7:35 01/10/2022" in Plex or Trakt history. Can you explain your expected workflow in detail ? |
I was asking the detailed workflow from the script point of view. Plex
The For Trakt
Like I said, there is no history of unwatched event in Trakt. How can we know a Trakt movie has been unwatched ? |
Yeah, I didn't know there was no unwatched history in Trakt until you mentioned it. I've always used Jellyfin and Kodi and unless I'm mistaken, their Trakt plugins worked well in this regard. I've never checked if a manually triggered unwatched status updated from one end to the other, but at least they didn't overwrite my local unwatched status when the sync ran. This is mostly what made me assume it'd be possible. Another thing that made me assume it'd be possible was the fact that So, somehow, it does seem possible to know when something is being marked as Unwatched, at least on Plex's end? |
An other solution would be to overwrite watched status with a one-way But none of these can answer the first post request. Also, you can edit the title to reflect what is asked in first post (scenario 2). |
fair point, I've changed it, although the issue is not specific to Scenario 2, but to both. It's more like that "Watched status is always taking precedence over Unwatched" - let me know if you'd like me to change it :) And yeah, I thought about your solution too before posting, but it would make it kinda hard to use Trakt as a main hub for different clients other than this Plex instance :( |
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
Yes I have been dealing with this as well, I do not have much more to offer except I'd like to see this be possible. I am trying to mark things as unwatched in plex which works. Once PTS runs its marks it back to watched. It would be nice if somehow when PTS runs its see's that a more recent timestamp of "unwatched" for X and compares it's against trakt sees the older timestamp of "watched" and updates accordingly. |
I'm having a similar issue — marking episodes as unwatched in both Plex and Trakt isn't working, as the script will eventually mark those episodes as watched again. It doesn't seem to happen right away — sometimes it's a week or so later — I'm wondering if this is due to the size of our library? Anyway, is there a way to "officially" indicate something isn't watched, so this won't happen? Maybe it's pulling from somewhere other than the current Plex/Trakt status, like a cache? |
My use case is, what I'd think to be the most obvious need for this ability. So the only way to re-watch any TV show that you've watched before is to set it to unwatched. But PTS messes that up. I would think that most people want to re-watch a show they've watched before, and thus need to reset it's watched status. Resetting the watched status of a TV series has got to be a completely normal use case. PTS destroys this and the only workaround is to stop using it, or like the op said, go into trakt and set the status manually there, which negates using PTS. I understand that there's no flag in plex to handle this easily but one way would be to provide a runtime option that forces the local plex server's watched status to override the trakt one. |
You need to use the Trakt VIP feature Reset show progress. Plex episodes marked as unwatched after a reset : PlexTraktSync/plextraktsync/plex/PlexApi.py Lines 283 to 293 in 0256a85
|
I found a very simple work around that doesn't delete any watched or require you go get VIP. Simply add the show you want to rewatch to your plex watchlist, problem solved, from there just go to watchlist section of plex and it will be tracking your current watches of the show without messing with trakt |
I have several items that have mistakenly been marked as watched in Plex. This has been synced to Trakt. Now, I try to mark unwatched in Plex, but the watched status in Trakt gets synced back to Plex. I would love a one-way sync option, where if it is unwatched in Plex and watched in Trakt, it would be updated in Trakt (or vice-versa). I imagine adding this as an option this would solve this issue. For now I suppose I have to mark as unwatched in both Plex and Trakt. |
the one-way sync is there. just turn off the "other" leg:
|
I'm sure a lot of people are happy with one way sync, but there's also a lot of people and use cases where a real sync would be much better. rough flow: fields: Only on the first run one might find issues that need correcting. first run:
Just a quick thought, but might need an overhaul of the existing code? :-) |
So, having this done without local database is not possible. Here's closed PR attempting to add local database read support (but different purpose): maybe a good start. sqlite is already independence due requests cache, so the local cache could be sqlite based, but still need some way to ensure database migrations, i.e how to ensure schema in database. |
So, having this done without local database is not possible. Here's closed PR attempting to add local database read support (but different purpose): maybe a good start. sqlite is already in dependency due requests cache, so the local cache could be sqlite based, but still need some way to ensure database migrations, i.e how to ensure schema in database. |
i think so, without receiving dates from both, you need a way to save/create your own and keep track of them. |
As already discussed above, there is no way to determine is something got marked as "unwatched" on a Plex server because it wipes out all previous watch data. i.e. Marking something "unwatched" looks identical to "never watched", thus the sync from Trakt -> Plex happens. However, you can infer the "mark unwatched" state using Plex's cloud watched status sync. The user_state = account.userState(item)
if user_state.viewCount == 0:
if user_state.lastViewedAt is None:
# item has never been watched
else:
# item was previously watched and marked as unwatched
elif user_state.viewCount > 0:
# item is watched Going the other way (marking unwatched on Trakt), I have no idea without keeping a local database. |
Confirmation
The problem
Hello! I'm really sorry for opening two issues in a day 🙏
I'm not sure if this is the intended behavior, but I can't find a way to remove the watched status in Trakt when marking something as Unwatched in Plex.
Once you look at the steps to reproduce, you'll see how I essentially have no way of marking something as Unwatched, unless I do it on both Trakt and Plex before running the script.
The episode in question is
tmdb:3010853:Episode:190:Family-Guy-s20e01
Config
Log
plextraktsync.log
Thanks!
Error trace / logs
Expected behavior
Stuff on Trakt should be marked as Unwatched when it's marked as such in Plex, and/or vice-versa.
Steps to reproduce the behavior
Scenario 1 - Plex > Trakt
plextraktsync.sh
Scenario 2 - Trakt > Plex
plextraktsync.sh
Inspect of problematic items
No response
Workarounds
No response
Install method
git clone
Version
0.21.5
Python Version
3.7.3
Operating System and Version
Debian 10
The text was updated successfully, but these errors were encountered: