Giter Club home page Giter Club logo

shokoserver's Introduction

What is Shoko Server

Shoko makes managing your anime collection effortless. It ensures that your collection is well-organized, accessible, and easy to navigate. Regardless of whether you have a small or large anime collection, Shoko can handle it. Thanks to its scalability, it can grow alongside your collection with ease.

With Shoko, you'll have access to your entire collection both locally and over the internet, with no additional work required outside the initial configuration of Shoko Server and one of the supported media player plugins. Say goodbye to manually inputting information or renaming your files to a specific format just to obtain basic series data - with Shoko, this is a thing of the past.

Shoko takes the hassle out of managing your anime collection. With its user-friendly interface, you can sit back and let it do the work for you. No more manual inputting or renaming - just effortless organization and access to your favorite anime.

Learn More About Shoko

Supported Media Players

Shoko currently supports the following media players.

Don't see your media player above? If you're a developer who wants to integrate Shoko with a new media player, join our Discord, and we'll be more than happy to provide guidance and assistance.

At this time, the Shoko team itself has no plans to integrate Shoko with any other media players.

Building Shoko

shokoserver's People

Contributors

1ijack avatar baine avatar bartimaeusnek avatar bigretromike avatar bond4u avatar cazzar avatar craige1 avatar currowth avatar da3dsoul avatar dependabot[bot] avatar dorobo-hamster avatar elementalcrisis avatar fearnlj01 avatar gibwar avatar harshithmohan avatar hidden4003 avatar jimmyson avatar jmediamanager avatar krbrs avatar lorddeimos avatar maxpiva avatar mik1ll avatar miracle152004 avatar mmuffins avatar natyusha avatar pmcleish avatar revam avatar vadabel avatar xmodx10 avatar zhardas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shokoserver's Issues

Make JMM Server discoverable

Reported by werndlymob, Aug 30, 2012

http://msdn.microsoft.com/en-us/library/dd456791.aspx

This will allow JMM desktop and MyAnime3 to find a list of available JMM Servers on the network without having to manually enter the address.

JMM Desktop should also store the list of import folder mappings per JMM Server instance, so that one JMM Desktop can connect to multiple servers.

Have a button on the config screen to search for servers, and a new button to switch servers in bottom toolbar

Option to Autostart JMM Server

Reported by rickyvh001, Nov 12, 2012

The ability to have JMM Server autostart when Windows loads up would be a nice addition.

Jan 14, 2013 inferknox

In this regard, perhaps a button could be added next to the "Minimise on Startup" button, on the "Settings" tab of JMM Server, that would use the same method as is used by MSI Afterburner, of creating in "scheduled task" to run JMM Server with "highest privileges".
I created such a scheduled task and set JMM Server to "Minimise on Startup", and it's been auto-starting flawlessly at login.

For reference, I've attached an .xml export of the scheduled task I created to run JMMServer at login (if you wish to import it, make sure to edit the file with notepad & change the "YourPC" & "YourUserName" by the UserID field, to those specific to your system).

Trakt Movies

Reported by CatmanIX, Mar 10, 2013

Trakt also manages movies but they can't be linked in JMM, it would be quite nice to be able to do so.

Apr 15, 2013 OldECW86

This would be a very nice feature. I still add my anime movies to anime3 but I also add them to moving pictures and usually use that for movies for the time being :)

Function to Recheck all images

Reported by werndlymob, Oct 11, 2012

Recheck all images. Removes images no longer being used as well as checks the current maximum limit and removes any extra from series that have more than the maximum limit.

MySQL Case Sensitivity on systems that aren't windows

Reported by imperialxt, Oct 9, 2013

If you have MYSQL running on a system that isn't a windows server. E.g a system that is actually case sensitive you're creating the table names with the right case etc, but then you're requesting them in all upper case and of course MYSQL is responding with table etc not found.

Investigate removing requirement for UAC admin rights on JMM Server

Reported by werndlymob, Jul 29, 2012

Investigate removing requirement for UAC admin rights on JMM Server
http://forum.team-mediaportal.com/threads/my-anime-3.107475/page-19#post-886628

Jan 14, 2013 Craige1Emmott

It looks to me its the update program that needs the admin rights. Tho if you can remove the admin requirements from the whole program and just invoke the update process with admin rights, that should be an easy fix(cross fingers). The fix for the server uac should also work on the jmm desktop client, solving yet another issue with jmm needing admin rights when running on a shared PC(not good program ethics).

