Jump to content

Auto Organize - Expanding its functionality


aaronsomek

Recommended Posts

TheUrbanXplorer
2022-04-14 18:25:16.451 Info App: MovieDbProvider: Finding id for item: Dragonball
2022-04-14 18:25:16.453 Info HttpClient: GET https://api.themoviedb.org/3/search/tv?api_key=f6bd687ffa63cd282b6ff2c6877f2669&query=Dragonball&language=de&first_air_date_year=1986
2022-04-14 18:25:16.646 Info HttpClient: GET https://private.omdbapi.com?apikey=fe53f97e&plot=full&r=json&y=1986&s=Dragonball&type=series
2022-04-14 18:25:34.696 Error ProviderManager: Error searching
	*** Error Report ***
	Version: 4.6.7.0
	Command line: C:\Users\Rico\AppData\Roaming\Emby-Server\system\EmbyServer.dll -noautorunwebapp
	Operating system: Microsoft Windows 10.0.22000
	Framework: .NET Core 3.1.21
	OS/Process: x64/x64
	Runtime: C:/Users/Rico/AppData/Roaming/Emby-Server/system/System.Private.CoreLib.dll
	Processor count: 10
	Data path: C:\Users\Rico\AppData\Roaming\Emby-Server\programdata
	Application path: C:\Users\Rico\AppData\Roaming\Emby-Server\system
	System.Net.WebException: System.Net.WebException: The remote server returned an error: (403) Forbidden.
	   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
	   at System.Net.WebClient.GetWebResponse(WebRequest request, IAsyncResult result)
	   at System.Net.WebClient.GetWebResponseTaskAsync(WebRequest request)
	   at System.Net.WebClient.DownloadBitsAsync(WebRequest request, Stream writeStream, AsyncOperation asyncOp, Action`3 completionDelegate)
	   at MediaBrowser.Plugins.Anime.Providers.Proxer.Api.WebRequestAPI(String link)
	   at MediaBrowser.Plugins.Anime.Providers.Proxer.Api.Search_GetSeries_list(String title, CancellationToken cancellationToken)
	   at MediaBrowser.Plugins.Anime.Providers.Proxer.ProxerSeriesProvider.GetSearchResults(SeriesInfo searchInfo, CancellationToken cancellationToken)
	   at MediaBrowser.Providers.Manager.ProviderManager.GetSearchResults[TLookupType](IRemoteSearchProvider`1 provider, TLookupType searchInfo, CancellationToken cancellationToken)
	   at MediaBrowser.Providers.Manager.ProviderManager.GetRemoteSearchResults[TItemType,TLookupType](RemoteSearchQuery`1 searchInfo, BaseItem referenceItem, CancellationToken cancellationToken)
	Source: System.Net.Requests
	TargetSite: System.Net.WebResponse EndGetResponse(System.IAsyncResult)

 

Link to comment
Share on other sites

TheUrbanXplorer
2022-04-14 18:28:27.131 Info App: MovieDbProvider: Finding id for item: Der Osten – Entdecke wo du lebst
2022-04-14 18:28:27.132 Info HttpClient: GET https://api.themoviedb.org/3/search/tv?api_key=f6bd687ffa63cd282b6ff2c6877f2669&query=Der+Osten+%E2%80%93+Entdecke+wo+du+lebst&language=de
2022-04-14 18:28:27.312 Info HttpClient: GET https://private.omdbapi.com?apikey=fe53f97e&plot=full&r=json&s=Der+Osten+%E2%80%93+Entdecke+wo+du+lebst&type=series
2022-04-14 18:28:33.633 Error ProviderManager: Error searching
	*** Error Report ***
	Version: 4.6.7.0
	Command line: C:\Users\Rico\AppData\Roaming\Emby-Server\system\EmbyServer.dll -noautorunwebapp
	Operating system: Microsoft Windows 10.0.22000
	Framework: .NET Core 3.1.21
	OS/Process: x64/x64
	Runtime: C:/Users/Rico/AppData/Roaming/Emby-Server/system/System.Private.CoreLib.dll
	Processor count: 10
	Data path: C:\Users\Rico\AppData\Roaming\Emby-Server\programdata
	Application path: C:\Users\Rico\AppData\Roaming\Emby-Server\system
	System.Net.WebException: System.Net.WebException: The remote server returned an error: (403) Forbidden.
	   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
	   at System.Net.WebClient.GetWebResponse(WebRequest request, IAsyncResult result)
	   at System.Net.WebClient.GetWebResponseTaskAsync(WebRequest request)
	   at System.Net.WebClient.DownloadBitsAsync(WebRequest request, Stream writeStream, AsyncOperation asyncOp, Action`3 completionDelegate)
	   at MediaBrowser.Plugins.Anime.Providers.Proxer.Api.WebRequestAPI(String link)
	   at MediaBrowser.Plugins.Anime.Providers.Proxer.Api.Search_GetSeries_list(String title, CancellationToken cancellationToken)
	   at MediaBrowser.Plugins.Anime.Providers.Proxer.ProxerSeriesProvider.GetSearchResults(SeriesInfo searchInfo, CancellationToken cancellationToken)
	   at MediaBrowser.Providers.Manager.ProviderManager.GetSearchResults[TLookupType](IRemoteSearchProvider`1 provider, TLookupType searchInfo, CancellationToken cancellationToken)
	   at MediaBrowser.Providers.Manager.ProviderManager.GetRemoteSearchResults[TItemType,TLookupType](RemoteSearchQuery`1 searchInfo, BaseItem referenceItem, CancellationToken cancellationToken)
	Source: System.Net.Requests
	TargetSite: System.Net.WebResponse EndGetResponse(System.IAsyncResult)
	
