Radiicall / jellyfin-rpc

Displays the content you're currently watching on Discord!
GNU General Public License v3.0
238 stars 18 forks source link

Blacklist not working #151

Open SadPepeIRL opened 2 months ago

SadPepeIRL commented 2 months ago

Is there an existing issue for this?

Have you ran the program with debug logging?

What went wrong?

I edited my main.json file to exclude 2 library: "Anime" "Anime Movies" It is displaying it being played. The Library names are "Anime" and "Anime Movies" on jellyfin image

Json configuration "blacklist": { "libraries": ["Anime", "Anime Movies"] } }, I also tried using the default blacklist that was listed in the "setup" and it's still displaying that library "blacklist": { "media_types": ["music", "movie", "episode", "livetv"], "libraries": ["Anime", "Anime Movies"] } },

Unsure how to run --log-level=debug flag on windows.

NOTE I changed the website address in the logs

Terminal output

2024-09-15 15:53:34 DEBUG [jellyfin_rpc] Found 1 sessions 2024-09-15 15:53:34 DEBUG [jellyfin_rpc] Session username is Some("jax") 2024-09-15 15:53:34 DEBUG [jellyfin_rpc] NowPlayingItem exists 2024-09-15 15:53:34 DEBUG [jellyfin_rpc] PlayState exists 2024-09-15 15:53:34 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:34 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:34 DEBUG [jellyfin_rpc] Ancestors: [Item { name: Some("Call of the Night") }, Item { name: Some("Shows") }, Item { name: Some("root") }] 2024-09-15 15:53:34 INFO [jellyfin_rpc] Call of the Night | S1E1 First Flight 2024-09-15 15:53:37 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:38 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:38 DEBUG [jellyfin_rpc] Found 1 sessions 2024-09-15 15:53:38 DEBUG [jellyfin_rpc] Session username is Some("jax") 2024-09-15 15:53:38 DEBUG [jellyfin_rpc] NowPlayingItem exists 2024-09-15 15:53:38 DEBUG [jellyfin_rpc] PlayState exists 2024-09-15 15:53:38 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:38 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:38 DEBUG [jellyfin_rpc] Ancestors: [Item { name: Some("Call of the Night") }, Item { name: Some("Shows") }, Item { name: Some("root") }] 2024-09-15 15:53:41 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:41 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:41 DEBUG [jellyfin_rpc] Found 1 sessions 2024-09-15 15:53:41 DEBUG [jellyfin_rpc] Session username is Some("jax") 2024-09-15 15:53:41 DEBUG [jellyfin_rpc] NowPlayingItem exists 2024-09-15 15:53:41 DEBUG [jellyfin_rpc] PlayState exists 2024-09-15 15:53:41 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:41 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:41 DEBUG [jellyfin_rpc] Ancestors: [Item { name: Some("Call of the Night") }, Item { name: Some("Shows") }, Item { name: Some("root") }] 2024-09-15 15:53:44 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:44 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:44 DEBUG [jellyfin_rpc] Found 1 sessions 2024-09-15 15:53:44 DEBUG [jellyfin_rpc] Session username is Some("jax") 2024-09-15 15:53:44 DEBUG [jellyfin_rpc] NowPlayingItem exists 2024-09-15 15:53:44 DEBUG [jellyfin_rpc] PlayState exists 2024-09-15 15:53:44 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:44 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:44 DEBUG [jellyfin_rpc] Ancestors: [Item { name: Some("Call of the Night") }, Item { name: Some("Shows") }, Item { name: Some("root") }] 2024-09-15 15:53:47 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:47 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:47 DEBUG [jellyfin_rpc] Found 1 sessions 2024-09-15 15:53:47 DEBUG [jellyfin_rpc] Session username is Some("jax") 2024-09-15 15:53:47 DEBUG [jellyfin_rpc] NowPlayingItem exists 2024-09-15 15:53:47 DEBUG [jellyfin_rpc] PlayState exists 2024-09-15 15:53:47 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:47 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:47 DEBUG [jellyfin_rpc] Ancestors: [Item { name: Some("Call of the Night") }, Item { name: Some("Shows") }, Item { name: Some("root") }] 2024-09-15 15:53:50 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:50 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:50 DEBUG [jellyfin_rpc] Found 1 sessions 2024-09-15 15:53:50 DEBUG [jellyfin_rpc] Session username is Some("jax") 2024-09-15 15:53:50 DEBUG [jellyfin_rpc] NowPlayingItem exists 2024-09-15 15:53:50 DEBUG [jellyfin_rpc] PlayState exists 2024-09-15 15:53:50 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:50 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:50 DEBUG [jellyfin_rpc] Ancestors: [Item { name: Some("Call of the Night") }, Item { name: Some("Shows") }, Item { name: Some("root") }] 2024-09-15 15:53:53 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:54 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:54 DEBUG [jellyfin_rpc] Found 1 sessions 2024-09-15 15:53:54 DEBUG [jellyfin_rpc] Session username is Some("jax") 2024-09-15 15:53:54 DEBUG [jellyfin_rpc] NowPlayingItem exists 2024-09-15 15:53:54 DEBUG [jellyfin_rpc] PlayState exists 2024-09-15 15:53:54 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:54 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:53:54 DEBUG [jellyfin_rpc] Ancestors: [Item { name: Some("Call of the Night") }, Item { name: Some("Shows") }, Item { name: Some("root") }] 2024-09-15 15:53:57 DEBUG [hyper_util::client::legacy::pool] reuse idle connection for ("https", jellyfin.website.com) 2024-09-15 15:54:03 DEBUG [hyper_util::client::legacy::pool] pooling idle connection for ("https", jellyfin.website.com) 2024-09-15 15:54:03 DEBUG [jellyfin_rpc] Found 1 sessions 2024-09-15 15:54:03 DEBUG [jellyfin_rpc] Session username is Some("jax") 2024-09-15 15:54:03 INFO [jellyfin_rpc] Cleared activity

