1. Accueil
  2. Kodi
  3. Utilisation avancée de Kodi
  4. Exécuter un code au démarrage Kodi

Exécuter un code au démarrage Kodi

À PROPOS:
Si vous souhaitez exécuter un code automatiquement au démarrage de Kodi, vous pouvez le faire en créant vous-même un addon de service. Ce document vous explique comment procéder.

Préambule

Contrairement à ce que l’on pourrait croire, il est très simple de créer sois-même un addon de service dans Kodi. Ceci se réalise en créant un fichier nommé autoexec.py auquel nous devons ajouter quelques lignes qui décrivent la fonction que nous désirons exécuter.

Cas d’utilisation

  • Pour notre exemple, nous allons créer un addon permettant de recharger notre skin à chaque redémarrage Kodi.

Recharger le skin a chaque démarrage est utile surtout pour ceux qui utilisent des profils multiples sur leur installation. Ceci règle un problème connu ou l’habillage refuse de se charger au changement de profil utilisateur, ce qui empêche les widgets et paramètres de s’activer.

IMPORTANT:
Cette procédure remplace l’ancienne méthode d’ajout d’un fichier autoexec.py dans le dossier userdata de Kodi qui est devenue obsolète.

Création du dossier pour votre addon

  • Accédez au dossier addons dans le dossier de données Kodi:
dossier addons de kodi
  • Créez un dossier en le nommant ‘service.autoexec‘ à l’intérieur du dossier addons:
dossier

Ajout du fichier .py existant

Si vous aviez déjà un fichier ‘autoexec.py‘ présent dans le dossier ‘userdata‘ de Kodi (créé selon l’ancienne méthode), déplacez-le dans le nouveau dossier que vous venez de créer.

  • Si vous n’en possédez pas, il faudra en créer un nouveau. La prochaine section vous indiquera comment procéder:

Création du fichier autoexec.py

Si vous ne possédez pas de fichier autoexec.py, voici comment en créer un. Pour l’exemple, nous allons en créer un qui fera un chargement de votre skin à chaque changement d’un profil utilisateur Kodi.

  • N’oubliez pas d’inscrire le nom de votre profil à la place de ‘NOM DE PROFIL
import xbmc

if xbmc.getInfoLabel('System.ProfileName') == 'Master user':
    xbmc.executebuiltin('ReloadSkin(reload)')

elif xbmc.getInfoLabel('System.ProfileName') == 'NOM DE PROFIL':
    xbmc.executebuiltin('ReloadSkin(reload)')
  • Déposez maintenant ce fichier (autoexec.py) à l’intérieur du dossier que nous avons créé plus tôt, soit le dossier nommé ‘service.autoexec‘:
fichier

Création de votre addon

Créez maintenant un fichier en le nommant addon.xml à l’intérieur du dossier service.autoexec que vous venez de créer et copiez-y le code ci-bas👇

ASTUCE:
Vous pouvez changer ‘lesalkodiques’ sur la ligne: <addon id="service.autoexec" name="Autoexec Service" version="1.0.0" provider-name="lesalkodiques"> pour votre propre nom afin de personnaliser votre addon😉

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="service.autoexec" name="Autoexec Service" version="1.0.0" provider-name="lesalkodiques">
	<requires>
		<import addon="xbmc.python" version="3.0.0"/>
	</requires>
	<extension point="xbmc.service" library="autoexec.py">
	</extension>
	<extension point="xbmc.addon.metadata">
		<summary lang="fr_FR">Exécute automatiquement un code python au démarrage de Kodi.</summary>
		<description lang="fr_FR">Le service Autoexec sera automatiquement exécuté au démarrage de Kodi.</description>
		<platform>all</platform>
		<license>GNU GENERAL PUBLIC LICENSE Version 2</license>
	</extension>
</addon>

Personnalisation de l’addon

Si vous le désirez, vous pouvez ajouter un logo et un fanart à votre addon afin de mieux le repérer dans la liste des extensions installées sur votre Kodi.

Pour se faire, vous devez:

  1. Modifier votre fichier addon.xml
  2. Ajouter votre logo et votre fanart dans votre dossier service.autoexec

Modifier le fichier addon.xml

Afin que Kodi soit en mesure d’afficher le logo (et le fanart si vous voulez en ajouter un aussi), il faut lui indiquer qu’il doit le(s) récupérer. Pour se faire, vous devez simplement ajouter les lignes suivantes à votre fichier addon.xml, juste avant de fermer la balise </extension>

(si vous n’ajoutez qu’un logo et pas de fanart, ne pas inclure la ligne <fanart>fanart.jpg</fanart>)

        <assets>
            <icon>icon.png</icon>
            <fanart>fanart.jpg</fanart>
        </assets>
  • Ainsi, votre fichier prendra la forme suivante:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="service.autoexec" name="Autoexec Service" version="1.0.0" provider-name="lesalkodiques">
	<requires>
		<import addon="xbmc.python" version="3.0.0"/>
	</requires>
	<extension point="xbmc.service" library="autoexec.py">
	</extension>
	<extension point="xbmc.addon.metadata">
		<summary lang="fr_FR">Exécute automatiquement un code python au démarrage de Kodi.</summary>
		<description lang="fr_FR">Le service Autoexec sera automatiquement exécuté au démarrage de Kodi.</description>
		<platform>all</platform>
		<license>GNU GENERAL PUBLIC LICENSE Version 2</license>
        <assets>
            <icon>icon.png</icon>
            <fanart>fanart.jpg</fanart>
        </assets>
	</extension>