2022-04-14 18:28:34.852 Info Server: http/1.1 Response 200 to . Time: 7833ms. http://:8096/emby/Items/RemoteSearch/Series?X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome&X-Emby-Device-Id=196921cd-e0ef-4bb0-bc6d-7511dd481fcc&X-Emby-Client-Version=4.6.7.0
2022-04-14 18:28:37.764 Info Server: http/1.1 GET http://:8096/emby/ScheduledTasks?IsEnabled=true&X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome&X-Emby-Device-Id=ad3bb85d-6eda-4b7b-ac1b-62811cd86d34&X-Emby-Client-Version=4.6.7.0. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36
2022-04-14 18:28:37.766 Info Server: http/1.1 Response 200 to . Time: 2ms. http://:8096/emby/ScheduledTasks?IsEnabled=true&X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome&X-Emby-Device-Id=ad3bb85d-6eda-4b7b-ac1b-62811cd86d34&X-Emby-Client-Version=4.6.7.0
2022-04-14 18:28:37.789 Info Server: http/1.1 GET http://:8096/emby/ScheduledTasks?IsEnabled=true&X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome&X-Emby-Device-Id=ad3bb85d-6eda-4b7b-ac1b-62811cd86d34&X-Emby-Client-Version=4.6.7.0. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36
2022-04-14 18:28:37.793 Info Server: http/1.1 Response 200 to . Time: 3ms. http://:8096/emby/ScheduledTasks?IsEnabled=true&X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome&X-Emby-Device-Id=ad3bb85d-6eda-4b7b-ac1b-62811cd86d34&X-Emby-Client-Version=4.6.7.0
2022-04-14 18:28:37.812 Info Server: http/1.1 GET http://:8096/emby/ScheduledTasks?IsEnabled=true&X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome&X-Emby-Device-Id=ad3bb85d-6eda-4b7b-ac1b-62811cd86d34&X-Emby-Client-Version=4.6.7.0. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36
2022-04-14 18:28:37.814 Info Server: http/1.1 Response 200 to . Time: 2ms. http://:8096/emby/ScheduledTasks?IsEnabled=true&X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome&X-Emby-Device-Id=ad3bb85d-6eda-4b7b-ac1b-62811cd86d34&X-Emby-Client-Version=4.6.7.0
2022-04-14 18:28:44.033 Info Server: http/1.1 POST http://:8096/emby/Library/FileOrganizations/146effde9f3384216963ed4061084879/Episode/Organize?X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome&X-Emby-Device-Id=196921cd-e0ef-4bb0-bc6d-7511dd481fcc&X-Emby-Client-Version=4.6.7.0. UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36
2022-04-14 18:28:44.041 Info App: Beginning file organization with corrections: Der Osten – Entdecke wo du lebst to 
2022-04-14 18:28:44.049 Error Server: Error processing request
	*** Error Report ***
	Version: 4.6.7.0
	Command line: C:\Users\Rico\AppData\Roaming\Emby-Server\system\EmbyServer.dll -noautorunwebapp
	Operating system: Microsoft Windows 10.0.22000
	Framework: .NET Core 3.1.21
	OS/Process: x64/x64
	Runtime: C:/Users/Rico/AppData/Roaming/Emby-Server/system/System.Private.CoreLib.dll
	Processor count: 10
	Data path: C:\Users\Rico\AppData\Roaming\Emby-Server\programdata
	Application path: C:\Users\Rico\AppData\Roaming\Emby-Server\system
	System.Exception: System.Exception: Object reference not set to an instance of an object.
	   at Emby.AutoOrganize.Core.InternalFileOrganizationService.PerformOrganization(EpisodeFileOrganizationRequest request)
	Source: Emby.AutoOrganize
	TargetSite: Void MoveNext()

 