Allow manually added images

Reported by [email protected], Oct 14, 2012

I know that we can just add them to websites such TheTVDB or AniDB but it would more convenient if we could also be allowed to link actual local images (similar to how we can manually link self-edited videos, we could just have another folder for custom images), instead of just being limited to downloaded and then locally stored images.

Options to rename groups when a new series is added

Reported by inferknox, Nov 22, 2012

I would like to recommend that for the grouping function, JMM checks the collection, then for series/movies takes the name of the original series from AniDB and sets that as the group title, then sets the original (if present, or sequel closest to original) series as the default series within the group.
For example, if a collection has Naruto: Shippuuden and various movies and OVAs from that and the original series, JMM will group them under the original series name, Naruto, and make Naruto: Shippuuden the default series in the group. If the original Naruto series is later added to the series, it is automatically made the original Naruto series the default series for that group, unless another series/movie/ova was set as default manually by the user.
Alternatively, the priority for the default series in the group could be the latest released TV series sequel in that group, for example, if there's Naruto TV series 1, Naruto TV series 2 and Naruto TV series 3 in the group, then the priority would fall to the latest, Naruto TV series 3.

The overall priority perhaps being TV Series, OVA/Alternative Series, Movies.

Use web cache to store information about related anime

Reported by werndlymob, Nov 22, 2012

Use web cache to store information about related anime

This information can then be used when grouping anime together on import

Nov 23, 2012 inferknox

I think all avenues should be looked at that would avoiding needing accessing another web location besides AniDB to get anime data (mainly from an efficiency standpoint), especially if it may raise costs like server costs for JMM.
If all else fails though and a web-cache would make a large enough impact in improving the JMM experience, I support the idea.

Apr 6, 2013 maximo.piva

Just a suggestion

I could do a simple scrapper, that get all series relations in anidb, and generate a group metadata from it in xml format, Run every 15 days or so, and Leo can host that metadata in the same place, where JMM update the files, and make the clients download it every time is updated.

Share Images setting during install

Reported by aznkvaj, Jun 4, 2012

Please include an option when JMM desktop and server are installed at the same time to share one image folder.

Add custom tags to series

Create functionality to allow a user to add a custom tag to a series.
These tags will then be available for use in Group Filters

For example, a user my create a tag called "Dropped", which they then exclude from the "Continue Watching" filter.

Tags should be per user.

Add ability to show messages from developer in JMM desktop and Server

Reported by werndlymob, Nov 11, 2012

Add ability to show messages from developer in JMM desktop and Server

This is so that if I need to switch hosts, I can inform the user more easily.
This should come from multiple hosts, so that if one of those hosts is not available the user will still see the message

e.g. If I switch where the auto updates are hosted

Jan 14, 2013 imperialxt

Maybe build it into part of distributed cache server stuff?

SQL Server errors

Reported by Craige1Emmott, Feb 10, 2013

Using Refresh button on the mssql setup page shows a blank error.

JMM Server can not make a connection to MSSQL server. Something to do with SOM references in the vs project, causing errors with missing dll's. Error might only occur on systems that don't have mssql server installed (jmm and sql server on different machines).

[2013-02-10 18:36:45:878] Error|EventRoute.InvokeHandlersImpl => RoutedEventHandlerInfo.InvokeHandler => MainWindow.btnRefreshMSSQLServerList_Click Microsoft.SqlServer.Management.Smo.FailedOperationException ---> Microsoft.SqlServer.Management.Sdk.Sfc.EnumeratorException: Failed to retrieve data for this request. ---> System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.SqlServer.SqlClrProvider, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The system cannot find the file specified.
File name: 'Microsoft.SqlServer.SqlClrProvider, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91'
   at Microsoft.SqlServer.Management.Sdk.Sfc.ObjectLoadInfoManager.LoadHierarchy()
   at Microsoft.SqlServer.Management.Sdk.Sfc.ObjectLoadInfoManager.GetFirstObjectLoadInfo(Urn urn)
   at Microsoft.SqlServer.Management.Sdk.Sfc.Environment.GetServerVersion(Urn urn, Object ci)
   at Microsoft.SqlServer.Management.Sdk.Sfc.Environment.GetObjectInfo(Object ci, RequestObjectInfo req)
   at Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.GetObjectInfo(Object connectionInfo, RequestObjectInfo requestObjectInfo)
   at Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.FixPropertyList(Object connectionInfo, Urn urn, String[] fields, RequestFieldsTypes requestFieldsType)
   at Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.GetData(Object connectionInfo, Request request)
   at Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.Process(Object connectionInfo, Request request)

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

   --- End of inner exception stack trace ---
   at Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.Process(Object connectionInfo, Request request)
   at Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.GetData(Object connectionInfo, Urn urn)
   at Microsoft.SqlServer.Management.Smo.SmoApplication.EnumAvailableSqlServers()
   --- End of inner exception stack trace ---
   at Microsoft.SqlServer.Management.Smo.SmoApplication.EnumAvailableSqlServers()
   at JMMServer.MainWindow.btnRefreshMSSQLServerList_Click(Object sender, RoutedEventArgs e) in C:\Projects\SVN\JMM\trunk\JMMServer\JMMServer\MainWindow.xaml.cs:line 738
