Reload Skin

I don’t have a log Sam but I know what is causing it… I use a Kodi-send command to reload the skin in a script that runs via a cronjob at midnight. If I comment out the Kodi-send command then it wakes from screensaver when I press a key on the remote. If that command is sent then Kodi responds but the screensaver stays on and the screen is very dim even if I play something.

It only does seems to do if if the screensaver is on for an extended time when my TV etc is off as well. I have CEC disabled anyway as it screws everything up (and always has)

You might try having it run something like this before the reload skin command…
kodi-send -a "notification(Library Update,,)"

That’s a good idea. I’ll try that tonight.

1 Like

No good.
I’m going to add a restartapp command after reloading the skin… probably just restart the app will do the trick anyway…
I don’t know if it did this previously or it’s the beta causing it…

Too bad. I thought that was being caused by the UI refreshing when the screensaver was on. I checked on mine and sending the notification was getting the screensaver to turn off so my thought was to use that to pull it out of the screensaver before refreshing the UI.

1 Like

Was a good idea. Wish I knew if it’s specific to the beta and if anyone else has the same…

It is a very old problem assuming it is related to this…

The issue can still happen despite that patch. If you search this site or Kodi’s forum you will find people on various platforms that have issues with this. If you switch to restarting mediacenter to effect the same outcome I would suspect your issue should stay gone. Alternatively you can just add a custom keymap to perform the UI refresh by pushing a button on your remote. I’ve been testing this and i’ve not seen any side effects from this approach.

Sounds like it!

I might take a look for that…

The action you would be mapping is “ReloadSkin()”

<keymap>
  <global>
    <keyboard><F5>ReloadSkin(</F5>
    </keyboard>
  </global>
</keymap>

Can I get a message when it does it as well? Do I need to reload key maps too?

<keymap>
  <global>
    <keyboard>
     <F5>ReloadSkin()</F5>
    </keyboard>
  </global>
</keymap>

You were missing a “)” on your action. I don’t think you can effect more than one action without running it though an external script. It shouldn’t be necessary as the skin reloading should be quite obvious. If your just asking about making this keymap take effect you can reboot or via terminal kodi-send --action=reloadkeymaps

1 Like

Ok great… yeah it was when I pasted from an iOS editor it screwed up the formatting - I had it right in the XML. Thanks again.

1 Like

If I use a script… would it look like this?

import xbmc
xbmc.executebuiltin( "XBMC.ReloadSkin()" )
xbmc.executebuiltin( "XBMC.Notification(Reloaded Skin,3)" )

I don’t know anything about scripting, sorry. Your notification doesn’t look right Are you wanting “3” as the second line of text? Did you mean to do 3 seconds instead? If so that would be (Reloaded Skin,,3000)

osmc@osmc_vero4:~$ ./reloadskin.py./reloadskin.py: line 1: import: command not found./reloadskin.py: line 2: syntax error near unexpected token "XBMC.ReloadSkin()"'./reloadskin.py: line 2: xbmc.executebuiltin( “XBMC.ReloadSkin()” )’

Ugh… yeah 3 seconds. Can’t import the python library…

You don’t have a shebang (#!) telling bash that it’s a python script, so it’s trying to run it as a bash script.

You need to either put:

#!/usr/bin/python

at the beginning of the script, or just run it using python:

$ python reloadskin.py

Yeah thanks. I realised that. still can’t import XBMC. Does import Kodi but the xbmc.builtin isn’t found. Also tried Kodi.executebuiltin… same

Ah, I wasn’t thinking… You can’t import xbmc unless the script is started from Kodi. You need to use kodi-send if you are trying to run outside of Kodi.

So the script is most likely OK and I just need to call it via Kodi? Hard to test that though…

Actually now I’m not thinking!!!

This one got a bit off track to the testing thread so I pulled it into its own.

1 Like