Link to comment
Share on other sites

chef

@TheUrbanXplorer I think I have narrowed it down to two possibilities. 

They both have to do with naming the episode, and getting provider data.

In this version, we are looking for the following log entries:

  1. "Unable to match provider data..."
  2. "Episode is null" or "Episode Data Found..."

thank you for the help!

Emby.AutoOrganize_v1.6.2.7c.zip

 

We also have to keep in mind that omdb is returning this: "

The remote server returned an error: (403) Forbidden.

 

Which is also a very interesting thing. 

I wondering if you switch the providers in the library it will stop the errors from happening.

 

Edited by chef
Link to comment
Share on other sites

TheUrbanXplorer
2 hours ago, chef said:

@TheUrbanXplorer I think I have narrowed it down to two possibilities. 

They both have to do with naming the episode, and getting provider data.

In this version, we are looking for the following log entries:

  1. "Unable to match provider data..."
  2. "Episode is null" or "Episode Data Found..."

thank you for the help!

Emby.AutoOrganize_v1.6.2.7c.zip 274.68 kB · 0 downloads

 

We also have to keep in mind that omdb is returning this: "

The remote server returned an error: (403) Forbidden.

 

Which is also a very interesting thing. 

I wondering if you switch the providers in the library it will stop the errors form happening.

 

I'll try that out tomorrow morning. My 2 year old daughter and my Pc share unfortunately currently still a room. It's already late here.
Thanks in any case for checking it out. 😊

  • Thanks 1
Link to comment
Share on other sites

