Built-in scripting

From Official Kodi Wiki
Jump to navigation Jump to search

XBMC contains several built-in functions that can be accessed from the skin (via a button) or from within a python script, or from a press of a button on the remote, gamepad, or keyboard.

Using Built-in Functions from the skin

To have a button (or toggle button) on the skin run a particular function, you just have to add an <onclick> tag (or <onfocus> tag) containing the function you wish to run.
For example, adding the following to a button control will create a stop button.

 <onclick>XBMC.PlayerControl(Stop)</onclick>

If you want a button in your skin taking you directly to the movie listing, add a parameter to the Window ID as follows:

  <onclick>xbmc.activatewindow(myvideolibrary,movietitles)</onclick>

A list of parameters can be found here:

Using Built-in Functions from python

To run a built-in XBMC function from within a python script, you just need to call executebuiltin() with the function name. For example,

 executebuiltin('XBMC.RunScript(Q:\Scripts\myscript.py)')

will run the script myscript.py located in the Scripts directory.


Using Built-in Functions from keymap.xml

To bind a built-in function to a particular key, you just add the built-in command to the appropriate section and button in keymap.xml

For example, to map the running of an executeable to the BLACK button, we'd add: <xml>

 <gamepad>
   ...
   <black>XBMC.RunXBE(E:\Apps\AVALaunch.xbe)</black>
   ...
 </gamepad>

</xml> to whatever window section of keymap.xml is appropriate.
For more information on changing the keymapping with keymap.xml see: Changing the keymapping

List of Built In Functions

Using Built-in Functions from the Web Server (HTTPAPI)

FTP Site Commands