Skip to content
This repository was archived by the owner on Aug 15, 2018. It is now read-only.
This repository was archived by the owner on Aug 15, 2018. It is now read-only.

Anime Tracking. #74

Open
Open

Description

@FM1337

To start off

Before you say "OH MY GOD ANIME SUCKS, SANS WHY DID YOU SUGGEST THIS!?!" Hear me out, I'd really be interested in dan having a way to track when defined users have finished anime, and you could also have it set up like twitter accounts where you can assign user's anime accounts to their channel rather than your main channel.

So how will this be done?

So you're probably wondering, first off "how the hell can I even accomplish this?!" Well I'm glad you asked mysterious developer (who is probably uclcommander) this answer is rather simple: through APIs of course! The web runs on APIs (and some other questionable stuff, but that's for another issue............ ( ͡° ͜ʖ ͡°) ) There's two sites that I'm thinking of, first is myanimelist the "popular" of the two suggested sites, however this one has the shittiest API of the both, the second is hummingbird this one has the easier and more functional API to be used.

You can find hummingbird's api on github here, as for myanimelist's api I had to find an unofficial API which can be found here

So that wraps up how you'll get the information but how will you use it? How will you make it so that it knows when to push a notification?

Well there's 2 ways I see of doing this:

Option 1

Build a temporary database that gets checked and replaced every 5 minutes and compare it to the API's output, if there is a difference between the output in the database and the output from the API, "example, the database says I have watched 5 episodes of CLANNAD, but the API says I have watched 10" then you would have it say on IRC for example "Sans has just finished episode 10 of CLANNAD" or "Sans has just watched 5 more episodes of CLANNAD with 10 episodes watched in total!" or something along the lines of that, it could also do messages for "Sans is playing to watch Kill La Kill" or "Sans has just finished Shirobako" or "Sans has put One Piece on hold" or "Sans has dropped Sword Art Online!" So pretty much messages for when you've added an anime, started watching an anime, finished an episode of anime, finished an anime, put an anime on hold, or dropped an anime.

Option 2

Borrow whatever method you use for twitter and use it here, and with the same ideas for the messages as listed above.

Other features:

$anime:add [username]
Will assign an anime account to the nick that triggers this command
$anime delete
Will remove an anime account assigned to the nick that triggered the command.
$anime [username]
Will return the total amount of anime on the user's anime list or the given username's anime list.
$anime:watching [username]
Will return a list of anime the user is currently watching
$anime:onhold [username]
Will return a list of anime that the user has on hold.
$anime:planned [username]
Will return a list of anime that the user is planning to watch
$anime:dropped [username]
Will return a list of anime that the user has dropped
$anime:finished [username]
Will return a list of anime that the user has finished.

So why should this be added?

I think the idea of tracking one's anime by IRC can be rather helpful, plus it can also help recommend anime to other people.
I'm suggesting this as a plugin because I know not everyone likes anime, and that's okay, you might like the show My Little Pony Friendship is magic, while others don't it's your opinion and your preference and that's perfectly fine!

Important Note

For hummingbird you will require an API key which can get for free by just signing up for a hummingbird account and going to here to create a new program to get an API key!

Side note

I'm pushing for hummingbird to be used over myanimelist more because their API is a hell of a lot nicer, and because it's what I use on my website!

Anyway good luck (and I'm willing to help provide an API key for testing if you need one!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions