Comment contrôler votre Kodi Media Center avec Amazon Echo
Les télécommandes datent de 1950. Si vous possédez un centre multimédia Kodi et un Amazon Echo, vous pouvez lire tous vos films et émissions favoris avec une commande vocale bien placée… si vous souhaitez effectuer une petite configuration..
L’Amazon Echo est, à notre avis, l’une des pièces les plus cools d’une maison intelligente. Contrôler vos lumières, vos stores et votre téléviseur avec votre téléphone est cool, mais les contrôler avec votre voix est vraiment l'avenir. J'étais sceptique, mais je suis vite devenu impressionné et avide de plus.
Pouvoir allumer ma télévision, c'est cool, mais ce que je voulais vraiment, c'était pouvoir contrôler mon centre multimédia. Je voulais pouvoir dire «Joue le prochain épisode de Friends» et fais-le chercher dans ma bibliothèque, voir ce que j'ai regardé en dernier et commencer à jouer l'épisode suivant. Et après un peu de recherche, j’ai trouvé qu’un programmeur entreprenant, Joe Ipson, avait déjà fait cela.
Cela prend un peu de préparation, et ça a l'air très intimidant au début. Vous devrez créer un serveur Web, envoyer du code à partir de GitHub et faire un peu de travail à partir de la ligne de commande, mais vous n'avez pas besoin d'être un programmeur pour le rendre opérationnel. Ipson a presque fait tout le travail lourd et il vous suffit de copier son code, de modifier quelques éléments et de le télécharger au bon endroit. Si vous suivez ce guide à la lettre, vous devriez être opérationnel en un rien de temps.
REMARQUE: Nous utilisons Amazon Web Services pour ce didacticiel, car il est le plus fiable. Si vous êtes un nouvel utilisateur AWS, Ipson indique que vous devriez pouvoir exécuter cette compétence gratuitement pendant environ un an, à la suite de quoi un montant inférieur à 20 ¢ vous sera facturé. Si vous voulez quelque chose de vraiment gratuit, vous pouvez le configurer en utilisant Heroku à la place, en remplaçant les étapes deux, trois et quatre de ce guide par les instructions Heroku dans la documentation Ipson. Il est cependant un peu moins fiable et certaines demandes peuvent expirer lorsque vous les utilisez. Nous recommandons AWS si vous souhaitez profiter de la meilleure expérience possible. Cela vaut bien le maigre 20 ¢ par mois..
Première étape: préparez votre serveur Web Kodi
Pour que cela fonctionne, Kodi devra disposer d’un serveur accessible depuis le Web. Heureusement, cela est intégré à Kodi, bien que vous deviez peut-être transférer certains ports de votre routeur et effectuer d'autres tâches avant que tout fonctionne correctement..
Ouvrez Kodi sur votre Media Center et allez dans Système> Services> Serveur Web. Activez le serveur Web s'il n'est pas déjà activé et attribuez-lui un nom d'utilisateur et un mot de passe. Assurez-vous d'utiliser un mot de passe que vous n'utilisez pas pour un autre service..
Vous aurez également besoin de l'adresse IP publique de votre maison. Cependant, étant donné que cela peut changer, nous vous recommandons vivement de vous connecter à un nom de domaine dynamique à l'aide d'un service tel que Dynu. Suivez notre guide ici avant de continuer si vous n'en avez pas déjà un.
Enfin, vous devez configurer la redirection de port pour votre Kodi Box. Cela diffère d’un routeur à l’autre, mais vous pouvez consulter notre guide ici pour plus d’informations. Transférez simplement n'importe quel port externe à l'adresse IP locale de votre Kodi Box (dans mon cas, 192.168.1.12) et au port local (8080 par défaut)..
REMARQUE: Bien que le port local de Kodi soit 8080 par défaut, vous pouvez le modifier comme vous le souhaitez ou vous pouvez le transférer vers un autre port externe pour vous assurer qu'il n'y a pas de complications (car d'autres applications peuvent demander le port 8080). J'utilise 8080 dans ce tutoriel, mais si vous utilisez quelque chose de différent, remplacez toutes les instances du port 8080 par le externe port que vous choisissez ici.
Si tout se passe bien, vous devriez pouvoir accéder à l'interface Web de Kodi en ouvrant un navigateur Web et en tapant:
my.dynamic-domain.com:8080
où
my.dynamic-domain.com
est l'URL de votre domaine dynamique, et 8080
est le port que vous avez défini dans Kodi. Si cela ne fonctionne pas, assurez-vous que Kodi, votre domaine dynamique et votre transfert de port ont tous été configurés correctement..
Deuxième étape: configurer votre compte Amazon Web Services
Ensuite, vous devrez configurer un compte avec Amazon Web Services (AWS). Rendez-vous sur cette page et cliquez sur «Créer un compte AWS». Connectez-vous avec vos informations d'identification Amazon lorsque vous y êtes invité. Si vous n'avez pas encore de compte AWS, vous serez invité à entrer vos informations de contact pour en créer un. Assurez-vous de vérifier «Compte personnel» en haut.
Suivez le reste des étapes de l'assistant. Vous devrez également saisir les informations de votre carte de crédit, mais ne vous inquiétez pas. Comme nous l'avons dit, vous ne devriez pas être trop facturé, voire jamais (en particulier pour les 12 premiers mois)..
Après avoir vérifié votre identité à l'aide de votre numéro de téléphone et choisi votre plan d'assistance (nous recommandons Basic, gratuit), cliquez sur le bouton «Terminer l'inscription» dans le coin droit de l'écran. Amazon vous connectera ensuite.
Allez maintenant à la page Identity and Access Management (reconnectez-vous à AWS si nécessaire) et cliquez sur l'onglet «Utilisateurs» sur le côté gauche. Cliquez sur le bouton "Ajouter un utilisateur".
Créez un nouvel utilisateur avec le nom d'utilisateur que vous voulez. Cochez la case “Accès par programmation” et cliquez sur “Suivant: Autorisations”.
Ensuite, vous serez invité à définir des autorisations. Cliquez sur «Joindre les stratégies existantes directement», puis recherchez «AdministratorAccess». Cochez l'option AdministratorAccess et cliquez sur “Next: Review”.
Assurez-vous que votre utilisateur ressemble à l'image ci-dessous, puis cliquez sur «Créer un utilisateur»..
Ne fermez pas la page suivante! Vous devez saisir l'ID de clé d'accès et la clé d'accès secrète ici (vous devez cliquer sur «Afficher» pour afficher votre clé secrète). Copiez-les dans un fichier texte pour les conserver, car vous ne pourrez plus obtenir la clé secrète après avoir quitté cette page..
Une fois que vous avez ceux écrits, vous pouvez fermer cette fenêtre en toute sécurité.
Troisième étape: installer Python 2.7 et configurer vos variables
Afin de transmettre le code Ipson à AWS, Python 2.7 doit être installé sur votre ordinateur. Nous utiliserons Windows dans ce tutoriel, mais vous devriez pouvoir le faire aussi sur macOS et Linux.
Pour installer Python sur Windows, allez sur la page de téléchargement de Python et téléchargez Python 2.7. Exécutez le programme d'installation comme n'importe quel autre programme Windows. Utilisez les sélections par défaut, car nous aurons besoin de certains outils fournis avec le programme d'installation de Python..
Ensuite, cliquez ici pour télécharger le code Ipson. Décompressez le dossier kodi-alexa-master dans le fichier ZIP quelque part sur votre disque dur..
Une fois installé, il est temps de creuser dans la ligne de commande. Appuyez sur Windows + X sur votre clavier et choisissez «Invite de commandes». (Les utilisateurs Mac et Linux voudront ouvrir leurs applications Terminal respectives). A partir de là, exécutez les deux commandes suivantes, l'une après l'autre:
C: \ Python27 \ Scripts \ pip.exe installer awscli
C: \ Python27 \ Scripts \ aws configure
Cela installera les outils de ligne de commande AWS et lancera l'outil de configuration..
Collez votre ID de clé d’accès et votre clé d’accès secrète lorsque vous y êtes invité. Lorsque le nom de région par défaut vous est demandé, tapez us-east-1
(si vous êtes aux États-Unis) ou eu-west-1
(si vous êtes en Europe). Vous pouvez laisser votre format de sortie par défaut vide (appuyez simplement sur Entrée).
Ensuite, exécutez la commande suivante:
C: \ Python27 \ Scripts \ pip.exe installer virtualenv
Vous aurez besoin de cela installé pour plus tard.
CD maintenant dans votre dossier kodi-alexa-master avec la commande suivante:
CD C: \ Utilisateurs \ Whitson \ Documents \ Code \ kodi-alexa-master
Evidemment, remplacez le chemin du fichier par le chemin où vous avez enregistré votre dossier kodi-alexa-master.
Laissez la fenêtre ouverte pour le moment, nous devrons y revenir dans un instant.
Tout d'abord, pour que le code Ipson fonctionne avec votre configuration Kodi et AWS, vous devez définir quelques variables dans un fichier de configuration. Téléchargez ce modèle, renommez-le en kodi.config
, et enregistrez-le dans votre dossier kodi-alexa-master. Ouvrez-le dans un éditeur de texte convivial tel que Notepad ++ et modifiez les quatre variables suivantes:
adresse = port = nom d'utilisateur = mot de passe =
le adresse
variable sera l'adresse dynamique que vous avez configurée à la première étape (par exemple,. my.dynamic-domain.com
), Port
sera le port que vous avez utilisé à la première étape (probablement 8080, à moins que vous ne le changiez), et Nom d'utilisateur
et mot de passe
seront les pouvoirs de la première étape.
Si vous avez plusieurs boîtes Kodi dans votre maison, vous pouvez également utiliser ce fichier de configuration pour les contrôler séparément avec Alexa. Nous ne verrons pas cela dans ce guide, mais vous trouverez des instructions dans la documentation Ipson ici..
Lorsque vous avez terminé, enregistrez le fichier et revenez à la fenêtre d'invite de commande..
Quatrième étape: transmettez votre code à AWS
Avec ces variables en place, votre code est prêt pour le déploiement. De retour dans votre invite de commande, exécutez ces deux commandes:
C: \ Python27 \ Scripts \ virtualenv venv
venv \ Scripts \ activate.bat
Cela va créer un nouvel "environnement virtuel" et l'activer.
A partir de l'invite venv qui apparaît, exécutez les commandes suivantes:
pip install -r Requirements.txt
pip installer l'emballage
pip installer zappa
Cela installera un outil appelé Zappa, qui vous aidera à déployer votre code..
Ensuite, vous devrez configurer Zappa. Courir:
zappa init
Cela vous mènera à travers un assistant. Juste accepter les valeurs par défaut pour tout.
Enfin, lancez:
zappa deploy dev
Cela déploiera votre code sur Lambda. Cela prendra quelques minutes, alors laissez-le fonctionner. À la fin, vous obtiendrez une URL, copiez-la, car vous en aurez besoin à l'étape suivante..
Enfin, je vous recommande également d’exécuter la commande suivante, car vous aurez également besoin des fichiers résultants à l’étape suivante:
python generate_custom_slots.py
Assurez-vous que votre boîte Kodi est allumée et en cours d'exécution lorsque vous exécutez ce script, car il récupérera les noms de films, d'émissions et d'autres supports dans votre bibliothèque..
Tu y es presque! Maintenant, nous avons juste besoin de configurer une compétence Alexa pour ce code.
Cinquième étape: créez votre compétence Alexa
Pour connecter le code Ipson à notre écho, nous devons créer une «compétence» Alexa qui utilise ce code. Cette application ne sera distribuée à personne, elle sera simplement en "mode test" pour toujours, connectée à votre propre compte Amazon pour une utilisation avec votre Echo.
Pour commencer, configurez un compte Amazon Developer gratuit. Allez sur cette page, connectez-vous avec votre compte Amazon et enregistrez-vous pour un compte développeur. Remplissez les champs obligatoires, acceptez les termes et dites «Non» lorsqu'on vous demande si vous allez monétiser vos applications..
Une fois connecté, rendez-vous sur «Alexa» dans la barre d’outils supérieure. Cliquez sur le bouton «Commencer» sous «Alexa Skills Kit»..
Ensuite, cliquez sur le bouton "Ajouter une nouvelle compétence".
Donnez à votre compétence un nom - j'ai appelé le mien "Kodi" - et donnez-lui un nom d'invocation. C'est ce que vous allez dire lorsque vous voulez appeler une commande. Par exemple, mon nom d'invocation est également "le salon", ce qui signifie que je dois dire "Demande au salon de ..." pour donner des commandes à Alexa pour mon centre multimédia..
D'après mon expérience, les noms d'invocation longs fonctionnent mieux que les noms plus courts. J'ai utilisé «Kodi» pendant un certain temps («Demandez à Kodi de…») mais Alexa avait parfois du mal à trouver des films. Je ne saurais vous dire pourquoi, mais des noms d'invocation plus longs, tels que «le salon», fonctionnent presque parfaitement pour moi. Alors essayez de choisir quelque chose avec quelques syllabes.
Cliquez sur Suivant lorsque vous avez terminé.
Cliquez sur le bouton «Ajouter un type d’emplacement» au milieu de la fenêtre suivante..
Créez un nouvel emplacement appelé SPECTACLES
. Retournez dans votre dossier kodi-alexa-master, ouvrez le fichier SHOWS avec Notepad ++ et copiez les émissions dans le champ situé sur la page d'Amazon. Cela aidera Alexa à reconnaître les émissions que vous lui dictez..
Alternativement, vous pouvez simplement lister certaines de vos émissions télévisées dans la boîte, une par ligne. Vous n'avez pas besoin d'ajouter chaque émission dans votre bibliothèque Kodi, mais il est bon d'avoir un nombre correct d'exemples (j'ai trouvé que 20 ou 30, c'est très bien).
Cliquez sur OK lorsque vous avez terminé.
Répétez ce processus avec les types de fentes suivants: FILMS, MOVIEGENRES, MUSICARTISTS, MUSICALBUMS, MUSICSONGS, MUSICPLAY LISTS, VIDEOPLAYLISTS et ADDONS (si vous ne possédez aucune de ces informations, créez le type de fente de toute façon-le code d’Ipson le requiert écrivez le mot «Vide» dans la case, cela ne posera aucun problème.)
Encore une fois, vous n'avez pas besoin de chaque émission, film ou artiste dans ces emplacements, vous n'avez donc pas besoin de les mettre à jour à chaque fois que vous ajoutez un nouveau film à votre bibliothèque. Il est utile d’avoir un nombre décent d’exemples dans chaque.
Une fois que vous avez créé les neuf types d’emplacement, revenez au dossier kodi-alexa-master. Ouvrez le dossier speech_assets et ouvrez le IntentSchema.json
et SampleUtterances.txt
fichiers avec une application comme Notepad++.
Sélectionnez tout le texte dans le IntentSchema.json
fichier et collez-le dans la zone «Schéma d’intention» du site Web Amazon Developer. Répétez ce processus avec le SampleUtterances.txt
fichier, en plaçant le texte dans la boîte «Sample Utterances».
Lorsque vous avez terminé, cliquez sur Suivant. Cela peut prendre quelques instants pour construire le modèle d’interaction.
Sur la page suivante, choisissez «HTTPS» pour le type de point de terminaison et collez l'URL que vous avez obtenue à la fin de la quatrième étape. Choisissez votre région géographique (Amérique du Nord ou Europe) et sélectionnez «Non» pour la liaison de compte. Cliquez sur Suivant.
Sur la page suivante, sélectionnez «Mon noeud final de développement est un sous-domaine d'un domaine contenant un certificat générique émis par une autorité de certification». Cliquez sur Suivant.
Vous ne devriez avoir besoin d'ajouter aucune information sur la page de test, mais vous pouvez tester certains aspects du code si vous savez ce que vous faites. Sinon, cliquez sur Suivant.
Sur la page Informations sur la publication, renseignez les champs obligatoires, mais ne vous inquiétez pas trop de ce que vous inscrivez, car vous ne soumettrez pas cette application à des fins de certification. Vous êtes le seul à utiliser cette application. (Voici une icône 108 × 108 et une icône 512 × 512 à utiliser.) Cliquez sur Suivant lorsque vous avez terminé..
Sur la dernière page, choisissez «Non» pour les deux questions de confidentialité et cochez la case Complicance. Cliquez sur le bouton "Enregistrer" lorsque vous avez terminé. Ne cliquez PAS sur le bouton «Soumettre pour certification».
Sixième étape: Testez vos nouvelles commandes
Si tout va bien, vous devriez pouvoir tester vos nouvelles commandes maintenant. Assurez-vous que votre boîte Kodi est allumée et essayez de dire quelque chose comme:
“Alexa, demande au salon de jouer la première saison, premier épisode de Friends”
(… Évidemment remplacer cela par un épisode et montrer que vous avez sur votre machine.) Cela peut prendre un moment à Alexa, mais si tout va bien, elle devrait répondre et commencer à jouer la série en question. Si vous obtenez une erreur et que l'épisode ne joue pas, revenez en arrière et assurez-vous que vous avez tout fait correctement.
Vous pouvez demander à Alexa si vous avez de nouveaux épisodes, lui demander de jouer le prochain épisode d'une émission, ou même de l'utiliser pour contrôler Kodi, aussi inefficace que cela puisse être («Alexa, demande au salon de faire une pause», «Alexa , demandez au salon de naviguer vers le bas, "etc.). Vérifiez SampleUtterances.txt
fichier pour voir tout ce que Alexa peut faire avec cette intégration. Si vous souhaitez ajouter une nouvelle phrase correspondant à l'une de ces fonctions, connectez-vous de nouveau à votre compte Amazon Developer et ajoutez-la à la liste que nous avons collée à l'étape quatre..
Ce n'est pas la chose la plus rapide ni la plus facile à mettre en place, mais une fois que tout fonctionne, c'est l'une des choses les plus cool que vous puissiez faire avec votre Amazon Echo, à mon avis. Je peux maintenant commencer à regarder la télévision tout en cuisinant dans la cuisine ou lorsque les piles de ma télécommande sont épuisées. C'est le genre de pouvoir que Amazon Echo a été conçu pour avoir, et même si cela demande un peu de travail, il en vaut la peine.
Avoir des problèmes? Consultez ce fil sur les forums Kodi, ainsi que sur la page originale de GitHub, ou laissez tomber une ligne dans nos commentaires ci-dessous.
Titre de l'image de doomu / Bigstock and Amazon.