sydlexius
8 hours ago, TheUrbanXplorer said:
2022-04-14 17:30:47.004 Info App: Beginning Episode Organization
2022-04-14 17:30:47.005 Info App: Sorting file D:\Videos\Neue Filme und Serien\Haw0S01-S10\Hawaii Five-0 S01-S10 Complete German DL AC3 5.1 720p\Hawaii Five-0 (20210) Staffel 4 (22 Folgen) german dl AC3 5.1 720p\cdefg.HafueO.Staffel.4.24.Folgen.german.dl.AC3.51.720p.tvs.Santa,Archiv\Hawaii Five-0 (2010) - S04E19.mkv into series D:\Videos\Serien\Hawaii Five-0 (2010)
2022-04-14 17:30:47.006 Info App: Sorting file D:\Videos\Neue Filme und Serien\Haw0S01-S10\Hawaii Five-0 S01-S10 Complete German DL AC3 5.1 720p\Hawaii Five-0 (20210) Staffel 4 (22 Folgen) german dl AC3 5.1 720p\cdefg.HafueO.Staffel.4.24.Folgen.german.dl.AC3.51.720p.tvs.Santa,Archiv\Hawaii Five-0 (2010) - S04E19.mkv to new path D:\Videos\Serien\Hawaii Five-0 (2010)\Staffel 04\Hawaii Five-0 - S04E19 - Verschüttet.mkv
2022-04-14 17:30:47.242 Info HttpClient: GET https://api.themoviedb.org/3/tv/32798/season/2/episode/1?api_key=f6bd687ffa63cd282b6ff2c6877f2669&append_to_response=images,external_ids,credits,videos&language=de&include_image_language=de,null,en
2022-04-14 17:30:47.418 Info HttpClient: GET https://private.omdbapi.com?apikey=fe53f97e&plot=full&r=json&i=tt1600194&Episode=1&Season=2
2022-04-14 17:30:47.608 Error App: Error organizing file
	*** Error Report ***
	Version: 4.6.7.0
	Command line: C:\Users\Rico\AppData\Roaming\Emby-Server\system\EmbyServer.dll -noautorunwebapp
	Operating system: Microsoft Windows 10.0.22000
	Framework: .NET Core 3.1.21
	OS/Process: x64/x64
	Runtime: C:/Users/Rico/AppData/Roaming/Emby-Server/system/System.Private.CoreLib.dll
	Processor count: 10
	Data path: C:\Users\Rico\AppData\Roaming\Emby-Server\programdata
	Application path: C:\Users\Rico\AppData\Roaming\Emby-Server\system
	System.NullReferenceException: System.NullReferenceException: Object reference not set to an instance of an object.
	   at Emby.AutoOrganize.Core.FileOrganization.EpisodeOrganizer.GetMatchingSeason(Series series, Episode episode, AutoOrganizeOptions options, CancellationToken cancellationToken)
	   at Emby.AutoOrganize.Core.FileOrganization.EpisodeOrganizer.OrganizeEpisode(Nullable`1 requestToMoveFile, String sourcePath, Series series, Nullable`1 seasonNumber, Nullable`1 episodeNumber, Nullable`1 endingEpisodeNumber, Nullable`1 premiereDate, AutoOrganizeOptions options, Boolean rememberCorrection, FileOrganizationResult result, CancellationToken cancellationToken)
	   at Emby.AutoOrganize.Core.FileOrganization.EpisodeOrganizer.OrganizeEpisode(Nullable`1 requestToMoveFile, String sourcePath, String seriesName, Nullable`1 seriesYear, Nullable`1 seasonNumber, Nullable`1 episodeNumber, Nullable`1 endingEpisodeNumber, Nullable`1 premiereDate, AutoOrganizeOptions options, Boolean rememberCorrection, FileOrganizationResult result, CancellationToken cancellationToken)
	   at Emby.AutoOrganize.Core.FileOrganization.EpisodeOrganizer.OrganizeFile(Nullable`1 requestToOverwriteExistingFile, String path, AutoOrganizeOptions options, CancellationToken cancellationToken)
	Source: Emby.AutoOrganize
	TargetSite: MediaBrowser.Controller.Entities.TV.Season GetMatchingSeason(MediaBrowser.Controller.Entities.TV.Series, MediaBrowser.Controller.Entities.TV.Episode, Emby.AutoOrganize.Model.AutoOrganizeOptions, System.Threading.CancellationToken)

 

Cut for brevity.  @TheUrbanXplorer, in the future can you attach your log excerpts to your posts?  Thanks!

Edited by sydlexius
  • Thanks 1
Link to comment
Share on other sites

sydlexius
Just now, chef said:

Hey @sydlexius good to see you here! 😃

 

Just a lurker, for now.  Right now I'm happy with my current workflow(s), but I still follow developing plugins such as these with interest! 😃

Link to comment
Share on other sites

vaise
13 hours ago, chef said:

Thanks vaise.

Yeah, we are able to identify series that span multiple folders, but we just have to wire up the ability to direct future episodes to their proper folder when they do.

It get a bit complicated. So right now it pauses sorting. It isn't all that helpful yet, but it close.

 

Even if it just did the message saying 'Cant sort - series exists in multiple libraries - move manually', that would be vastly enough for me.  How many TV shows of multiple formats are really needed?.  Movies I could understand, but so little TV shows are available on 4k, so the odd manual move is way better than what it was.

  • Like 1
Link to comment
Share on other sites

chef

Oh My ....! I found the bug. I can't believe it!

It was invisible at first.... but I found it

There are three conditions in the code:

  1. Copy new episodes over existing episodes in the library, if the new episode has keywords in the title
  2. Copy any new episodes over existing items in the library no matter what.
  3. Don't copy new episodes over existing items in the library, just mark the episode as "Existing".