[2013-02-10 18:36:48:858] Info|BackgroundWorker.OnDoWork => MainWindow.workerSetupDB_DoWork => MainWindow.AniDBDispose Disposing...
[2013-02-10 18:36:48:858] Info|MainWindow.workerSetupDB_DoWork => MainWindow.AniDBDispose => AniDBHelper.Dispose ANIDBLIB DISPOSING...
[2013-02-10 18:36:50:902] Error|BackgroundWorker.OnDoWork => MainWindow.workerSetupDB_DoWork => DatabaseHelper.InitDB Database: JMMServer does not exist
[2013-02-10 18:36:50:902] Error|BackgroundWorker.OnDoWork => MainWindow.workerSetupDB_DoWork => DatabaseHelper.InitDB Could not init database: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.SqlServer.SqlClrProvider, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The system cannot find the file specified.
File name: 'Microsoft.SqlServer.SqlClrProvider, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91'
   at Microsoft.SqlServer.Management.Common.ConnectionManager.CallerHavePermissionToUseSQLCLR()
   at Microsoft.SqlServer.Management.Common.ConnectionManager..ctor()
   at Microsoft.SqlServer.Management.Common.ServerConnection..ctor(String serverInstance, String userName, String password)
   at JMMServer.Databases.SQLServer.CreateDatabase() in C:\Projects\SVN\JMM\trunk\JMMServer\JMMServer\Databases\SQLServer.cs:line 125
   at JMMServer.Databases.DatabaseHelper.InitDB() in C:\Projects\SVN\JMM\trunk\JMMServer\JMMServer\Databases\DatabaseHelper.cs:line 70

Multiple AniDB accounts

Reported by xAndroidNekox, Nov 14, 2012

Add the possibility to add a different AniDB account to every user. Right now only one user can have his AniDB account updated through JMM Desktop/MyAnime, this renders the otherwise great program useless where several people watches anime from one source.

jmediamanager

Currently in order for me to use this properly i need to run 3 JMM server instances because there are 3 people using an AniDB account to list their anime, and everyone watches from the same server. Otherwise we would have to use one server on each computer, this would pretty much make the idea of having one central server for all clients not work at all.

Nov 14, 2012 xAndroidNekox

Seemed to me as an easy thing to store different AniDB and maybe even community sites login details for each account, and when switching users in for example MyAnime have JMM Server use this login information instead. Though it looks like it isnt as easy as it seemed in my head.

Otherwise it is a great program and hwo knows, there might be a way in the future!

Nov 14, 2012 jmediamanager
Yup what you are suggesting is something I looked at.

However the reality this would require a lot of logging in and out.
Which would be fine in most cases, but if 2+ users were using JMM Server at the same time you have a good chance of getting banned.

e.g if you have 3 AniDB users, and you add a file to your collection, it means you have to add that file for all 3 users.

So in a 1 user scenario (already logged in) you would send
ADD FILE

for 3 users (1 user logged in)
ADD FILE
LOGOUT
LOGIN
ADD FILE
LOGOUT
LOGIN
ADD FILE

There are other sorts of complications which also make it difficult.
I haven't raised the issue with AniDB recently so I will try again

Nov 15, 2012 xAndroidNekox

Oh, I see now that it was a whole lot easier in my head than in reality.

Yes please do that, and if you can would you be able to post an update on the matter here?

It would be great if they could add support for this on AniDB, thank you for the hard work and answering my lunatic questions!

Nov 22, 2012 inferknox

