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 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, l'avait déjà fait.
Cela prend un peu de préparation, et cela 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 le gros du travail 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 c’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 des frais inférieurs à 20 ¢ vous seront facturés. Si vous voulez quelque chose de vraiment gratuit, vous pouvez le configurer à l'aide de Heroku, en remplaçant les étapes deux, trois et quatre de ce guide par les instructions Heroku figurant dans la documentation d'Ipson. Il est toutefois 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 si ce n’est pas déjà fait et donnez-lui un nom d’utilisateur et un mot de passe. Veillez à utiliser un mot de passe que vous n'utilisez pas pour un autre service.
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.
my.dynamic-domain.com:8080
where
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 ne possédez pas encore de compte AWS, il vous sera demandé de saisir vos informations de contact pour en créer un. Assurez-vous de cocher «Compte personnel» en haut.
Après avoir vérifié votre identité avec votre numéro de téléphone et choisi votre forfait d’assistance (nous recommandons Basic, gratuit), cliquez sur le bouton «Terminer l’inscription» dans le coin droit de l’écran. Amazon vous connectera ensuite.
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 allons utiliser Windows dans ce didacticiel, mais vous devriez également pouvoir le faire sous macOS et Linux.
Pour installer Python sous Windows, rendez-vous 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 des outils fournis avec le programme d’installation de Python.
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:Python27Scriptspip.exe install awscli
C:Python27Scriptsaws configure
Cela installera les outils de ligne de commande AWS et lancera l'outil de configuration.
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).
C:Python27Scriptspip.exe install virtualenv
Vous aurez besoin de l’installer pour plus tard.
CD C:UsersWhitsonDocumentsCodekodi-alexa-master
Évidemment, 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.
Premièrement, 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:
address = port = username = password =
le
address
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
username
et
password
seront les informations d'identification 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 Invite de commandes.
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:Python27Scriptsvirtualenv venv
venvScriptsactivate.bat
Cela créera un nouvel «environnement virtuel» et l'activera.
pip install -r requirements.txt
pip install packaging
pip install zappa
Cela installera un outil appelé Zappa, qui vous aidera à déployer votre code.
zappa init
Cela vous mènera à travers un assistant. Acceptez juste les valeurs par défaut pour tout.
zappa deploy dev
Cela déploiera votre code sur Lambda. Cela prendra quelques minutes, alors laissez-le fonctionner. À la fin, il vous donnera une URL - recopiez-la, car vous en aurez besoin à 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 elle récupérera les noms des films, émissions et autres supports de votre bibliothèque.
Tu y es presque! Nous devons maintenant 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 conditions et dites «Non» lorsque le système vous demande si vous allez monétiser vos applications.
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 «the living room», fonctionnent presque parfaitement pour moi. Alors essayez de choisir quelque chose avec quelques syllabes.
Cliquez sur Suivant lorsque vous avez terminé.
SHOWS
. 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. Il n’est pas nécessaire d’ajouter toutes les émissions de votre bibliothèque Kodi, mais il est bon d’avoir un nombre décent d’exemples (j’en ai trouvé 20 ou 30, c’est plutôt bien).
Cliquez sur OK lorsque vous avez terminé.
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 simplement utile d'avoir un nombre décent d'exemples dans chacun.
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. La création du modèle d'interaction peut prendre quelques instants.
Dans 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 soumettez 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 que vous pouvez utiliser.) Cliquez sur Suivant lorsque vous avez terminé.
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, ask the living room to play season one, episode one of 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 à la quatrième étape.
Ce n’est pas la chose la plus rapide et la plus facile à configurer, mais une fois que tout fonctionne, c’est facilement 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 à plat. C’est le genre de pouvoir que Amazon Echo a été conçu pour obtenir, et même s’il faut un peu de travail, cela en vaut vraiment 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.
Image de titre de Doomu / Bigstock et Amazon.