</addon>

Ajout du logo au dossier

Maintenant, nous devons ajouter notre logo (et fanart si lieu) dans notre dossier service.autoexec

Pour information, les normes concernant les dimensions de logo et fanart pour les addons Kodi sont les suivantes:

  • Logo: 512x512px
  • Fanart: 1920x1080px

Pour notre exemple, j’ai créé un logo pour notre addon ‘autoexec.service‘ que vous pouvez télécharger et utiliser. Il est disponible ici:

icon 2
  • Déposez maintenant votre logo (icon.png) dans le dossier ‘service.autoexec‘:
icon dans le dossier de laddon

IMPORTANT:
Assurez-vous que le logo porte bien le nom ‘icon.png‘ dans votre dossier. Sinon, Kodi ne le reconnaîtra pas et il ne pourra pas l’afficher dans la liste de vos extensions Kodi..

  • Dans mon exemple, puisque je n’ai pas ajouté de fanart à mon addon, mon fichier addon.xml prend la forme suivante:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="service.autoexec" name="Autoexec Service" version="1.0.0" provider-name="lesalkodiques">
	<requires>
		<import addon="xbmc.python" version="3.0.0"/>
	</requires>
	<extension point="xbmc.service" library="autoexec.py">
	</extension>
	<extension point="xbmc.addon.metadata">
		<summary lang="fr_FR">Exécute automatiquement un code python au démarrage de Kodi.</summary>
		<description lang="fr_FR">Le service Autoexec sera automatiquement exécuté au démarrage de Kodi.</description>
		<platform>all</platform>
		<license>GNU GENERAL PUBLIC LICENSE Version 2</license>
        <assets>
            <icon>icon.png</icon>
        </assets>
	</extension>
</addon>
  • Nous pouvons maintenant déposer notre fichier final ‘addon.xml‘ à l’intérieur de notre dossier service.autoexec:
fichier addon dans le dossier

Structure finale du dossier de l’addon

  • Maintenant que nous avons créé notre addon, notre dossier nommé service.autoexec est complet et possède la structure suivante:
structure du dossier service.autoexec

Activation de l’addon dans Kodi

Il ne vous reste plus qu’à accédez à votre nouvel addon dans le navigateur d’extensions Kodi et de procéder à son activation!👍

  • Ceci se fait en navigant dans l’arborescence suivante:
    Paramètres > Extensions > Mes extensions > Services > Autoexec Service
autoexec est desactive
  • Faire un clic droit ou un appui-long sur le nom de l’addon et choisir ‘Activer‘ depuis le menu contextuel:
activer autoexec
autoexec est actif

Variantes

Vous pouvez demander à Kodi de faire plusieurs types d’actions lors de son démarrage grâce à ce nouvel addon que vous avez créé.

Voici quelques exemples:

  • Voici un exemple de fichier autoexec.py qui demande à faire une mise à jour forcée des contenus de la source Pastebin à chaque nouveau démarrage de Kodi:
import xbmc

# Commande à exécuter
xbmc.executebuiltin('ActivateWindow(Videos,"plugin://plugin.video.vstream/?site=pastebin&function=refreshAllPaste",return)')


# Effectuer un "skin reload"
xbmc.executebuiltin('ReloadSkin(reload)')
  • Voici un exemple de fichier autoexec.py demandant à Kodi d’ouvrir l’addon vStream lors de son démarrage pour un profil utilisateur donné:

(utile pour les utilisateurs Kodi sous le skin Estuary)

import xbmc

if xbmc.getInfoLabel('System.ProfileName') == 'NOM DU PROFIL':
    xbmc.executebuiltin('RunScript(plugin.video.vstream)')
  • Voici un exemple ou votre addon ‘AutoExec » est réglé pour ouvrir directement la source Pastebin de vStream lors du démarrage Kodi:

(utile pour les utilisateurs Kodi préférant demeurer sous le skin Estuary)

import xbmc

xbmc.executebuiltin('ActivateWindow(Videos,"plugin://plugin.video.vstream/?site=pastebin)')

Conserver votre addon

Si vous désirez conserver votre addon en vue de l’installer rapidement sur une autre instance Kodi, vous pouvez le zipper afin de l’installer comme on le fait pour n’importe quel autre addon Kodi.

  • Utilisez une application telle que 7zip et zippez votre dossier contenant les 3 fichiers créés:

creez un zip de votre addon

Pour exemple, voici le zip de l’addon que j’ai créé pour ce tuto ou j’utilise la fonction ‘faire une mise à jour forcée des contenus de la source Pastebin à chaque nouveau démarrage Kodi‘:

Pour ceux qui se demandent: La réponse est OUI! Vous pouvez utiliser le zip ci-haut sur votre Kodi et il sera fonctionnel🎉

  • Tel qu’expliqué plus tôt, il sagit ici d’un addon au même titre que tous les autres.
  • Lorsque l’addon a été installé depuis un fichier zip, vous n’avez pas besoin d’aller l’activer manuellement. Il sera déjà actif sans intervention de votre part.
  • Une fois installé sur votre Kodi, vous pourrez le retrouver dans la section:
    Extensions> Mes extensions> Services> 'Autoexec Service‘:
addon autoexec dans kodi

Conclusion

La création de son propre addon de service ‘AutoExec‘ offre une multitude de possibilités. À vous de voir ce qui vous intéresse en vous basant sur les fonctions déjà intégrées à Kodi accessibles depuis cet URL

Est-ce que ce document a été utile ?

Dans cette catégorie