I recently joined AniDB due to finding JMM. When I investigated the site a bit (as I marveled at how JMM was updating it according to my collection, etc), I noticed that it's possible to link one account to another on AniDB.

The purpose of the linking is so that a master account can be set that is the regarded as the account that has the collection, whilst the accounts linked to it are marked as using the same collection, but have each account have independent watched/ratings/comments.

Could JMM not be made to work with this system, by having users set which user account is the master account in JMM (which will correspond with the master account on AniDB), then marking the other accounts as linked accounts?
That way JMM can only send newly added files data to the master account, but at the same time JMM can be set that when another user (linked) logs into JMM, it will upload only their respective watches/ratings/comments to their individual accounts for that file, which would already be listed as present in their collection, since it was added to the master account they are linked to in AniDB.
If it can be done, a link to explain what such a setup means in AniDB & JMM, and how to set JMM to achieve this can be made in the users part of JMM.
Does that make sense? It does to me when I re-read it, but seems like what I'm saying might be confusing.

http://wiki.anidb.net/w/PROFILE_MASTERACCOUNT

Nov 22, 2012 jmediamanager
Wow I have been using AniDB for years and didn't know about this.

Unfortunately it looks like it doesn't solve the problem.
The UDP API does not allow you to specify a user when you mark a file as watched, vote for an anime etc.
So I would still need to use the process I described above.

I haven't talked to the AniDB devs yet so I will mention this as well.
I have posted my request here, if anyone wants to follow it
http://anidb.net/perl-bin/animedb.pl?show=cmt&id=45386

Nov 23, 2012 inferknox

Hmm... I looked at the thread and I don't really understand that well. I'm a PC & network technician myself, but I don't do software development. I do somewhat understand the sort of logic to apply in it though, so I think I can perhaps have something to contribute to the thought process.

Tell me, at what level does JMM log in? Is it the JMM server or JMM desktop?
Also, how does AniDB interpret logins, is it:

  • login from a certain app at a certain IP, or
  • a certain user from a certain app at a certain IP?
    That is to say, does AniDB recognise distinct traffic from multiple users logged in from the same type of app (eg. all users are using Opera 12.11) from different computers in the same LAN, that connects to AniDB (via NAT) through 1 public IP?

I'm thinking that

  • if AniDB does recognise traffic from several users, using the same exact app type and version, on different computers in a LAN; as distinct traffic, and
  • if JMM logs in through JMM desktop,
  • then since multiple users using JMM simultaneously will only have 1 instance logged into 1 account per computer, it should work without logouts and logins to AniDB.
    And since there'll be only 1 master account per JMM network, only that one account will be sending the 'add file to mylist' sort of data, the rest will only be sending watches/ratings/comments data.
    JMM could be set that only the JMM server logs into the AniDB master account, whilst having all the accounts linked (on AniDB to the master account) log in on the JMM desktop level.
    When an individual logs into the master account in JMM desktop, it would simply control the JMM server's interaction with AniDB (which is how I imagine it works now).

If AniDB doesn't recognise the traffic from multiple users using the same type of application on 1 IP, then there's a problem.
Also, if the log into AniDB can only be at the JMM server level, not the JMM desktop, then that is a problem.

That's sort of my reasoning. Make sense? Hope so.

Nov 23, 2012 jmediamanager

JMM Server handles all the communications to AniDB (as well as all the hashing etc)
JMM desktop just connects to jmm server.

Moving this logic to the JMM desktop level would be much harder for me than my proposed solution.

Note - to send any commands to the anidb udp server you must be logged in. ie retrieving file information when hashing, and so this logic is not user specific, and must be kept at the server level.

Note - when i read about AniDB master accounts, it says that you can't actually mark a file as watched. I haven't tested it though.

Nov 23, 2012 radioragunda

Just when I was thinking about the log in/out problem of several users, i read in the request on AniDB that ommina had already answered my thoughts. Letting JMM server add all episodes at once for one user then switch and add it to the next user, would be the same as everyone adding it themselves. Using your list for 3 users (1 logged in) maybe it would be even less hammering on the server as JMM would send:

ADD FILE
LOGOUT
LOGIN
ADD FILE
LOGOUT
LOGIN
ADD FILE

Instead of manually adding (1/3 users):
LOGIN
ADD FILE
LOGOUT

I might be wrong, but it makes sense to me.

Nov 23, 2012 jmediamanager

Yeah I think we are agreeing, I suggested that the add files requested be grouped by user

Nov 23, 2012 inferknox

