AniDB metadata agent

I have two series (ova that is setup as tv) but the hashes are bad. What is the exact naming convention I need to use to get it to find them, Ive tried multiple ways but cant get it to catch.



I'll try to verify this, but I'm not sure what can be done about it though.


What does Plex's media scanner log say? What does the aniDB agent log say?


Naming should be according to what aniDB lists as main title I think. It needs to be an exact match from what the API spec says, so I'm guessing every whitespace, dash or other should be exactly the same. I'll double-check tonight and let you know.

New version - v5 - out on Unsupported Appstore and the first post of this thread!



Changes:

  • Mutex to avoid simultaneous calls
  • Handles incorrectly numbered tv-show episodes
  • Handles empty descriptions


Yup, as I thought - if you name the show/movie according to aniDB's listed main title, the name matching works.

can you give and example with this, cause I cant get this to catch
Nikuyoku Gangu Takuhainin.s01e01 - Volume 1 - HL.mkv
Nikuyoku Gangu Takuhainin.s01e02 - Volume 2 - HL.mkv
Nikuyoku Gangu Takuhainin.s01e03 - Volume 3 - HL.mkv

Also is there anyway to tell the version thats currently installed, I just updated through the unsupported appstore but Im not sure if it actually updated.


I'm not sure what's going on here - but this is a Plex issue, the agent just reads what the scanner has picked up as media name and in this case it comes up empty. I tried naming them "N.. G.. T.. - s01e0x.mkv" but that didn't help at all. Perhaps you could try changing scanner or asking on the Plex Media Server forum?

Before I do that, just a small feature request. Can search be used to find the anime by searching the anidb id?



Do you mean that you would name the files according to the aniDB id then? If you come up with a naming that works with the scanner so that only the numeric file name is sent to the agent, I guess it's possible. Seems like a bit of a work-around though, instead of trying to find what the real problem is.

You are correct it doesnt really solve the problem, I just know that I had an issue with thetvdb agent and was told that if I did a search for the id instead of the name I might have more luck and that worked. I guess that bypasses the file name all together when that is done.

My “C:…\Plex Media Server\Plug-in Support\Preferences” Folder is empty. I can’t find the “com.plexapp.agents.anidb.xml” file to edit my login info.



Did you restart the server after installing the agent? Try using the agent to match a single movie, that should initialize and create the file. You'll get an error from that first run because you haven't set the username and password, but that can be ignored.


But how did you search by id? And where would you set the id to used as input? I can't find anything in the developer documentation that the search method can take any type of id as input, so I'm not sure what to do here.

I’ve tried restarting the PC, restarting just the server, matching files using Anidb (get the error), but still my folder is blank.



Well, as a last restort you can edit the file defaultPrefs.json in the agent installation directory. That should set things up correctly for you (I hope).

I’d been running into some issues getting the fall-back lookup by name to work for one series I’ve got which has bad hashes. After trying a million permutations of the main name etc I ended up debugging into it and found the problem. It’s using media.name to do the lookup, but for TV shows, media.name seems to be empty - media.show is set with the name instead.



Changed init.py, lines 174-183:


    if not fileInfo.dataDict.has_key('aid') and media.name != None:<br />
      fileInfo = adba.Anime(connection, name=media.name,<br />
                         paramsA=["english_name", "kanji_name", "romaji_name",<br />
                                  "year", "aid"])<br />
      try:<br />
        Log("Trying to lookup %s by name on anidb" % media.name)<br />
        fileInfo.load_data()<br />
      except Exception, e :<br />
        Log("Could not load anime data, msg: " + str(e))<br />
        raise e<br />




To


    if not fileInfo.dataDict.has_key('aid') and media.show != None:<br />
      fileInfo = adba.Anime(connection, name=media.show,<br />
                         paramsA=["english_name", "kanji_name", "romaji_name",<br />
                                  "year", "aid"])<br />
      try:<br />
        Log("Trying to lookup %s by name on anidb" % media.show)<br />
        fileInfo.load_data()<br />
      except Exception, e :<br />
        Log("Could not load anime data, msg: " + str(e))<br />
        raise e<br />




And it worked. PMS v0.9.6.3.143 for QNAP, latest version of the AniDB agent. Maybe this was changed recently? I'm just tinkering, using show instead might not actually be correct, the documentation of the API suggests both Media.show and Media.name should be relevant.


Well spotted - thanks! Not sure if this has changed recently, but it seem strange as the API mentions media.name for both movie and tv-shows. Anyhow, I've updated the code to handle both media.name and media.show. This should also fix the problems that ChronoStriker1 has been having!

New version - v6 - out. Fixes search by name for tv-shows. Get it from the first post of this thread or on Unsupported Appstore.

Hi, I cant work out where I can enter my AniDB username and password on the Agent, can someone describe this please?