And there you have it!  The bug!

We are missing a condition! The fourth and final (most important) condition!

        4. Copy the new episode file if it doesn't exist yet in the library.... because it's new! {face_palm}

 

Edited by chef
  • Like 1
Link to comment
Share on other sites

GiGo

This certianly hasn't worked;image.thumb.png.25cb79a84a6e3214f2de2d8cbde9a40d.png

Clicked the 'Identify' button, identified it as Jo (2013) selected the Root folder and it still did this, however it hasn't moved the file, nor overwritted the file that was there, however it has 'modified' the file as the modified time stamp has altereted to the time I ogranised the file.

2022-04-15 06:29:52.899 Info App: Beginning file organization with corrections: Jo to 
2022-04-15 06:29:52.971 Info App: Series data found...
2022-04-15 06:29:52.971 Info App: Episode Data Found...
2022-04-15 06:29:53.293 Info App: Beginning Episode Organization
2022-04-15 06:29:53.293 Info App: Sorting file G:\Shared drives\Backup1\_sort\Jo (2013) - S01E01 - Notre Dame.mkv into series G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)
2022-04-15 06:29:53.295 Info App: Sorting file G:\Shared drives\Backup1\_sort\Jo (2013) - S01E01 - Notre Dame.mkv to new path G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)\Season1\The Job Lot.S01E01 - Under Pressure.mkv
2022-04-15 06:29:58.064 Info App: Perform Sorting
2022-04-15 06:29:58.064 Info App: Auto organize added G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)\Season1\The Job Lot.S01E01 - Under Pressure.mkv to inprogress list
2022-04-15 06:29:58.535 Info App: Moving File
2022-04-15 06:30:03.232 Info App: Removing library item: G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)\Season1\The Job Lot.S01E01 - Under Pressure.mkv
2022-04-15 06:30:04.387 Info App: G:\Shared drives\Backup1\_sort\Jo (2013) - S01E01 - Notre Dame.mkv has successfully been moved to G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)\Season1\The Job Lot.S01E01 - Under Pressure.mkv
2022-04-15 06:30:04.395 Info App: Removing Source file from watched folder: G:\Shared drives\Backup1\_sort\Jo (2013) - S01E01 - Notre Dame.mkv
2022-04-15 06:30:04.402 Info Server: http/1.1 Response 204 to host1. Time: 11505ms. http://192.168.1.67:8096/emby/Library/FileOrganizations/aed5d3baf2c1824fbf2a946e67504150/Episode/Organize?X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome Windows&X-Emby-Device-Id=84d8e1ad-6854-4c10-ad25-7b1e055c96e9&X-Emby-Client-Version=4.7.0.34&reqformat=json

 

Link to comment
Share on other sites

neik
On 4/14/2022 at 12:33 AM, chef said:

I can reproduce this! So I can fix it.

When the series is spread between multiple locations, the expected behavior would be, to stop organization and open the file organizer.

However, we don't want to have to do this each time a series is spread out.

I guess we create a smart list object which changes the location.

After selecting the proper location, the smart list object is created, and from that point forward the series will sort into the chosen folder.

Removing the smart list entry would cause the series to wait for use input again.

Does that sound about right?

Yeah, I think this sounds about right.
I think you just need to make sure the smart list object considers the resolution as well (e.g. 1080p into folder A, 2160p into folder B).

Once again thank you chef and Happy Easter Weekend. 😉 

Edit: Just updated to the latest version of the plugin and server but the issues I had are still there.
The plugin tells me "awaiting for user input" but I cannot do anything.

Edited by neik
Link to comment
Share on other sites

TheUrbanXplorer
9 hours ago, chef said:

Oh My ....! I found the bug. I can't believe it!

It was invisible at first.... but I found it

There are three conditions in the code:

  1. Copy new episodes over existing episodes in the library, if the new episode has keywords in the title
  2. Copy any new episodes over existing items in the library no matter what.
  3. Don't copy new episodes over existing items in the library, just mark the episode as "Existing".

And there you have it!  The bug!

