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

AniDB Support #38

Open
seniorm0ment opened this issue Oct 12, 2022 · 3 comments
Open

AniDB Support #38

seniorm0ment opened this issue Oct 12, 2022 · 3 comments

Comments

@seniorm0ment
Copy link

seniorm0ment commented Oct 12, 2022

please add the ability to login to anidb and track to mylist directly from the plugin. Its annoying to have to manually update mylist on anidb.
And provide options to do the following

features

  • Scrobble newly added anime (anime imported into jf, is added into anidbs mylist. Ignore if already present on mylist)
  • default import status (when added in above, set status to defaultm for example set to unwatched by default, then when the user watches 1 episode it can change to watched)
  • track watched and completed episodes
  • check status of already watched anime on jf (series says you completed it on jellyfin, but is set as not completed on anidb? have it mark it as complete)
  • an option to don't unwatch stuff" on mylist if its marked as unwatched after previously being watched in jellyfin
  • scan for subgroups on files and mark it in mylist
  • see user ratings
  • add start/end watching dates to mylist

failsafes

  • ignore entires that dont have an anidb page number (if you have an anime in your library, and it couldnt find the anidb id for metadata, completely ignore it so it doesnt mess up mylist)

  • a history feature with ability to revert recent changes (failsafe in case it adds an anime with wrong metadata, accidentally marks the wrong anime/bunch of episodes as watched, etc.)

https://wiki.anidb.net/API
https://anidb.net/software

Relevant: jellyfin/jellyfin-plugin-anidb#46

@vosmiic
Copy link
Owner

vosmiic commented Oct 15, 2022

Hi, apologies for the late reply. I didn't see the notification when you opened this issue.
Without looking to far into the Anidb API, it looks like we should be able to implement it as a provider in AniSync.
Here are my opinions on your ideas:

Scrobble newly added anime (anime imported into jf, is added into anidbs mylist. Ignore if already present on mylist)

This is a good idea, and should be doable.

track watched and completed episodes
check status of already watched anime on

I believe the plugin already does this, as you can ask the plugin to update either Jellyfin with a provider watch list or the other way round.

an option to don't unwatch stuff" on mylist if its marked as unwatched after previously being watched in jellyfin

I also think this is already supported in the plugin if I am understanding you correctly, but the feature is new so its a bit hit or miss.

scan for subgroups on files and mark it in mylist
see user ratings

I'm not entirely sure about these parts, what do you mean by subgroup? Is this a feature in Anidb?
Adding user ratings (I presume you meant to the interface?) is out of the scope of this plugin, the plugin is related to tracking progress of anime shows and movies with third party provider.

add start/end watching dates to mylist

The plugin already does this (if the provider API supports it).

ignore entires that dont have an anidb page number

The plugin kind of does this. We suggest users add anime to their plan to watch list and enable the "only update anime that is on my plan to watch list" to stop incorrect updates occurring.

a history feature with ability to revert recent changes

This would be quite a large update and I don't think is worth it. I believe we have enough features existing in the plugin to stop incorrect updates.

Please do let me know your thoughts of my above opinions.

@seniorm0ment
Copy link
Author

Sorry, release group instead of subgroup would be a proper term:
https://wiki.anidb.net/Content:Groups
But yes, anidb supports this.

We suggest users add anime to their plan to watch list and enable the "only update anime that is on my plan to watch list" to stop incorrect updates occurring.

This is good. My biggest fear in the end is just accidentally screwing up mylist and needing to manually fix hundreds of entries lol.
So as long as there is a safeguard in place thats fine.

@winterbird-code
Copy link

While I would love to see anidb support in this plugin it should be noted that the anidb UDP API (which is the only public API that can modify mylists) is not for the faint of heart. Not only is it quite complicated to implement, it's also really difficult to test. There are no test-api, and it's very easy to get IP-banned from the API for an unspecified amount of time (for example by requesting the same information more than once in a short time).

Shoko is probably the most easy-to-use anidb udp client, but if you're into python and command line utilities you can also check out my python anidb-api-library adbb, which includes a simple utility for syncing jellyfin watched state with anidb. It's written to scratch my own itch, and I'm not sure if the behavior will change at some point, but you can use it for inspiration if you want to write your own utility using adbb (the API should be stable).

Here's one hoping anidb with modernize it's API soon...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: todo
Development

No branches or pull requests

3 participants