I think then refining the communications would be the best way. I think making JMM users link accounts on AniDB, and identifying (in JMM) which is the master account and which are the linked accounts would still be helpful. It would allow you to set JMM not to send any data regarding new files, only to send about ratings/etc, since the files would be auto-added to linked accounts from the master account (within AniDB). Then besides that, JMM could be set to highly prioritise the master account traffic and only send link-account data at certain intervals and perhaps at certain events, like logins & logouts (in JMM), etc. It would minimise the logins & logouts to AniDB and reduce the "commands sent per user", which the AniDB mod said would be a positive thing.
Sound okay?

Nov 24, 2012 jmediamanager

I'm pretty sure that if you have a master account set (you are slave) that you cannot mark any files watched.
Which would make it pretty useless in this situation.

But I will test it out to make sure.
NOTE the ADD FILE command is also the same command used to mark a file/episode as watched
ie you do a ADD file with the watched date parameter set

Nov 24, 2012 inferknox

I may be wrong, but it seems to say you can on the last sentence of:
the "Set Master Account" section here:
http://wiki.anidb.net/w/PROFILE_MASTERACCOUNT

Ah, I see now about the command. Hmm... I guess testing would be necessary then to know for sure if it's possible to use the command for slave accounts to mark watched files, etc.
Which other apps make use of these commands? I ask, wondering if it is feasible to hope for AniDB to change the watched command if need be.

Nov 24, 2012 inferknox

Oh, wait... I just saw in the note that it can't be done. So maybe to request addition of the feature, since it says it may be added in the future. Worth requesting. I would also back up the request and ask others I've introduced to JMM to do the same. :)

Nov 24, 2012 jmediamanager

I have suggested that on the AniDB thread.
Probably best to leave it with the AniDB guys though, they probably won't be persuaded by numbers anyway.

Nov 25, 2012 inferknox

Hmph, so judging by the response in the AniDB thread & the connections being made by JMM server, all the limitations are set.
That being the case... if you're going to go ahead with adding the feature to JMM, perhaps spacing out the logins and logouts could be best way to mitigate how server intensive JMM's interaction with AniDB is. Like perhaps having the add file command only get sent for JMM users are are already logged in & upon the event of a JMM user logging in?
I know you've probably thought of that and more already, just throwing it out there anyway. :)

Nov 25, 2012 jmediamanager

Hmm although that makes sense, it won't be transparent to most users.
ie if one user bulk imports 100 files, other users would expect them to appear on their anidb website as well.
Waiting until they login might be confusing.
Especially since the UDP api is limited to one command every 2 seconds.

Also the in the response to the ADD FILE command, it gets the user's watched state/date, so it is good to have that ahead of time.

To be honest I haven't even figured out out how I will batch the commands yet, because the architecture isn't designed like that. It basically puts all the commands on a queue. You can give them a processing priority, but not order them by anything else.

Dec 4, 2012 xAndroidNekox

But i have to say, as ommina at AniDB gave the green light it feels as it's just a matter of code before this is reality. How many levels of processing priorities are available? Is it just a matter of low, medium and high or something like lowest, low, medium, high and highest? And will the program follow the priorities to the fullest? If the latter was correct then you could put the queuing on different levels for each user. Sounds a little roundabout but it should work in theory. Otherwise is it not possible to queue all commands for one user first as usual then add logout-login and then queue the commands again? Or is the program processing the queue randomly? Im definitely out running on thin ice here but that's what i came up with thinking about it a little.

Dec 5, 2012 jmediamanager

There are currently 15 levels of priority, but there is no actual limit.
Yup I have basically planned out how I will do it, and it does involve using a different priority for each user.

For my own notes, just in case I forget how I planned to do it...

New Table - AniDB_Credential

  • Username
  • Password
  • IsPrimaryUser
  • QueuePriority

Migration

  • AniDB login in config file to be moved to a new record in the AniDB_Credential table. This will be marked as the primary user
  • IsAniDBUser field on user records will no longer be used. Instead each user can be linked to an anidb credential instead
  • Current users will be linked to the newly created credential
  • Remove creation of the "Family Friendly" user from initial database population
  • Initial database population to create and attach Primary User credential
  • All CommandRequest records relating to mylist commands to be deleted (as they will now be user specific)