We are missing a condition! The fourth and final (most important) condition!

        4. Copy the new episode file if it doesn't exist yet in the library.... because it's new! {face_palm}

 

Hello @chef,
Please find attached the log file with a complete search run. I have, if I have not forgotten anything, played through all possible variations of sorting once. So all possible errors should be included.

Hope this helps you with a quick solution.

Thank you for doing the work.

@sydlexiusSorry, i have not even thought about it...

embyserver.txt

  • Thanks 1
Link to comment
Share on other sites

chef

I have something new. 

6 hours ago, GiGo said:

This certianly hasn't worked;image.thumb.png.25cb79a84a6e3214f2de2d8cbde9a40d.png

Clicked the 'Identify' button, identified it as Jo (2013) selected the Root folder and it still did this, however it hasn't moved the file, nor overwritted the file that was there, however it has 'modified' the file as the modified time stamp has altereted to the time I ogranised the file.

2022-04-15 06:29:52.899 Info App: Beginning file organization with corrections: Jo to 
2022-04-15 06:29:52.971 Info App: Series data found...
2022-04-15 06:29:52.971 Info App: Episode Data Found...
2022-04-15 06:29:53.293 Info App: Beginning Episode Organization
2022-04-15 06:29:53.293 Info App: Sorting file G:\Shared drives\Backup1\_sort\Jo (2013) - S01E01 - Notre Dame.mkv into series G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)
2022-04-15 06:29:53.295 Info App: Sorting file G:\Shared drives\Backup1\_sort\Jo (2013) - S01E01 - Notre Dame.mkv to new path G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)\Season1\The Job Lot.S01E01 - Under Pressure.mkv
2022-04-15 06:29:58.064 Info App: Perform Sorting
2022-04-15 06:29:58.064 Info App: Auto organize added G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)\Season1\The Job Lot.S01E01 - Under Pressure.mkv to inprogress list
2022-04-15 06:29:58.535 Info App: Moving File
2022-04-15 06:30:03.232 Info App: Removing library item: G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)\Season1\The Job Lot.S01E01 - Under Pressure.mkv
2022-04-15 06:30:04.387 Info App: G:\Shared drives\Backup1\_sort\Jo (2013) - S01E01 - Notre Dame.mkv has successfully been moved to G:\Shared drives\Backup1\emby-primary\TV\The Job Lot (2013)\Season1\The Job Lot.S01E01 - Under Pressure.mkv
2022-04-15 06:30:04.395 Info App: Removing Source file from watched folder: G:\Shared drives\Backup1\_sort\Jo (2013) - S01E01 - Notre Dame.mkv
2022-04-15 06:30:04.402 Info Server: http/1.1 Response 204 to host1. Time: 11505ms. http://192.168.1.67:8096/emby/Library/FileOrganizations/aed5d3baf2c1824fbf2a946e67504150/Episode/Organize?X-Emby-Client=Emby Web&X-Emby-Device-Name=Chrome Windows&X-Emby-Device-Id=84d8e1ad-6854-4c10-ad25-7b1e055c96e9&X-Emby-Client-Version=4.7.0.34&reqformat=json

 

What's interesting here is how emby will drop the word "The" for comparisons.

Currently auto organize uses the "Sort Name" to compare the series.

I think this might be incorrect.

In most cases the "Sort Name" will make proper comparisons. However, in the case of "The Job Lot" and the series "Jo" the comparison would be between "Job Lot" and "Jo".

This needs to change, or it needs to take into consideration the word "The" in the title when trying to find a comparison.

Link to comment
Share on other sites

TheUrbanXplorer
10 minutes ago, chef said:

I have something new. 

What's interesting here is how emby will drop the word "The" for comparisons.

Currently auto organize uses the "Sort Name" to compare the series.

I think this might be incorrect.

In most cases the "Sort Name" will make proper comparisons. However, in the case of "The Job Lot" and the series "Jo" the comparison would be between "Job Lot" and "Jo".

This needs to change, or it needs to take into consideration the word "The" in the title when trying to find a comparison.

Makes sense, the sort title is usually not the same as the original title.

Link to comment
Share on other sites

chef

I've added some regex to normalize the strings when comparing item names.

That will remove any special characters from the name, and also any spaces.