Jellyfin-RPC version

1.2.2

What OS are you using?

Windows 11

What version is the Jellyfin server on?

10.9.11

Anything else?

No response

Radiicall commented 2 months ago

Can you get the logs from startup, should include stuff about the config file its loading

SadPepeIRL commented 2 months ago

It's not producing any logs: image winswrapper.log 2024-09-15 09:30:04,516 DEBUG - Starting WinSW in console mode 2024-09-15 09:30:05,332 DEBUG - Starting WinSW in console mode 2024-09-15 09:30:05,375 INFO - Installing service 'Jellyfin-RPC (jellyfin-rpc)'... 2024-09-15 09:30:05,429 INFO - Service 'Jellyfin-RPC (jellyfin-rpc)' was installed successfully. 2024-09-15 09:30:05,838 DEBUG - Starting WinSW in console mode 2024-09-15 09:30:06,556 DEBUG - Starting WinSW in console mode 2024-09-15 09:30:06,784 INFO - Starting service 'jellyfin-rpc (jellyfin-rpc)'... 2024-09-15 09:30:07,175 DEBUG - Starting WinSW in service mode 2024-09-15 09:30:07,213 INFO - Service 'jellyfin-rpc (jellyfin-rpc)' started successfully. 2024-09-15 09:30:07,345 INFO - Starting C:\Users\jax\AppData\Roaming\jellyfin-rpc\jellyfin-rpc.exe -c C:\Users\jax\AppData\Roaming\jellyfin-rpc\main.json -i C:\Users\jax\AppData\Roaming\jellyfin-rpc\urls.json 2024-09-15 09:30:07,442 INFO - Started process 2632 2024-09-15 09:30:07,455 DEBUG - Forwarding logs of the process System.Diagnostics.Process (jellyfin-rpc) to WinSW.DefaultLogAppender 2024-09-15 09:35:32,546 DEBUG - Starting WinSW in service mode 2024-09-15 09:35:32,733 INFO - Starting C:\Users\jax\AppData\Roaming\jellyfin-rpc\jellyfin-rpc.exe -c C:\Users\jax\AppData\Roaming\jellyfin-rpc\main.json -i C:\Users\jax\AppData\Roaming\jellyfin-rpc\urls.json 2024-09-15 09:35:32,773 INFO - Started process 7724 2024-09-15 09:35:32,789 DEBUG - Forwarding logs of the process System.Diagnostics.Process (jellyfin-rpc) to WinSW.DefaultLogAppender 2024-09-15 09:36:43,009 DEBUG - Starting WinSW in service mode 2024-09-15 09:36:43,230 INFO - Starting C:\Users\jax\AppData\Roaming\jellyfin-rpc\jellyfin-rpc.exe -c C:\Users\jax\AppData\Roaming\jellyfin-rpc\main.json -i C:\Users\jax\AppData\Roaming\jellyfin-rpc\urls.json 2024-09-15 09:36:43,269 INFO - Started process 876 2024-09-15 09:36:43,287 DEBUG - Forwarding logs of the process System.Diagnostics.Process (jellyfin-rpc) to WinSW.DefaultLogAppender 2024-09-15 09:38:53,887 DEBUG - Starting WinSW in service mode 2024-09-15 09:38:54,065 INFO - Starting C:\Users\jax\AppData\Roaming\jellyfin-rpc\jellyfin-rpc.exe -c C:\Users\jax\AppData\Roaming\jellyfin-rpc\main.json -i C:\Users\jax\AppData\Roaming\jellyfin-rpc\urls.json 2024-09-15 09:38:54,101 INFO - Started process 6396 2024-09-15 09:38:54,112 DEBUG - Forwarding logs of the process System.Diagnostics.Process (jellyfin-rpc) to WinSW.DefaultLogAppender 2024-09-15 09:41:14,435 DEBUG - Starting WinSW in service mode 2024-09-15 09:41:14,625 INFO - Starting C:\Users\jax\AppData\Roaming\jellyfin-rpc\jellyfin-rpc.exe -c C:\Users\jax\AppData\Roaming\jellyfin-rpc\main.json -i C:\Users\jax\AppData\Roaming\jellyfin-rpc\urls.json 2024-09-15 09:41:14,661 INFO - Started process 6512 2024-09-15 09:41:14,678 DEBUG - Forwarding logs of the process System.Diagnostics.Process (jellyfin-rpc) to WinSW.DefaultLogAppender

Zoarial94 commented 1 month ago

I'm running into the same problem while testing, and it looks like the root issue is that the name of the library is not checked. It looks like only the directory names (aka ancestors) are checked up until the 'root' library directory. Here's an example from my log: 2024-10-05 02:28:49 DEBUG [jellyfin_rpc] Ancestors: [Item { name: Some("Specials") }, Item { name: Some("Psycho-Pass") }, Item { name: Some("Sorted") }, Item { name: Some("root") }] my actual directories are Shows/Sorted/Psycho-Pass/Specials/. I will see if I can look into a solution.

Zoarial94 commented 1 month ago

I'm not sure the API has an easy way to test if an item is in a specific library, but I asked in the developer matrix. A workaround might be saving the paths of the libraries and testing the episodes's path. /Library/MediaFolders will list the libraries in the server.

Zoarial94 commented 1 month ago

I have a some working code, but it needs to be cleaned up. I will try to make a pull request in the morning.