luizoti / script.library.integration.tool

Kodi addon that allows video plugin content to be integrated into your library
GNU General Public License v2.0
13 stars 5 forks source link

Shout! Factory plugin silently fails to add episodes #33

Open EmpressFiona opened 2 years ago

EmpressFiona commented 2 years ago

Describe the bug I've been using the Shout! Factory plugin from the official Kodi repository. When I attempt to add a program, it 'succeeds', but no programs or episodes are added. I tested the Crackle plugin, which succeeded at adding shows and episodes to the list, so it's some kind of bug.

I believe this is partly down to missing metadata, which the plugin doesn't seem to be scraping. No errors are thrown up that I can tell, and indeed the program is happy to add 0 items and silently fail to create an entry for the program.

To Reproduce First, you'll need to fix the plugin. Just adapt these instructions, it appears to be happening to many video plugins with the move to Python 3.9.

Then, just try adding something (I tried adding TokuSHOUTsu! programs, so it's possible that other categories may work); it should show that it 'succeeded' at adding 0 items, but nothing will be shown within the staging or managed menus.

Expected behavior The issue of not having metadata would appear to be with the plugin itself (more data is on the webpage but the plugin isn't pulling it). So if this plugin is designed not to add shows that lack necessary metadata, that might not be a 'bug' per se.

However, what I would consider a bug is this 'silent failure'. In fact, it seems there are no exceptions thrown at all, so LIT is perfectly happy to fail at its task. Either the shows should be added regardless of missing data (or requesting it from the user), or an exception should be thrown about the problems.

Of course, I don't know what the program is doing wrong, so my guess could be off. Please advise!

Desktop:

Additional context I'm rather disappointed that this functionality isn't considered basic for Kodi, so thank you for continuing to maintain this plugin!

Kodi log A relevant segment is added below, I can provide a full log if needed. I'm new to Kodi, so if there's a way to get more information from the plugin itself, I don't know it; please advise if more info is required.

2022-01-21 05:13:57.595 T:13854    INFO <general>: initializing python engine.
2022-01-21 05:13:59.846 T:13854    INFO <general>: Library Integration Tool v0.8.34 --> ProgressBar __init__.
2022-01-21 05:13:59.846 T:13854    INFO <general>: Library Integration Tool v0.8.34 --> BGProgressBar __init__.
2022-01-21 05:13:59.906 T:13854    INFO <general>: Library Integration Tool v0.8.34 --> Database.add_item_to_synced('Kamen Rider', 'plugin://plugin.video.shoutfactorytv/?mode=GE&url=%2fseries%2fkamen-rider', 'single-tvshow'): None
2022-01-21 05:13:59.909 T:13857    INFO <general>: initializing python engine.
2022-01-21 05:14:01.345 T:13857 WARNING <general>: xbmc.translatePath is deprecated and might be removed in future kodi versions. Please use xbmcvfs.translatePath instead.
2022-01-21 05:14:01.575 T:13857    INFO <general>: Skipped 1 duplicate messages..
2022-01-21 05:14:01.575 T:13857    INFO <general>: CPythonInvoker(13, /home/pi/.kodi/addons/plugin.video.shoutfactorytv/default.py): script successfully run
2022-01-21 05:14:01.646 T:13857    INFO <general>: Python interpreter stopped
2022-01-21 05:14:01.984 T:13854    INFO <general>: Library Integration Tool v0.8.34 --> SyncedMenu.add_single_tvshow(title='Kamen Rider', year='False', file='plugin://plugin.video.shoutfactorytv/?mode=GE&url=%2fseries%2fkamen-rider'): None
2022-01-21 05:14:01.989 T:13854    INFO <general>: CPythonInvoker(12, /home/pi/.kodi/addons/script.library.integration.tool/context.py): script successfully run
2022-01-21 05:14:02.012 T:13854    INFO <general>: Python interpreter stopped
luizoti commented 2 years ago

Shout! Factory

This is not a bug, Shout! Factory is not supported by LIT.

First, you'll need to fix the plugin. Just adapt these instructions, it appears to be happening to many video plugins with the move to Python 3.9.

LIT is not a video addon, and is independent of other addons, the maintainer of Shout! Factory that would need to make this change.

The Shout! Is Factory a paid addon? Don't need a subscription?

EmpressFiona commented 2 years ago

LIT is not a video addon, and is independent of other addons, the maintainer of Shout! Factory that would need to make this change.

I'm aware of this! I provided the instructions so you could reproduce the issue yourself rather than having to wait. (Many video plugins seem to use a nearly identical line of code, which have been broken in the move to Python 3.9 due to a deprecated function being dropped.)

The Shout! Is Factory a paid addon? Don't need a subscription?

It's not a paid add-on, the content on Shout! Factory TV is all free. In any case, the description for the plugin does say 'any video plugin', and Crackle (also free, and used in the original LIT tutorial on the forum thread) isn't listed as supported despite working perfectly. Both are official plugins from the Kodi repository.

luizoti commented 2 years ago

It's not a paid add-on, the content on Shout! Factory TV is all free. In any case, the description for the plugin does say 'any video plugin', and Crackle (also free, and used in the original LIT tutorial on the forum thread) isn't listed as supported despite working perfectly. Both are official plugins from the Kodi repository.

I ask if it is paid, because if it is, I will not pay a subscription to include it in the LIT, being free, I can analyze it in the future.

I'm aware of this! I provided the instructions so you could reproduce the issue yourself rather than having to wait. (Many video plugins seem to use a nearly identical line of code, which have been broken in the move to Python 3.9 due to a deprecated function being dropped.)

If the video addon doesn't provide data the LIT can't do anything to add the content, the addon maintainer (Shout! Factory) needs to change this, at the bottom of the LIT README there is a list of the items the addons need to deliver via JSONRPC in order for LIT to work properly.

If you think Shout! Factory does not deliver the data open the issue asking for this change, for my part, I can analyze if it is possible to add Shout! Factory to LIT (if the data exists) otherwise, I don't have much to do.