I then made sure to use the Name param instead of SortName.

Now we could most certainly do a directly comparison using equality (==).

"thejoblist" does not equal "jo".

"Star Trek: Picard" changes to "startrekpicard" and does not equals "startreklowerdecks" (Star Trek: Lower Decks). 

 

I think this will work best.

 

Edited by chef
  • Like 1
  • Agree 1
Link to comment
Share on other sites

TheUrbanXplorer
1 hour ago, chef said:

I've added some regex to normalize the strings when comparing item names.

That will remove any special characters from the name, and also any spaces.

I then made sure to use the Name param instead of SortName.

Now we could most certainly do a directly comparison using equality (==).

"thejoblist" does not equal "jo".

"Star Trek: Picard" changes to "startrekpicard" and does not equals "startreklowerdecks" (Star Trek: Lower Decks). 

 

I think this will work best.

 

Sounds plausible at least. This way, each title becomes uniformly a comparable one-of-a-kind.
Uniformly Unique... What a play on words...🤣

  • Like 1
Link to comment
Share on other sites

chef

version 1.6.2.8

  • When attempting to locate names from providers, use all the providers (if one fails, the others might catch the data)
  • If a file doesn't exist yet, perform sorting on the item.
  • Overview chart
  • Directly compare names after normalizing them, removing space, and changing them to lower case.(This might not be correct, but we should try it)

Emby.AutoOrganize_v1.6.2.8.zip

Edited by chef
  • Like 1
Link to comment
Share on other sites

TheUrbanXplorer
1 hour ago, chef said:

version 1.6.2.8

  • When attempting to locate names from providers, use all the providers (if one fails, the others might catch the data)
  • If a file doesn't exist yet, perform sorting on the item.
  • Overview chart
  • Directly compare names after normalizing them, removing space, and changing them to lower case.(This might not be correct, but we should try it)

Emby.AutoOrganize_v1.6.2.8.zip 274.93 kB · 0 downloads

Looks good already. But not quite running yet.
Episodes are partially sorted, but not all.
New series do not work at all.

embyserver.txt

Link to comment
Share on other sites

TheUrbanXplorer
17 minutes ago, TheUrbanXplorer said:

Looks good already. But not quite running yet.
Episodes are partially sorted, but not all.
New series do not work at all.

embyserver.txt 938.01 kB · 0 downloads

With Dragonball and "Der Osten – Entdecke Wo Du Lebst" he found, but then did nothing more.

He moved and named Hawaii Five-0 in part, but not in part. Although the series name is the same.
But assigning manually doesn't work either.

Edited by TheUrbanXplorer
Link to comment
Share on other sites

chef
1 hour ago, GiGo said:

Hi @chef

Having an issue with 'Awaiting user input' items on my Synology NAS, I get no response when I click the identify button :(

Log attached, Emby .33 and DSM6

embyserver (Synology6).txt 70.83 kB · 0 downloads

Ah yes, I know about this. The button loses its event listener.

This one I can fix. Next.

Link to comment
Share on other sites

chef
1 hour ago, TheUrbanXplorer said:

Looks good already. But not quite running yet.
Episodes are partially sorted, but not all.
New series do not work at all.

embyserver.txt 938.01 kB · 0 downloads

That log is super interesting. We are feeding the series and episode data into a method, and we are still getting a null reference exception. 

Neither the episode or the series is null.

There is something else causing the exception. 

I'll be back!

  • Like 1
Link to comment
Share on other sites

GiGo
Just now, chef said:

Ah yes, I know about this. The button loses its event listener.

This one I can fix. Next.

It's odd as it's fine on a Windows server I'm running, is there a difference in the way it's done on Linux/DSM vs Windows?

Link to comment
Share on other sites

chef
2 hours ago, GiGo said:

It's odd as it's fine on a Windows server I'm running, is there a difference in the way it's done on Linux/DSM vs Windows?

I think when the DOM refreshes the table items, after the item has been placed into the "waiting" status, the identify button hasn't been given its event. 

I'll have to add "waiting" to the list of status types the identify button will work for.

 

Actually, strangely enough, if you find the button is disabled after the item is placed in "waiting", and run the task one more time from the config page, the button gets its event listener.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...