Rules

  • Only one user can be the primary user
  • Primary user credential will be used for the initial login (although this is not really important)
  • When creating a user, option will be given to create or link to an anidb credential
  • QueuePriority on a credential will have a minimum value of 50 and a maximum value of 5000 (everything below is reserved for JMM use)
    • When creating a new credential look at the current maximum and increment by 1
  • QueuePriority must be unique ie credentials cannot share the same priority
  • Changes to AniDB user specific commands
    • All following commands to now include the Credential ID
    • MYLISTADD : Priority = Credential Priority
    • VOTE: Priority = Credential Priority + 5001
    • MYLISTDEL: Priority = Credential Priority + 5002
    • MYLISTSTATS: Priority = Credential Priority + 5003
  • When creating a new credential, or attaching an existing credential to a user, use the MYLIST HTTP command to get and update all recoords for that user (if they were already using AniDB)
  • Do not allow the user to remove the PrimaryUser flag, it can only be switched

Guidance

  • Change the user creation process to work on a background thread
  • Advise the user that additional credentials/users (beyond the primary user) should not be created until the collection is fully imported (although not mandatory)
  • Advise the user that adding AniDB credentials can significantly increase processing time of a collection

Future Changes

  • Allow default images (fanart, posters etc) to be set per user

Apr 9, 2013 diggzbox

What are the chances of extending this to other social accounts? In particular: MyAnimeList.

In JMM Server use a OK button to close after entering initial details

Reported by werndlymob, May 6, 2012

In the Initial Setup window where you enter... erm, some data (I forgot what), there should be an OK button to confirm the change. I remember there was a filed to enter something and the button to Test the value (a login perhaps?). After you successfully passed the test, you had to close the window with a red X on the top right. I think it would be more Windows-like to include an OK button to accept the changes and close the window.

Files with special characters do not hash

Nat.asmi.666

I didn't have the chance to change the database but i was able to find out what was causing the error. it was the special non english characters like "ū" that was causing the issue. once i renamed without them it detected the files.

Multiple tvdb links for series

Reported by aznkvaj, May 3, 2012
Please allow multiple links for tvdb specific for season zero selections because of the way tvdb was redesigned and organized.
Example:
Ah! My Goddess has 5 different series listed but tvdb list the ova under special and not under the specific ova names.

Dot hack series are another with the same issue on tvdb.

maximo.piva
Hmm. Instead unique TvDB ID and TrakTV ID per serie.
The combination of ID, Season and Episode like MAL. For TvDB and TrakTV.

Auto-Matching the correct season/episode start, could be done, using Levenshtein distance.
Specifically on TvDB and TrakTV, the first episode of the serie to match, should match episode 1 of season 1, episode 1 of season 2, etc...... if no good match, the first episode should be the best episode match, of all episodes ovas (Season 0). Or could be matched using aired date.

This will fix almost all problem i found, since the most common is two or three series that are marked as ovas in TvDB/TrakTV.

Also, on manual assign, instead of assigning via ComboLister with the Season and a Numeric input, a combolister having every Season/Episode (With Names) populated from TvDB/TrakTV/MAL should be nice, clicking should show a lister with two columns, one column with AniDB episodes of the series, and the second with The selected episodes on TVDB/TrakTV/MAL.

werndlymob
Sorry, yeah you won't be able to do it yet, since my validation would block you assigning the same TvDB series/season combination to more than one anime series (This will need to be removed)

Add Support for XBMC - Simple Support

This issue is to add first stage (simple) support to XBMC.
Which means creating NFO files and thumbnails

XBMC uses '.nfo' files for shows. such as 'tvshow.nfo' (kept in the parent folder of the show) and 'filename.nfo' (kept in the same directory and the episode).
xbmc also uses 'filename.tbn' files for episode thumbnails (also kept in the same directory as the episode)
If there was a way to export all of the current library to these individual files and an option so that when you get a new file then JMM server will automatically create the corresponding nfo and tbn file then the data could be read by xbmc.

xbmc also has http access which allows for notifications to be sent to it for example if an episode is downloaded and ready to watch it can get a notification and add it to the library.

Missing relations group filter

Create a new group filter which shows anime related to anime in your collection, which you don't have yet.
For example: you have the first season in your collection, but don't have any episodes from the second season

XEM: Xross Entity Map for Community Recommendations

Reported by CatmanIX, Mar 10, 2013

Have you considered using http://thexem.de/ to help with cross database consolidation? It's still a bit rough around the edges but its much more robust than the current method.

Jun 2, 2013 Are.Torrentbytes

