Commander un Raspberry Pi avec la voix

Dans l’article du jour je ferme mes volets roulants avec ma voix !

Pour l’exemple j’ai choisi d’associer ma commande personnalisée à un script  de contrôle de mes volets roulants sur mon Raspberry. Vous pouvez cependant vous servir de cette exemple pour interfacer n’importe quel script et donc faire de la domotique chez vous contrôlée par la voix.

Pour la suite de l’article vous devez dans un premier temps avoir lu mon billet sur la création d’un commande Google Now personnalisée disponible ici.

La partie circuit électronique n’est pas présenté dans cer article. Vous retrouverez cependant tous les éléments nécessaires ici.

Application pour déclencher les actions sur le RPi

L’application web est créé à l’aide du framework Python nommée Flask.

On commence par installer le framework sur notre Rpi.

On créé un fichier python que l’on rend exécutable

Voici le code utilisé. J’ai défini 2 ressources: ouverture et fermeture.

Dans l’exemple je fais appel à la classe « GpioControl » que je vous donne à titre d’exemple. Celui ci place les ports GPIO dans un état « 1 » pendant une seconde. Evidemment, ce script est spécifique au contrôle de mes volets roulants. Vous devez le remplacer la le votre dans le cadre du contrôle domotique que vous développez.

Lancer le serveur Web Flask (je lance en sudo car la librairie GPIO nécessite des droits root)

On va tester la ressource. Sur Linux je test à l’aide de l’outil Curl. La syntaxe est la suivante

Pour tester la ressource « fermeture » je tape donc

Création de l’action Tasker

Je suppose que vous avez déjà créé un événement et enregistré la commande vocale. On va maintenant créer l’action associée à cet événement.

L’action va consister à envoyer la requête HTTP de type POST au serveur Flask sur le Rpi.

  • Dans le menu de tache précédemment ouvert suite à la création d’un événement, saisissez un nom à votre tache.
  • Cliquer sur « + » pour ajouter une nouvelle action
  • On se rend dans la catégorie « Réseau », puis « Post HTTP »
  • Dans « Serveur:Port » on donne l’adresse ip du Rpi ainsi que le port du serveur Web. Dans mon cas 5000, le port par défaut de Flask
  • Dans « chemin  » on saisie l’URL de la ressource demandée. Dans mon exemple /fermeture
  • Dans « Data/file » je place ma donnée envoyée dans le POST, à savoir un mot de passe. password= »monpass »

flask_http_rpi

 

Voila, il ne reste plus qu’a appeler la commande via Google Now. Voila ce que ça donne chez moi.

 

2 thoughts on “Commander un Raspberry Pi avec la voix”

  1. don-harry dit :

    vous devriez quand meme indique que le prix total des application est un peu moins de 4€

    1. N.i.c.O dit :

      C’est exact. J’ai modifié le premier article qui parle de commande google now via tasker.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *