ShokoServer icon indicating copy to clipboard operation
ShokoServer copied to clipboard

trakt rework/update overview

Open CuddleBear92 opened this issue 8 years ago • 11 comments

This is a writeup and overview of what is needed/wanted of trakt going forward. Here is the link to the trakt api: http://docs.trakt.apiary.io/

once alot of the syncing and metadata functions are up and running it can mean it could take the place of tvdb as the main metadata agent outside of anidb.

Metadata

  • [ ] Get links from other metadata sites like tvdb, tmdb, tvrage, imdb, fanart.tv. (this would mean we could use trakt as the main source of linking and metadata outside of mal, hummingbird and anidb.)

  • [ ] Translations. Automatically pull translations metadata for the language of the client.

  • [ ] Related / Similar shows/movies. (could be a nice thing next to anidb relations aswell)

  • [ ] ID Lookup (search trakt by ID's of tvdb, tmdb, imdb and tvrage. this will again be synced with all the links trakt has aswell)

  • [ ] Get a single Episode of a show (this allows us to get the direct id of trakt, tvdb, imdb, tmdb and tvrage directly to the episode. this allows us to link all those sites at the same time with just trakt. on a per episode basis.)

Syncing

Small syncs should be done often. on client startup (maybe check since last opened so it doesnt sync if you started the client 5 times within the hour) Sync on start up (of client not server) + once a day is what they talk about on the trakt api site.

  • [ ] Get last activity. (this is faster than syncing the whole collection every day)

  • [ ] Get Playback progress. (this allows us to grab scrobble timings from trakt. allowing anyone to start any show/movie and continue where they want, this is % based of runtime)

  • [ ] Get watched history. (this allows syncing of recent watchstates)

  • [ ] add items to watched history. (for those shows marked as watched on another service or on Shoko. this allows us to mark the right time and date it was watched)

  • [ ] Get watchlist (option to add the show/movie to either bookmarks or add as empty group. or both really)

  • [ ] Get collection (same as the "missing mylist files" tab in utilities can be used.

  • [ ] Ask to remove trakt series/movie when new link is made (to remove it from trakt collection cause it was wrong)

  • [ ] Add to watchlist from bookmarks/anidb watchlist or a new watchlist system (that uses all metadata sites)

Fixes

  • [ ] Add support for movie linking https://github.com/japanesemediamanager/ShokoServer/issues/49

  • [ ] Syncing issue in 3.7.0.903 https://github.com/japanesemediamanager/ShokoServer/issues/512

  • [ ] upload trakt link to cache if tvdb cache link is used. https://github.com/japanesemediamanager/ShokoClient/issues/278

Updates

  • [ ] Update/finish trakt side of the Community Data tab in Utilities.

  • [ ] add refresh_token support: https://github.com/japanesemediamanager/ShokoClient/issues/298 (this allows us to refresh the token used with trakt so the users dont have to link their client up all the time)

Issues trakt could fix

  • [ ] Easier cross linking with more services (tvdb, tmdb and others trakt use)

  • [ ] better linking for movies and shows: https://github.com/japanesemediamanager/ShokoServer/issues/233

CuddleBear92 avatar Dec 04 '16 17:12 CuddleBear92

I must say, impressive issue :-)

bigretromike avatar Dec 22 '16 19:12 bigretromike

Great overview 👍 , will start fixing the bugs and #512 should be fixed now. Movie linking (#49) I'm not sure how reliable Trakt is with anime movies but gonna try.

RickDB avatar Jan 02 '17 01:01 RickDB

I think the focus should be fixing the Trakt related bugs for now and hold off on everything else until a later date as we're currently working on multiple things. I'd also like to see Trakt user statistics to determine the priority level of adding these Trakt features to Shoko.

I'm also not sold on making Trakt the main source of metadata when there's no point in changing our metadata sources. We already pull from AniDB and TvDB and it covers 99% of our needs, what else info could we possibly need besides adding feature creep. We don't support those other sites you mentioned and I don't think we need to either.

A lot of this requires the user to be a Trakt member. It's a known fact that you lose users when making a user register to use a product, we need them to be an AniDB member so that's unavoidable but we don't need them to be a Trakt user.

Nonetheless thre are some good ideas in this issue but we've got hundreds of issues with good ideas that we need to sort through and determine priority.

ElementalCrisis avatar Jan 02 '17 02:01 ElementalCrisis

Agree, especially since Trakt is basically an extension of other sources we already support and no longer offers images it has become less useful for metadata at least. What I do like is the comments / ratings system they have there but we also have that with AniDB so it doubles a bit.

Once we can confirm sync and scrobble fully working we can look at this at a later time for sure as we got a lot on our plate already :)

RickDB avatar Jan 02 '17 02:01 RickDB

...I was looking at Trakt with Kero.... Didn't realize this exists. Well, this may be bumped up in priority, as the xrefs for TMDB will be very useful

da3dsoul avatar Oct 02 '22 15:10 da3dsoul

A lot of this is already done. It just needs a place to be stored in the DB, and another api call for episodes needs to be added. It just needs some cleanup, better API, and a place in the webui for the long term

da3dsoul avatar Oct 02 '22 15:10 da3dsoul

@da3dsoul update on this? Also @krbrs I know you use Trakt, can you verify these issues please.

ElementalCrisis avatar Dec 31 '23 09:12 ElementalCrisis

I'm kind of meh on it, but I don't use trakt

da3dsoul avatar Dec 31 '23 16:12 da3dsoul

@ElementalCrisis going to add things I noticed (e.g. Trakt link PIN refreshing too fast to auth it) when the new year is a few days old

krbrs avatar Dec 31 '23 16:12 krbrs

New Tasks aside from the above, which are still all "TBD". This is still incomplete

Current issues I could reproduce:

  • [x] Trakt Device PIN refreshes too fast to auth it using WebUI. Re-checking if auth was successful needs to be throttled more than 1 second (best about 1-2 min.) to prevent issuing a new PIN before you had a chance to enter it.
  • [x] When removing Trakt in Settings, the Device Token, date, etc. is not removed automatically. Currently this needs to be done by hand in settings json if you want to redo the auth
  • [ ] Scrobbling throws "conflict" errors, this needs to be handled better. Files that are completely played should not send another play to Trakt if the last play for the file is less than x min. ago
  • [ ] Sync does not import from Trakt. This seems to be "intended behavior" from what I read here. It was assumed Shoko would be the leading database. There should be a setting if you want to overwrite or import/sync watched states to Shoko

krbrs avatar Jan 08 '24 16:01 krbrs

New Tasks aside from the above, which are still all "TBD". This is still incomplete

Current issues I could reproduce:

  • [ ] Trakt Device PIN refreshes too fast to auth it using WebUI. Re-checking if auth was successful needs to be throttled more than 1 second (best about 1-2 min.) to prevent issuing a new PIN before you had a chance to enter it.
  • [ ] When removing Trakt in Settings, the Device Token, date, etc. is not removed automatically. Currently this needs to be done by hand in settings json if you want to redo the auth
  • [ ] Scrobbling throws "conflict" errors, this needs to be handled better. Files that are completely played should not send another play to Trakt if the last play for the file is less than x min. ago
  • [ ] Sync does not import from Trakt. This seems to be "intended behavior" from what I read here. It was assumed Shoko would be the leading database. There should be a setting if you want to overwrite or import/sync watched states to Shoko

First two are fixed in https://github.com/ShokoAnime/Shoko-WebUI/pull/771

harshithmohan avatar Jan 08 '24 17:01 harshithmohan