will help out with the linking process if it gets added.
sadly my JMM server picks wrong from time to time and i end up with screenshots from a random tvseries XD

Jun 2, 2013 werndlymob

Hi, I had never heard of this before.

In the latest release of JMM (just today), it includes new linking for TvDB.
This includes something like XEM, where links are approved by administrators.

But I will also look at this.

Jun 2, 2013 CatmanIX

It was created for use with the lad1337's fork of sickbeard for anime. There's a lot of issues with the sickbeard fork but i found xem to be rather well designed.

You can find him in the #xem channel on freenode if you need to discuss how it works and how to integrate it.

IRC search

Reported by Craige1Emmott, Jan 14, 2013

Because the main release channel of anime is IRC.

Jan 15, 2013 imperialxt

Not so much anymore. This would require a built in irc/xdcc client? Running a fansub group and helping a few others. We all release torrents at the same time we do the bots or soon after.

Jan 20, 2013 werndlymob

Yeah I agree that torrents are the main source of downloads now.
While IRC would be useful, it also seems like a lot of effort.
Unless you're volunteering to do the work craig ;)

Jan 21, 2013 Craige1Emmott

Yeah, its something I was planning to do in my anime 2. I might as well give it a shot now :)

API support for JMMServer

A sort of web API for JMMServer, to trigger scans on certain folders/files when called. This helps with network folders that can't be automatically detected for new files. Also to trigger rescan on certain files that weren't added to AniDB when first scanned (mainly new releases).

Default track number for subs and audio

Is it possible to choose a default track when all tracks are english but different translation groups?

There are many releases with multiple translations to choose from and it would be very convenient to choose default track by number (first, second etc)

Moderation of Community submitted links

Sometimes users will submit links for TvDB / MAL/ Trakt etc, which are incorrect.

Create functionality to edit these links (must be authenticated)

  • UI in JMM Desktop
  • Ability to mark a community recommendation as 'Moderator Approved'
  • Only available to authenticated users (authed at server end)

Ability to get more info on torrent results

Reported by Craige1Emmott, Jan 14, 2013

Look at pulling descriptions, comments, etc from websites for torrent results. Might need to look at a scraping script system. Such a system should allow for easy expansion to the download sources.

Jan 15, 2013 imperialxt

This will need different scraping for each site? and is it really necessary? the file title for anime torrents should be informative enough.

Jan 16, 2013 Craige1Emmott

The four main use cases I see for this are:

  1. Pulling info for use in other systems, e.g. enables "safe" searching based on anime categories. There are probable other systems that could benefit from that data as well
  2. Allows for users to see the quality of a torrent(comments, file sizes, resolution, rip source, etc). Saves waisted download quotas.
  3. A fair amount of anime have anime relations that show up in search. It would make it easier to tell what they are (is it the sequel that people should watch first?, etc)
  4. Allows for new download sources to be added easily, as well as updating old sources if needed.

Allow per episode association modification

Reported by Craige1Emmott, May 22, 2012

Allow the associated tvdb episode relation of an anidb episode to be changed. This would allow anidb anime that are listed as specials of other seasons on tvdb to have proper images.

Sep 3, 2012 comment - [email protected]

The Same for trakt, also, on Season selection. Display all episodes with their names, number and season. In this way we don't have to go to TvDB, Trakt or MAL site to select the correct episode or episode start. Also, when the relation is in use, link to the series that have it. (To fix Import false positives).

I could do the change, but i guess you want to do it since the webcache and databases should be modified.

