Kodi Community Forum

Full Version: script.skinshortcuts
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi there. I have 3 Kodi machines in my home that I like to keep updated with all my favorite addons. So I wrote a script that downloads a zip package and extracts all the addons I use including skin and its custom settings configured with script.skinshortcuts. My question is, when I extract my package which includes the skin I want to use the skin parameters are all the default values. How can I get all my saved values from skinshortcuts to appear. I have the saved data from the userdata/addon_data folder. Can I simply do a jsonrpc call to execute the skinshortcut script?

thanks in advance.
If you're replacing the contents of userdata (wiki)/addon_data/script.skinshortcuts, the script should detect that the menu needs to be rebuilt and rebuild it next time you access the home screen.

It's probably possible to issue the same command the skin runs via Json - I presume you'd need to use Addons.ExecuteAddon, and convert the RunScript in the skins Home.xml to the format required by the json command.
So two fold, either call a Container.Refresh and send the user to Home Screen to invoke the default script or call the addon via jsonrpc.. I'll try both and let you know. Thanks for the info.
(2016-03-13, 20:47)marcelveldt Wrote: [ -> ]I'm curious about the autoreload stuff too. Tried to make that work but in the end there was always an addon/path which didn't like something to be added to the path, for example the YouTube addon.

BTW: If you're using skinhelper service in your skin there are a few interesting properties to use for the reload:

$INFO[Window(Home).Property(widgetreload)] --> will change if any video content is changed in the library or after playback stop of any video content

$INFO[Window(Home).Property(widgetreload-episodes)] --> same as normal widgetreload but only for episodes
$INFO[Window(Home).Property(widgetreload-movies)] --> same as normal widgetreload but only for movies
$INFO[Window(Home).Property(widgetreload-tvshows)] --> if tvshow content is added/changed in the library
$INFO[Window(Home).Property(widgetreloadmusic)] --> will change if any music content is changed in the library or after playback stop

$INFO[Window(Home).Property(widgetreload2)] --> changes every 10 minutes

The properties

Can you use two of these for a single widget? I would like it to update every 10 minutes and also after any playback stop.

Thanks
(2016-04-02, 08:57)giminicricket Wrote: [ -> ]Can you use two of these for a single widget? I would like it to update every 10 minutes and also after any playback stop.

Offcourse, for example:

&reload=$INFO[Window(Home).Property(widgetreload)]$INFO[Window(Home).Property(widgetreload2)]
(2016-04-02, 16:43)marcelveldt Wrote: [ -> ]
(2016-04-02, 08:57)giminicricket Wrote: [ -> ]Can you use two of these for a single widget? I would like it to update every 10 minutes and also after any playback stop.

Offcourse, for example:

&reload=$INFO[Window(Home).Property(widgetreload)]$INFO[Window(Home).Property(widgetreload2)]

Well, that's easy, thanks!

Another question, which I'm hoping someone can answer (not sure if this is the right thread):

I have a widget pointing to plexbmc Recently Added movies. It uses the below syntax:

plugin://plugin.video.plexbmc/?mode=0&url=http%3a//192.168.0.10%3a32400/library/sections/1/recentlyAdded&mode=0&reload=$INFO[Window(Home).Property(widgetreload)]

How can I modify this so the widget only returns 5 items, and that it filters out any items that are marked as watched?

Thanks again
(2016-04-02, 16:43)marcelveldt Wrote: [ -> ]
(2016-04-02, 08:57)giminicricket Wrote: [ -> ]Can you use two of these for a single widget? I would like it to update every 10 minutes and also after any playback stop.

Offcourse, for example:

&reload=$INFO[Window(Home).Property(widgetreload)]$INFO[Window(Home).Property(widgetreload2)]

The widegtreload2 property isn't behaving as I would have expected. It only updates after 10 minutes if the widget is selected/highlighted (I have the widget autoshowing, so can be on the screen but not selected).

If the widget is selected it correctly updates every 10 minutes.

If the widget is not selected it doesn't update after 10 minutes until you select it, even if it was showing on screen.

Ideally I would like the widget to update every 10 minutes regardless of whether it is selected or not.

Does this make sense?

Thanks
(2016-04-03, 04:28)giminicricket Wrote: [ -> ]I have a widget pointing to plexbmc Recently Added movies. It uses the below syntax:

plugin://plugin.video.plexbmc/?mode=0&url=http%3a//192.168.0.10%3a32400/library/sections/1/recentlyAdded&mode=0&reload=$INFO[Window(Home).Property(widgetreload)]

How can I modify this so the widget only returns 5 items, and that it filters out any items that are marked as watched?

The specific parameters that an individual plugin accepts it its URI is down to the specific plugin. You're better asking in the relevant PlexBMC thread. Though it's always worth checking in the plugins settings if it has any option to enable what you want.
Is it me or the plugin is not available in the official repository anymore? http://mirrors.kodi.tv/addons/jarvis/

I tried installing a skin that uses it and the plugin downloaded correctly... I guess it's somewhere else...
(2016-04-03, 18:14)BobCratchett Wrote: [ -> ]It's you Smile

actually the "zip" is missing...

Image

so, it's "just" me and him now :]
(2016-04-03, 18:14)BobCratchett Wrote: [ -> ]It's you Smile

That's strange, your url works, but if I browse the above directory, this is the list I see:Image

Also, is it supposed to work as a script somewhere (meaning like a program I can launch from inside Kodi) or not? Or is it called only from inside skins?

I'm entertaining the thought of trying to add it to Transparency! but I'm so damn clueless about all this... sorry. Sad
The zip file is there too, but just like the script.skinshortcuts folder in the main listing, for whatever reason it's not visible Confused

@ashlar - it's only used by (and launched by) skins. It's not something you can manually run via Programs, only via shortcuts the skin provides.
Ok, well... at least I'm not crazy. I'll try to follow the guide. I'm not sure about the meaning of the following: "In both cases, remember to replace mainmenuID=9000 with the id of the list you will be using to display the main menu in." Is it something I need to check what Transparency" uses as the ID of the main menu?
Yes unless you're planning to change it. In regular Transparency, it's 5040.