Also if you will do it, add to the webcache the curator flag. There is a lot of false positives in the webcache. :(

Utility to hash reconciliation

Reported by werndlymob, Aug 9, 2012

A new utility that goes through all files in your collection, and makes sure that the hash in the database matches the physical hash.

This is to check for corruption.
Should run on low disk priority

Allow browse for folder on import folder

Instead of just entering an import folder path using copy and paste, create a 'browse for folder' button.

When doing from JMM Desktop, it will need to browse folders on that remote server.

Guest account for collection comparison/sharing

Reported by inferknox, Nov 23, 2012

I would like to recommend a built in guest account that can be enabled/disabled by admin. Perhaps an admin could also be able to edit the groups (under collection) in the guest account.

This would be in order to allow one to connect to another's collection perhaps for the sake of comparison, sharing or exchange, where one person that has their own collection, instead connects their JMM Desktop to another the collection of another's computer in a temporary LAN.

Recommendations for the guest account (when compared to one I made manually under "settings>users" with all options unchecked) would be:

Globally
  • disable watched/unwatched list and hiding of all such buttons.
  • disable of playlists and hiding of all such buttons.
on Dashboard
  • absence of "Continue Watching" section.
  • absence of "Recently Watched Episodes" section.
  • (perhaps) absence of "Friend Activity" section.
on Collection
  • inability to make any changes to the groups.
  • under series > series info,
    top: removal of add to playlist, edit, move series, update AniDB info and delete series.
    : addition of a "copy to" button.
    More info > TvDB & other Non AniDB Links: removal of "delete" and "switch season" buttons.
    File Summary: replacement of "delete all" buttons, with "copy to" buttons.
  • under series > episodes > + (on individual episodes), removal of "delete link" (for manually linked episodes), "delete", "is variation" & perhaps some options under "more info..." and making the hash fields read-only. Addition of "copy to" button.
removal of Playlist section
(perhaps) removal of Bookmarks section (unless it could be useful from a guest perspective)

In order to make it easier to use this feature, to add a simplified method (like a button) to allow one to quickly access another collection on another computer as a guest, comparable to how it's easy for one to switch user account (by clicking user button at bottom of JMM desktop). Perhaps making a "Scout" button next to the user button that when moused over would show a pop-up saying something like, "Allows you to look through another collection as a guest and compare and/or share anime," and when pressed would brings up a dialogue asking for the hostname or IP of the computer with the other collection.
Also, to perhaps add a question of whether one wants to "scout" another collection as a temporary guest, in the dialogue that pops up when JMM desktop is launched but can't find it's server set as default.

That's all I can think of for now. The main idea is to being able to browse, copy from, and not edit the scouted collection, as well as disabling all unnecessary sections/fields/options. :)

Had an extended thought on the idea.
To allow easier comparison of one's one collection against another:
In the case that one was logged into their default set server, when they click the "scout" button and connect to another collection, to have have the "scout" button change it's name to "scouting" and colour (to indicate a change in state), and become a drop-down of buttons with the buttons in the drop-down being:

  • switch back - to quickly jump back to one's own collection to compare, etc.
    (this would change to "scout more" when browsing one's own collection, so that when selected again, would take one back to scouting the other collection)
  • done scouting - to disconnect from other collection and switch back to one's own collection.

On the condition that one was not originally connected to their default collection, to have only the "done scouting" button present in the drop-down.

On all conditions, when clicking "done scouting" to have an 'are you sure?' dialogue with the buttons [yes] [no] [scout another], where the last button disconnects from this other collection and pops up the dialogue to enter the hostname/ip of another collection to 'scout', thus allowing quicker switching between scouted computers.

Also, I'd like to recommend having this guest account optionally (to admin) available to the local JMM desktop, such that one could allow another person to log into the guest account in JMM desktop on their computer to look through their collection. This will let one user give access to his collection to another user without risk of changes, even if the other user doesn't have JMM desktop installed on their own computer, or don't have their own computer present.

Just tell me to clarify if anything I said is confusing or mis-said. :)

Add Support for XBMC - Advanced Support

This issue is to add second stage (advanced) support to XBMC.
This means actually creating a plugin for XBMC, and exposing JMM Server functionality via the rest interface

Naruto OVA linked wrong

Reported by akinci.d, Feb 20, 2013

What steps will reproduce the problem?

  1. I downloaded "Naruto Narutimate Hero 3: Finally a Clash! Jonin VS Genin!! Indescriminate Grand Melee Tournament Meeting!!" and the file got added in JMM

What is the expected output? What do you see instead?
Expected output: file being added to "Naruto Narutimate Hero 3: Finally a Clash! Jonin VS Genin!! Indescriminate Grand Melee Tournament Meeting!!" and find the episode there.

What I see instead:

  1. When I click on the series (a9685) I can't find the episode, although it's showing up on the "Series info" but not on the "Episodes" tab. AniDB shows that file is added to storage.
  2. On the dashboard the file seems to be linked to "Naruto 1-OVA" but when I enter the "Naruto" group, the episode isn't there.
  3. Jmm says I have a file missing from the release groups I'm collecting (which isn't true).

MediaBrowser 3 support

In Mediabrowser 3 there is currently a plugin for Anime and it works great overall but JMM offers lots when it comes to anime and maybe could maybe enhance the current Anime plugin or replace it :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.